migrating existing applications to aws - cloud object storage€¦ · migrating existing...

17
Migrating Existing Applications to AWS Matt Tavis | Principal Solutions Architect

Upload: others

Post on 22-May-2020

23 views

Category:

Documents


0 download

TRANSCRIPT

Migrating Existing Applications to AWS

Matt Tavis | Principal Solutions Architect

Planning on moving apps to the cloud?

You have a lot to decide…

A Path to the Cloud

• Select apps

• Test platform

• Plan migration

Plan

• Migrate data

• Migrate components

• Cutover

Deploy• Embrace AWS

services

• Re-factor architecture

Optimize

Migrating Data onto AWS

Data Size*

* relative to internet bandwidth and latency

Data

Velo

city R

equired UDP Transfer Software

(e.g., Aspera, Tsunami, …)

AWS Import / ExportTransfer to S3

Over Internet

One-time upload w/

constant delta updates

Days

Hours

TBsGBs

Cutting Over Your Master Data Store

Bulk Transfer

Export Snapshot

Transfer to AWS

Delta Updates

Freeze Data

Source

Export Deltas

Transfer to AWS

Cutover and

Unfreeze

Finding your first stop…

Express

Local

Forklift Virtualize app

Retain operational

approach

Embrace AWS Optimize resources

Scale on-demand

Optimize for AWS Re-design for AWS

Fully embrace

cloud architecture

The Migration Continuum

Forklift Embrace AWS Optimize for AWS

• May be only option for

some apps

• Run AWS like a virtual

co-lo (low effort)

• Does not optimize for

on-demand (over-

provisioned)

• Minor modifications to

improve cloud usage

• Automating servers

can lower operational

burden

• Leveraging more

scalable storage

• Re-design with AWS

in mind (high effort)

• Embrace scalable

services (reduce

admin)

• Closer to fully utilized

resources at all times

Forklift Embrace Optimize

Effort Scalability Operational Burden

Mapping the Application to AWS - Forklift

Matching resources

Examine existing footprint with an eye to resource requirements for that app – don’t obsess on HW specs!

Building your AMIs

Create AMIs to match server roles

Converting appliances

Create/discover virtual variants for physical appliances

Consult our Solution Providers site

Deploying supporting components

NASes, SANs, DNS, Domain Controllers, …

Mapping the Application to AWS - Forklift

Secure the application

VPC and/or Public EC2 with Security Groups

Data protection in-transit and at-rest

Integrate monitoring and management tools

Use existing tools and/or new cloud management platforms

Mapping the Application to AWS – Embrace

Everything on the last slide(s) plus…

Rethink storage

Leverage new storage models offered by AWS

Embrace elasticity

Bootstrapping your AMI

Dynamic build out, configuration and discovery

Scale out and in on-demand

Leverage auto-scaling in both directions

Mapping the Application to AWS – Optimize

Everything on the last two slides plus…

Re-re-think storage

Further optimize storage through the use of non-traditional storage models (e.g., SimpleDB, NoSQL, …)

Parallelize processing

Use more smaller resources to improve granularity of resources

Use Spot where possible

Build for total transient nature to reduce costs

Embrace scalable on-demand services

Replace software components with scalable AWS services (e.g., SQS, SNS, SES, …)

A P

hased

Mig

ratio

n t

o A

WS

-F

ork

lift

Forklift steps:

AMI-1 @

C1.Medium

AMI-2 @

M2.XLarge

AMI-5 @

M2.2XLarge

AMI-1 @

C1.Medium

AMI-2 @

M2.XLarge

Match resources and build AMIs

• Thinks about application

needs not server specs

• Build out custom AMI for

application roles

AMI-4 @

M1.Large

AMI-3 @

C1.Medium

AMI-6 @

M2.XLarge

Deploy supporting components:

• SAN replacements

• DNS

• Domain controllers

Secure the application

components:

• Use layered security groups to

replicate firewalls

Convert appliances:

• Map appliances to AWS

services or virtual appliance

AMIs

ELB

Master

Database

Network

Filesystem

A P

hased

Mig

ratio

n t

o A

WS

-E

mbra

ceSteps to Embrace AWS:

Web

Server

App Server

Web

Server

Network

Filesystem

Rethink storage:

• Leverage S3 for scalable

storage

• Edge cache with CloudFront

• Consider RDS for HA RDBMS

App Server

Domain

Controller

DNS

Scale out and in on-demand:

• Use CloudWatch and Auto-

scaling to auto-provision the

fleet

App Server App Server

Web

ServerWeb

Server

We

b T

ier

Au

to-s

ca

ling

Gro

up

Ap

p T

ier

Au

to-s

ca

ling

Gro

up

Parallelize processing:

• Bootstrap AMIs for auto-

discovery

• Pass in bootstrapping

parameters

• Leverage configuration

management tools for

automated build outConfig

Management

Server

ELB

App Server App Server

A P

hased

Mig

ratio

n t

o A

WS

-O

ptim

ize

Steps to Optimize for AWS:

Web

Server

Web

Server

Network

FilesystemDomain

Controller

DNS

Use Spot where possible to reduce

costs

Web

ServerWeb

Server

We

b T

ier

Au

to-s

ca

ling

Gro

up

Ap

p T

ier

Au

to-s

ca

ling

Gro

up

Config

Management

Server

Re-Rethink storage:

• Break up datasets across

storage solutions based on

best fit and scalability

Parallelize processing:

• Spread load across multiple

resources

• Decouple components for

parallel processing

EMR

App

Server

App

Server

App

Server

Embrace scalable on-demand

services

• Scale out systems with

minimal effort

• Route53

• SES, SQS, SNS

• …

Route

53

SQS

Mitigating Factors

Software Architecture Limitations

Lack of control over design of software components

Licensing

Software licensing costs need to be factored into the scale out and in plans as not all software vendors have cloud-ready pricing plans

Security, Compliance and Regulations

Where, how and the manner in which data can be processed based on industry regulations can influence AWS architectural options.

Skillset / Training

Finding the right personnel to handle AWS migrations can be pivotal in the success of any migrations.

Thank you!

Additional resources:

Architecture Center: http://aws.amazon.com/architecture

Security Center: http://aws.amazon.com/security

Whitepapers: http://aws.amazon.com/whitepapers

Resources: http://aws.amazon.com/resources

Case Studies: http://aws.amazon.com/solutions/case-studies

Solution Providers: http://aws.amazon.com/solutions/global-solution-providers/