Cloud Migration
-
Upload
kimberly-wiethoff-mba-pmp-csm-itil -
Category
Documents
-
view
94 -
download
0
Transcript of Cloud Migration
A PHASED APPROACH TO MIGRATING APPLICATIONS TO THE CLOUD USING AWS
KIMBERLY WIETHOFF
06/26/2016
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
CLOUD MIGRATION PHASED APPROACH
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
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)
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
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
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.
FAMILIARIZE WITH AWS TOOLS
IAM – IDENTITY & ACCESS MANAGEMENT
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?
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
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
STORAGE OPTIONS AVAILABLE IN AWS
•Amazon S3 + CloudFront
•Amazon EC2 Ephemeral Store
•Amazon EBS
•Amazon SimpleDB
•Amazon RDS
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
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
APPLICATION MIGRATION
• Forklift migration strategy
• Hybrid migration strategy
• Build “cloud-aware” layers of code as needed
• Create AMIs for each component
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.
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.
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
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
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
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
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
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
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
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?
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
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.