Cloud Migration

30
A PHASED APPROACH TO MIGRATING APPLICATIONS TO THE CLOUD USING AWS KIMBERLY WIETHOFF 06/26/2016

Transcript of Cloud Migration

Page 1: Cloud Migration

A PHASED APPROACH TO MIGRATING APPLICATIONS TO THE CLOUD USING AWS

KIMBERLY WIETHOFF

06/26/2016

Page 2: Cloud Migration

CLOUD PROVIDERS• Amazon Web Services

• With Amazon Web Services (AWS), businesses have the choice of programming models, languages, operating systems and databases they are already using and are familiar with

• Other cloud Providers

• Azure

• Joyent

• Verizon Cloud

• Rackspace

• Century Link

• IBM Softlayer

Page 3: Cloud Migration

CLOUD MIGRATION PHASED APPROACH

Page 4: Cloud Migration

PHASE I – CLOUD ASSESSMENT

Benefits

Business case for migration (Lower TCO, faster time to market, higher

flexibility & agility, scalability and elasticity.

Identify gaps between current traditional legacy architecture and next-

generation cloud architecture.

Cloud Assessment

Financial Assessment

(TCO calculation)

Security and

Compliance Assessment

Technical Assessment

(Classify application

types)

Identify the tools that

can be reused and the

tools that need to be

built

Migrate licensed

products

Create a plan and

measure success

Page 5: Cloud Migration

APPLICATION ASSESSMENT• Is the application ready for migration?

• Security Issues – make sure the data will be secure in the cloud

• Other Risks involved and their mitigation strategies

• Qualify the main reasons to migrate an application to the cloud

• Financial Assessment – direct costs and financial (ROI)

• Economic Benefits – Lower infrastructure costs, increased

agility, high availability, reliability, scalability, flexibility,

reduced time to market (ROI)

Page 6: Cloud Migration

TECHNICAL AND FUNCTIONAL ASSESSMENT• Financial Assessment (TCO calculation)

• Security and Compliance Assessment

• Technical Assessment (Classify application types)

• Identify the tools that can be reused and the tools that need to

be built

• Migrate licensed products

• Create a roadmap plan, define success criteria, and measure

success

Page 7: Cloud Migration

PHASE II – PROOF OF CONCEPT

Benefits

Build confidence with various AWS

services

Mitigate risk by validating critical

pieces of the proposed architecture

Proof of Concept

Get your feet wet with

AWS

Build a pilot and

validate the technology

Test existing software

in the cloud

Page 8: Cloud Migration

PROOF OF CONCEPT• Get your feet wet with AWS

• Familiarize with the AWS API, AWS Tools, SDKs, FireFox plug-ins and the AWS Management Console and command line tools

• Learn about the AWS security features – AWS credentials, Multi-factor Authentication (MFA), authentication and authorization, AWS Identity and Access Management (IAM)

• Build a pilot and validate the technology

• The proof of concept project must represent a microcosm of the application, that will test the critical functionality of the app in the cloud.

• Test existing software in the cloud

• Build support in the organization, validate the technology, test legacy software in the cloud, perform benchmarks, and set expectations.

Page 9: Cloud Migration

FAMILIARIZE WITH AWS TOOLS

Page 10: Cloud Migration

IAM – IDENTITY & ACCESS MANAGEMENT

Page 11: Cloud Migration

QUESTIONS TO ANSWER FROM THE PILOT• Was the basic AWS terminology understood?

• instances, AMIs, volumes, snapshots, distributions, domains, etc.

• What was learned from the following aspects of AWS Cloud?

• Compute, storage, network, database, and security

• Will the Pilot project create awareness of the power of AWS cloud within the organization?

• Were the lessons learned captured and shared with the organization?

• How much additional effort is required to get the pilot into a production environment?

• Which applications are targeted to be moved to the cloud after the pilot project?

Page 12: Cloud Migration

PHASE III – DATA MIGRATION

Benefits

Redundancy, Durable Storage, Elastic Scalable Storage Automated Management Backup

Moving your Data

Understand different

storage options in the AWS

cloud

Migrate fileservers to

Amazon S3

Migrate commercial RDBMS

to EC2 + EBS

Migrate MySQL to Amazon

RDS

Page 13: Cloud Migration

DATA MIGRATION• Understand different storage options in the AWS cloud

• What RDBMS options are available in the cloud?

• What is the data segmentation strategy? And what are the necessary trade-offs that need to be made?

• What is the level of effort required to migrate all the needed data to the cloud?

• Migrate fileservers to Amazon S3

• Migrate commercial RDBMS to EC2 + EBS

• Migrate MySQL to Amazon RDS

Page 14: Cloud Migration

STORAGE OPTIONS AVAILABLE IN AWS

•Amazon S3 + CloudFront

•Amazon EC2 Ephemeral Store

•Amazon EBS

•Amazon SimpleDB

•Amazon RDS

Page 15: Cloud Migration

RDBMS OPTIONS IN THE AWS CLOUD

•Migrate MySQL Databases to the Amazon RDS

•Migrate Commercial Databases to Amazon EC2 using

Relational DB AMIs

•Move Large Amounts of Data using Amazon

Import/Export Service

Page 16: Cloud Migration

PHASE IV – APPLICATION MIGRATION

Benefits

Future-proof scaled-out service-oriented elastic architecture

Moving your Apps

Forklift migration strategy Hybrid migration strategyBuild “cloud-aware” layers

of code as needed

Create AMIs for each

component

Page 17: Cloud Migration

APPLICATION MIGRATION

• Forklift migration strategy

• Hybrid migration strategy

• Build “cloud-aware” layers of code as needed

• Create AMIs for each component

Page 18: Cloud Migration

FORKLIFT MIGRATION STRATEGY• The forklift approach is best used for stateless applications, tightly

coupled applications, or self-contained applications.

• This approach will pick up all of the data and move it to the cloud

instead of moving smaller pieces of the system over time.

• When the application can be migrated to the cloud with few code

changes, this approach would be preferred

• Changes involve copying application binaries, creating and

configuring Amazon Machine Images, setting up security groups and

elastic IP addresses, DNS, and switching to an Amazon RDS Database.

Page 19: Cloud Migration

HYBRID MIGRATION STRATEGY• The hybrid migration strategy involves migrating some parts of

the application while leaving other parts of the application in

place.

• This approach takes on a lower risk tolerance since the parts

can be optimized individually when they are migrated.

• When an application consists of batch processing and a

website, the batch processing can be migrated to the cloud first

and become cloud-aware while the website remains in the

traditional data center. After the batch processing layer has

been tested, the website can be moved to the cloud.

Page 20: Cloud Migration

PHASE V – LEVERAGING CLOUD

Benefits

Reduction in CapEx in IT Flexibility and agilityAutomation and improved

productivityHigher Availability (HA)

Leveraging the Cloud

Leverage other AWS

services

Automate elasticity

and SDLCHarden security

Create dashboard to

manage AWS

resources

Leverage multiple

availability zones

Page 21: Cloud Migration

LEVERAGING CLOUD TECHNOLOGIES• Leverage other AWS services

• Auto Scaling Services

• Amazon CloudFront

• Amazon Elastic MapReduce

• Automate elasticity and SDLC

• Can be implemented at different levels of the application architecture

• May require refactoring and decomposing applications into components so

that the application will be more scalable

• Three ways to automate elasticity at the stack level: Maintain AMIs

inventory, Maintain a Golden AMI and fetch binaries on the boot, and

Maintain a Just-Enough-OS AMI and a library of recipes or install

stripts

Page 22: Cloud Migration

HARDEN SECURITY• Safeguard your AWS credentials

• Change the AWS access credentials on a routine basis and if a breach is

suspected.

• Leverage multi-factor authentication

• Restrict users to AWS resources

• Protect data with encryption at-rest (AES) and in-transit (SSL)

• Automate security policies

• Adopt a recovery strategy

• Periodic Amazon EBS snapshots and Amazon RDS Backups

• Test your backups before you need them

Page 23: Cloud Migration

HARDEN SECURITY• Automate the In-cloud Software Development Lifecycle and Upgrade

Process

• Create dashboard of the Elastic Datacenter to manage AWS resources

• Create a Business Continuity Plan and Achieve High Availability

• Data replication strategy of databases

• Data backup and retention strategy

• Create AMIs with the latest patches and code updates (Amazon EC2)

• Have a recovery plan to fail back to the corporate data center from the cloud

post-disaster

• Leverage multiple availability zones

• Clone the entire architecture and replicate it in different Availability Zones or

use a Multi-AZ deployment

Page 24: Cloud Migration

PHASE VI – OPTIMIZATION

Benefits

Increased utilization and transformational impact in OpExBetter visibility through advanced monitoring and

telemetry

Optimization

Optimize usage based

on demandImprove efficiency

Implement advanced

monitoring and

telemetry

Re-engineer your

application

Decompose your

relational databases

Page 25: Cloud Migration

OPTIMIZATION• Focus on optimizing the cloud-based application to create cost

savings.

• Since you only pay for the resources consumed a small optimization can

result in thousands of dollars in savings

• Optimize usage based on demand

• Understand, monitor, examine, and observe load patterns

• Be proactive by understanding traffic patterns

• Align your traffic to cloud resources that are consumed

• Terminate under-utilized instances

• Leverage Amazon EC2 Reserved Instances

Page 26: Cloud Migration

OPTIMIZATION• Improve efficiency

• Infrastructure can be optimized by data caching to reduce the data requests

• Improving the performance of applications running in the cloud may result

in cost savings

• Implement advanced monitoring and telemetry

• Proactively identify any performance issues, diagnose root causes, and take

action

• Track your AWS Usage and Logs

• Maintain Security of Applications

Page 27: Cloud Migration

RE-ENGINEER YOUR APPLICATION• Can multiple instances be run on the application and on multiple

Amazon EC2 instances

• If there is a failure, will the application be resilient enough to

automatically restart?

• Can the application be divided into components that can be run on

separate Amazon EC2 instances

• Can stateful components be extracted to stateless components?

• Is application partitioning an option?

• Can the components be isolated using Amazon SQS?

• Can code be decoupled with deployment and configuration?

Page 28: Cloud Migration

DECOMPOSE YOUR RELATIONAL DATABASES

• Large blob objects and media files should be moved to Amazon S3

and stored as a pointer in the existing database

• Associated meta-data or catalogs should be moved to the Amazon

SimpleDB

• Keep only the data necessary in the relational database (joins)

• Move relational data into the Amazon RDS so there is flexibility to

scale database compute and storage resources with an API call only

when needed

• Offload the read load to multiple Read Replicas (Slaves)

• Partition the data based on item IDs or names

Page 29: Cloud Migration

REFERENCES

Amazon Web Services - The Economics of the AWS Cloud vs. Owned IT

Infrastructure [PDF]. (2009, December 7). Amazon Web Services.

Hawkins, J. M. (2014, October 10). 5 Things to Consider Before

Migrating Apps to the Cloud - Page 2. Retrieved June 26, 2016, from

http://www.channelpartnersonline.com/articles/2014/10/five-things-

to-consider-before-migrating-apps-to.aspx?pg=2#content

Varia, J. (2010, October). Amazon Web Services - Migrating Your

Existing Applications to the AWS Cloud [PDF]. Amazon Web Services.

Page 30: Cloud Migration