SlideShare uma empresa Scribd logo
1 de 86
Baixar para ler offline
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Andreas Chatzakis, AWS Solutions Architecture
Bob Gregory, Application Architect, Made.com
7th July 2016
Migrating your Startup to AWS
What to expect from this session
• Advice for startups migrating to AWS
• A practical checklist
• Relevant AWS services
• A real example from Made.com
Services you can use before migrating to AWS
Amazon Cognito
Amazon Mobile Analytics
AWS Device Farm
Amazon SNS
Mobile
Storage & CDN BI & Machine Learning
Email
DNS
Amazon S3
Amazon CloudFront
Amazon QuickSight
Amazon Redshift
Amazon Machine Learning
Amazon Kinesis
Amazon EMR
Amazon Route 53
Amazon SES
Amazon WorkMail
Proof of Concept
• Do this early
• Will answer many questions
• Identify gaps and dependencies
• Estimate cost
Start with DEV&TEST!
Accelerate your migration with Training
Intro Videos and Labs
• Free introductory training
Online Labs
• Hands-on practice in a sandbox
environment.
Instructor Led Training
• Architecting, Developing, Operating, Big
Data, Security
https://aws.amazon.com/training/
Extend your team with AWS Support
• 3 plans to match your needs
• Developer Support
• Business Support
• Enterprise Support
• AWS Infrastructure Event Management
Migration approaches
• Big Bang
• Default choice for most startups
• Phased
• Driven by technical complexity
or expiration of old infrastructure investments
• Per application
• Per layer
Connectivity
• VPN
• AWS Direct Connect
• Existing provider on AWS (verify region)
3 stage journey
Lift & Shift
• Move platform
• Security
• High Availability
Optimise
• Automate
• Optimize cost
• Infinite scalability
Transform
• Decouple
• Managed Services
• Serverless
Preparing for an application migration
• Establish objectives
• Enumerate application components
• Document dependencies
• Think about licensing
• Licence-included pricing (RDS,EC2)
• AWS Marketplace
• BYOL
• Map to AWS
On-premises infrastructure mapped to AWS
Technology On-premises AWS
Network VPN, MPLS Amazon VPC, AWS Direct Connect
Storage DAS, SAN, NAS, SSD
Amazon EBS, Amazon S3, Amazon EC2 instance storage,
Amazon EFS
Compute Hardware, virtualization Amazon EC2, Amazon ECS, AWS Lambda
Content delivery Third-party CDN Amazon CloudFront
Databases
MS SQL Server, MySQL, Oracle, DB2,
PostgreSQL, MongoDB,. …
Amazon RDS, Amazon DynamoDB, Amazon ElastiCache,
DB software on Amazon EC2
Load balancing Hardware and software load balancers Elastic Load Balancing, software load balancers
Scaling & cluster
management
Hardware and software clustering
tools
Auto Scaling, software clustering solutions
DNS BIND, Windows Server, third party Amazon Route 53, third-party DNS software on Amazon EC2
On-premises infrastructure mapped to AWS
Technology On-premises AWS
Analytics & data warehouse
Hadoop, Vertica, Cassandra, specialized
hardware and software
Amazon EMR, Amazon Redshift, software on Amazon EC2
Messaging and workflow RabbitMQ, ActiveMQ, Kafka, …
Amazon SQS, Amazon SNS, Amazon SWF,
software on Amazon EC2
Caching Redis, Memcached, … Amazon ElastiCache, Memcached, SAP Hana
Archiving Tape library, off-site data storage Amazon S3, Amazon Glacier
Email Email software Amazon SES
Identity, authoritzation, &
authentication
AD/ADFS, LDAP, SAML, third party…
AWS Identity and Access Management/AWS STS,
Amazon Cognito, AWS Directory Service, AD & LDAP on
Amazon EC2
Deployment & configuration
management
Chef, Puppet, Salt, Ansible, PowerShell
DSC
AWS CloudFormation, AWS OpsWorks, AWS Elastic Beanstalk,
AWS CodeDeploy, Amazon ECS
Management and
monitoring
CA, BMC, Rightscale
Amazon CloudWatch, AWS Config, AWS CloudTrail,
AWS Trusted Advisor
Simplified cutoff process
Your Data Center
Web Layer
Database
Layer
Load Balancing
Firewalls etc
DNS
Simplified cutoff process
AWS region Your Data Center
Web Layer
Database
Layer
Load Balancing
Firewalls etc
DNS
Simplified cutoff process
AWS region
Private
Connection
Your Data Center
Web Layer
Database
Layer
Load Balancing
Firewalls etc
DNS
Simplified cutoff process
AWS region
Web
Layer
Private
Connection
Your Data Center
Web Layer
Database
Layer
Load Balancing
Firewalls etc
DNS
Elastic Load
Balancer
Simplified cutoff process
AWS region
Web
Layer
Private
Connection
Your Data Center
Web Layer
Database
Layer
Load Balancing
Firewalls etc
DNS
Elastic Load
Balancer
Amazon
RDS
Simplified cutoff process
AWS region
Web
Layer
Private
Connection
Your Data Center
Web Layer
Database
Layer
Load Balancing
Firewalls etc
DNS
Elastic Load
Balancer
Amazon
RDS
DB replication
Simplified cutoff process
AWS region
Web
Layer
Private
Connection
Your Data Center
Web Layer
Load Balancing
Firewalls etc
DNS
Elastic Load
Balancer
Amazon
RDS
Database
Layer
DB replication
Simplified cutoff process
AWS region
Web
Layer
Private
Connection
Your Data Center
Web Layer
Load Balancing
Firewalls etc
DNS
Elastic Load
Balancer
Amazon
RDS
Database
Layer
DB replication
Simplified cutoff process
AWS region
Web
Layer
DNS
Elastic Load
Balancer
Amazon
RDS
Cutoff Readiness
• Review Security best practices
• Pen testing
• https://aws.amazon.com/security/penetration-testing/
• Load testing
• Review AWS Service Limits
• AWS Business Support
• A tested Migration process
• A tested Roll-Back process
What could possibly go wrong…
• Hard coded IP addresses or host names
• Incorrectly sized AWS resources
• Auto Scaling ramp up period
• High DNS TTL slowing cut over and rollback
• Bandwidth from traditional infra to AWS
• IP address overlap with old network
• Third-party whitelisted IP addresses
• Email limits (request increase/use Amazon SES)
Migrating the application servers
• VM Import
• Rebuild
• Configuration management (Chef, Puppet…)
• Docker and the EC2 Container Service (ECS)
• AWS Elastic Beanstalk, AWS Opsworks
• Infrastructure as Code and AWS CloudFormation
Elastic Beanstalk
Alert
Log
Mon
App
AZ
ELB
http://your-app.elasticbeanstalk.com
Empire – PaaS experience on top of ECS
https://youtu.be/8zbbQkszP04
Database Migration options
Dump/Restore
• Small database
• Source DB not supporting replication
Native Replication
• Homogeneous migration
• No transformations
AWS Database Migration Service
• Heterogeneous migrations
• Transformations
• Easy to setup
Migrating data into AWS
• File transfer using S/FTP, SCP, 3rd party tools
• Point on-premises backup to S3
• AWS Storage Gateway for asynchronous backup
• AWS Import/Export: Disk or Snowball
• Database backup tools
• Database replication tools
• AWS Direct Connect 100 Mbps to 10 Gbps
DNS Migration
example.com
Third-party monitoring
System monitoring
Internal DNS
Public DNS
Route 53 public zones
Route 53 private zones
Route 53 health checks
example.com
Bulk transfer domains
1. Export DNS to Route 53
2. Delegate to Route 53
3. Transfer domains to Route 53
Order matters for availability!
https://youtu.be/XXUYbdbCb6Q
Optimize
AWS Trusted Advisor
Free with Business or Enterprise Support
Align Resources with Demand
Use Reserved Instances
https://youtu.be/SG1DsYgeGEk
MADE.COM / AWS
How do I migrate my application to the cloud?
Bob Gregory
Introduction
Hi everyone, I’m Bob@made.com and I am an Application Architect.
I want to talk about things to do before you migrate, then some things to do
early in migration, and finish by talking about how we are managing cost.
MADE.COM : great design direct from the makers
Right now we’re moving from this:
Magento
OpenERP
XML-RPC
To this:
Magento
Availability /
Inventory
Batch
Allocation
Warehouse
Integration
PIM
Procurement
Refunds
Returns
Async
Events
Last year we moved our hosting away from:
● Traditional managed service
● 4 big hypervisors (20 core, 320GB RAM)
● 19TB SAN (SAS/SSD auto-tiered)
● All replicated in DR site
● VMWare running about 65 VMs (dev / test / prod)
● Running Magento, OpenERP and Unboxed
...to AWS, because:
● We like being connected to the Internet
● To automate infrastructure build (and get things done faster)
● Autoscaling (vs overprovisioning)
● It’s cool. And this is a better reason than it sounds.
Start with something simple
You are going to break things. A big-bang approach will hurt.
Start with something simple
If you have no users, you will have no complaints.
Consider starting with Greenfield systems.
Start with something simple
How will you integrate your cloud deployments with on-premise?
Loose coupling will save your bacon.
Consider starting with Public HTTP services.
Consider starting with Asynchronous messaging.
Start with something simple
It’s easier to handle an outage that only affects you personally.
Consider starting with Development Infrastructure.
Before you start
Treat manual configuration as a bug.
Automate all the things.
Before you start
Cloudformation is okay but can be unwieldy.
Consider Terraform if you like JSON.
Consider Ansible if you like extensibility.
Before you start
We had several iterations of our network layout.
It is hard to change your entire topology.
Keep it simple.
We use 9 subnets.
Address space is cheap.
2 Route tables.
Is this internal or external?
Managed NAT instances
Let AWS worry about it.
Before you start
The hardest things to run are stateful services.
Amazon do lots of the hard work for you.
Consider S3.
Consider RDS.
Consider Elasticache.
Consider Elastic File System.
Before you start
It is much simpler to manage identical machines.
Treat servers as cattle not pets.
Consider Docker.
Before you start
Docker has been a major factor in our success.
Developers can think at an application-stack level.
Teams deliver a working package configuration and a source-
controlled application configuration along with their code-base.
Before you start
Keep it simple.
You don’t need to deploy Kubernetes on top of Mesos
+ =
Before you start
There is no charge for running extra accounts.
Set up Consolidated Billing and run multiple AWS accounts.
We use
A hub-and-spoke model.
We run a vpn in Management.
VPC Peering
to access other environments
Separate Production.
This allows easier access
control
A separate account for
testing automation
We use
A Bastion account for IAM.
Like sudo for AWS.
Two-factor authentication
to access other environments.
Role-based access.
Developers are only allowed
to destroy test machines.
http://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html
AWSpocalypse
A 30 second Ansible tutorial:
Please can I have exactly one
instance with the Name
“my-instance”?
A 30 second Ansible tutorial:
Please can I have exactly one
instance ?
Don’t be this guy
It’s called best practice for a reason
So you’ve deployed your first system.
You’ve chosen your automation tooling
You’ve pushed data into stateful backing services
You’ve containerised your codebase and its configuration
So you’ve deployed your first system.
You have prevented AWSpocalypse.
Before you deploy your second service
Instances come and go. In order to manage your environment you
will need telemetry.
Monitor all the things.
Create Health Dashboards for each system you deploy.
Before you deploy your second service
Cloudwatch is okay.
It’s easy to set up and
free for basic
monitoring.
We use
Collectd
To gather metrics
Riemann
To process and alert
InfluxDB
To store metrics
Grafana
To make pretty
pictures
Before you deploy your second service
Instances come and go. In order to manage your environment you
will need log shipping.
Log all the things.
Developers shouldn’t need to ssh to instances just to view logs.
We use
Rsyslog
To gather and process
logs
Logstash
To route logs into indexes
Elasticsearch
To store logs
Kibana
To view logs
This is expensive in engineering time
You must implement monitoring, but there are quicker ways to get
going.
Consider SAAS.
Time to move the big things
Database migration is the worst part (except for all the other worst
parts).
Amazon’s Database Migration Service is essentially magic.
Find it in the RDS tab of the AWS Console.
We used
HAProxy on the old and
new systems.
To switch over, we
configured HAProxy OLD to
route traffic to HAProxy
NEW.
To fail back, we could
configure HAProxy NEW to
route to HAProxy OLD.
So where are we now?
We prioritised agility over cash.
Each service has redundancy, and
shares no infrastructure with
other systems.
This makes it simple for developers
to deploy their stacks.
So where are we now?
We prioritised agility over cash.
Each service has redundancy, and
shares no infrastructure with
other systems.
This makes it really expensive.
How are we reducing costs?
Not everything needs to be up all the time
Consider Turning off test environments overnight.
Consider Scaling down database instances.
Consider Auto-scaling Groups.
How are we reducing costs?
On-demand instances are the expensive option.
Consider Reserved Instances for RDS, Elasticache, anything
where you have some well-known capacity.
How are we reducing costs?
On-demand instances are the expensive option.
Consider Spot Instances for automated tests and batch
processing.
How are we reducing costs?
CloudHealth has useful reports on instance over-sizing;
unattached volumes; and violations of best practice.
They charge a fixed percentage of your bill, so you are never too
small to consider using them.
How are we reducing costs?
The next step is Container Scheduling.
By abstracting away the ec2 instances, we can retain agility while
deploying multiple systems to each instance.
By using servers more efficiently we can cut our bill.
How are we reducing costs?
Container scheduling requires
Great monitoring of service performance and health.
Log shipping from your containers.
Service discovery (we’re using consul)
A fundamental rethink of the way you architect systems.
It has taken us approximately a year to reach this point.
Questions?
Please remember to rate this
session under My Agenda on
awssummit.london
How to Migrate your Startup to AWS

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

ENT309 Scaling Up to Your First 10 Million Users
ENT309 Scaling Up to Your First 10 Million UsersENT309 Scaling Up to Your First 10 Million Users
ENT309 Scaling Up to Your First 10 Million Users
 
AWS re:Invent 2016: Event Handling at Scale: Designing an Auditable Ingestion...
AWS re:Invent 2016: Event Handling at Scale: Designing an Auditable Ingestion...AWS re:Invent 2016: Event Handling at Scale: Designing an Auditable Ingestion...
AWS re:Invent 2016: Event Handling at Scale: Designing an Auditable Ingestion...
 
Introduction to Storage on AWS - AWS Summit Cape Town 2017
Introduction to Storage on AWS - AWS Summit Cape Town 2017Introduction to Storage on AWS - AWS Summit Cape Town 2017
Introduction to Storage on AWS - AWS Summit Cape Town 2017
 
Introduction to Block and File storage on AWS
Introduction to Block and File storage on AWSIntroduction to Block and File storage on AWS
Introduction to Block and File storage on AWS
 
How to Scale to Millions of Users with AWS
How to Scale to Millions of Users with AWSHow to Scale to Millions of Users with AWS
How to Scale to Millions of Users with AWS
 
AWS re:Invent 2016: Scaling Up to Your First 10 Million Users (ARC201)
AWS re:Invent 2016: Scaling Up to Your First 10 Million Users (ARC201)AWS re:Invent 2016: Scaling Up to Your First 10 Million Users (ARC201)
AWS re:Invent 2016: Scaling Up to Your First 10 Million Users (ARC201)
 
(DVO401) Deep Dive into Blue/Green Deployments on AWS
(DVO401) Deep Dive into Blue/Green Deployments on AWS(DVO401) Deep Dive into Blue/Green Deployments on AWS
(DVO401) Deep Dive into Blue/Green Deployments on AWS
 
Deep Dive on Elastic File System - February 2017 AWS Online Tech Talks
Deep Dive on Elastic File System - February 2017 AWS Online Tech TalksDeep Dive on Elastic File System - February 2017 AWS Online Tech Talks
Deep Dive on Elastic File System - February 2017 AWS Online Tech Talks
 
Deploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum Efficiency
Deploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum EfficiencyDeploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum Efficiency
Deploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum Efficiency
 
SRV407 Deep Dive on Amazon Aurora
SRV407 Deep Dive on Amazon AuroraSRV407 Deep Dive on Amazon Aurora
SRV407 Deep Dive on Amazon Aurora
 
Getting started with amazon aurora - Toronto
Getting started with amazon aurora - TorontoGetting started with amazon aurora - Toronto
Getting started with amazon aurora - Toronto
 
NEW LAUNCH! Introducing PostgreSQL compatibility for Amazon Aurora
NEW LAUNCH! Introducing PostgreSQL compatibility for Amazon AuroraNEW LAUNCH! Introducing PostgreSQL compatibility for Amazon Aurora
NEW LAUNCH! Introducing PostgreSQL compatibility for Amazon Aurora
 
Towards Full Stack Security
Towards Full Stack Security Towards Full Stack Security
Towards Full Stack Security
 
Getting Started with Amazon Aurora
Getting Started with Amazon AuroraGetting Started with Amazon Aurora
Getting Started with Amazon Aurora
 
Migrate from SQL Server or Oracle into Amazon Aurora using AWS Database Migra...
Migrate from SQL Server or Oracle into Amazon Aurora using AWS Database Migra...Migrate from SQL Server or Oracle into Amazon Aurora using AWS Database Migra...
Migrate from SQL Server or Oracle into Amazon Aurora using AWS Database Migra...
 
Getting Started with Amazon Redshift
Getting Started with Amazon RedshiftGetting Started with Amazon Redshift
Getting Started with Amazon Redshift
 
Getting Started with Amazon Aurora
Getting Started with Amazon AuroraGetting Started with Amazon Aurora
Getting Started with Amazon Aurora
 
AWS re:Invent 2016: Taking DevOps to the AWS Edge (CTD302)
AWS re:Invent 2016: Taking DevOps to the AWS Edge (CTD302)AWS re:Invent 2016: Taking DevOps to the AWS Edge (CTD302)
AWS re:Invent 2016: Taking DevOps to the AWS Edge (CTD302)
 
AWS re:Invent 2016: Get Technically Inspired by Container-Powered Migrations ...
AWS re:Invent 2016: Get Technically Inspired by Container-Powered Migrations ...AWS re:Invent 2016: Get Technically Inspired by Container-Powered Migrations ...
AWS re:Invent 2016: Get Technically Inspired by Container-Powered Migrations ...
 
Deep Dive on Amazon Aurora
Deep Dive on Amazon AuroraDeep Dive on Amazon Aurora
Deep Dive on Amazon Aurora
 

Destaque

Migrating Enterprise Applications to AWS
Migrating Enterprise Applications to AWSMigrating Enterprise Applications to AWS
Migrating Enterprise Applications to AWS
Tom Laszewski
 
선도적인 미디어 서비스를 위한 AWS의 추가 제언 :: 양승도 솔루션즈 아키텍트 :: AWS Media Day 2016
선도적인 미디어 서비스를 위한 AWS의 추가 제언 :: 양승도 솔루션즈 아키텍트 :: AWS Media Day 2016선도적인 미디어 서비스를 위한 AWS의 추가 제언 :: 양승도 솔루션즈 아키텍트 :: AWS Media Day 2016
선도적인 미디어 서비스를 위한 AWS의 추가 제언 :: 양승도 솔루션즈 아키텍트 :: AWS Media Day 2016
Amazon Web Services Korea
 
효과적인 미디어 서비스를 위한 Web/Mobile Backend 구성 :: 양승도 솔루션즈 아키텍트 :: AWS Media Day
효과적인 미디어 서비스를 위한 Web/Mobile Backend 구성 :: 양승도 솔루션즈 아키텍트 :: AWS Media Day효과적인 미디어 서비스를 위한 Web/Mobile Backend 구성 :: 양승도 솔루션즈 아키텍트 :: AWS Media Day
효과적인 미디어 서비스를 위한 Web/Mobile Backend 구성 :: 양승도 솔루션즈 아키텍트 :: AWS Media Day
Amazon Web Services Korea
 
Media 서비스의 새로운 플랫폼, AWS :: 김기완 솔루션즈 아키텍트 :: AWS Media Day 2016
Media 서비스의 새로운 플랫폼, AWS :: 김기완 솔루션즈 아키텍트 :: AWS Media Day 2016Media 서비스의 새로운 플랫폼, AWS :: 김기완 솔루션즈 아키텍트 :: AWS Media Day 2016
Media 서비스의 새로운 플랫폼, AWS :: 김기완 솔루션즈 아키텍트 :: AWS Media Day 2016
Amazon Web Services Korea
 

Destaque (20)

Migrating Enterprise Applications to AWS: Best Practices & Techniques (ENT303...
Migrating Enterprise Applications to AWS: Best Practices & Techniques (ENT303...Migrating Enterprise Applications to AWS: Best Practices & Techniques (ENT303...
Migrating Enterprise Applications to AWS: Best Practices & Techniques (ENT303...
 
Meetup #3: Migrate a fast scale system to AWS
Meetup #3: Migrate a fast scale system to AWSMeetup #3: Migrate a fast scale system to AWS
Meetup #3: Migrate a fast scale system to AWS
 
Made.com - NOAH13 London
Made.com - NOAH13 LondonMade.com - NOAH13 London
Made.com - NOAH13 London
 
DevOps in Droplr
DevOps in DroplrDevOps in Droplr
DevOps in Droplr
 
Migrating Enterprise Applications to AWS
Migrating Enterprise Applications to AWSMigrating Enterprise Applications to AWS
Migrating Enterprise Applications to AWS
 
Performance Testing - Apache Benchmark, JMeter
Performance Testing  - Apache Benchmark, JMeterPerformance Testing  - Apache Benchmark, JMeter
Performance Testing - Apache Benchmark, JMeter
 
AWS Startup Use Cases 2015
AWS Startup Use Cases 2015AWS Startup Use Cases 2015
AWS Startup Use Cases 2015
 
교육의 진화, 클라우드는 어떤 역할을 하는가 :: Vincent Quah :: AWS Summit Seoul 2016
교육의 진화, 클라우드는 어떤 역할을 하는가 :: Vincent Quah :: AWS Summit Seoul 2016교육의 진화, 클라우드는 어떤 역할을 하는가 :: Vincent Quah :: AWS Summit Seoul 2016
교육의 진화, 클라우드는 어떤 역할을 하는가 :: Vincent Quah :: AWS Summit Seoul 2016
 
[판교에서 만나는 아마존웹서비스] AWS 클라우드 개요
[판교에서 만나는 아마존웹서비스] AWS 클라우드 개요[판교에서 만나는 아마존웹서비스] AWS 클라우드 개요
[판교에서 만나는 아마존웹서비스] AWS 클라우드 개요
 
[Gsc2014 spring(7)]AWS 스타트업 지원/협력 프로그램 소개 gsc2014-spring_명승은_
[Gsc2014 spring(7)]AWS 스타트업 지원/협력 프로그램 소개 gsc2014-spring_명승은_[Gsc2014 spring(7)]AWS 스타트업 지원/협력 프로그램 소개 gsc2014-spring_명승은_
[Gsc2014 spring(7)]AWS 스타트업 지원/협력 프로그램 소개 gsc2014-spring_명승은_
 
AWS re:Invent re:Cap - 비용 최적화: 모범사례와 아키텍처 설계 기초편 - 이종남
AWS re:Invent re:Cap - 비용 최적화: 모범사례와 아키텍처 설계 기초편 - 이종남AWS re:Invent re:Cap - 비용 최적화: 모범사례와 아키텍처 설계 기초편 - 이종남
AWS re:Invent re:Cap - 비용 최적화: 모범사례와 아키텍처 설계 기초편 - 이종남
 
[AWS에서의 미디어 및 엔터테인먼트] 클라우드에서의 브로드캐스팅 서비스
[AWS에서의 미디어 및 엔터테인먼트] 클라우드에서의 브로드캐스팅 서비스[AWS에서의 미디어 및 엔터테인먼트] 클라우드에서의 브로드캐스팅 서비스
[AWS에서의 미디어 및 엔터테인먼트] 클라우드에서의 브로드캐스팅 서비스
 
AWS Innovate: Mobile App testing with AWS Device Farm- Kevin Kim
AWS Innovate: Mobile App testing with AWS Device Farm- Kevin KimAWS Innovate: Mobile App testing with AWS Device Farm- Kevin Kim
AWS Innovate: Mobile App testing with AWS Device Farm- Kevin Kim
 
안-정적인 모바일 서비스 만들기
안-정적인 모바일 서비스 만들기안-정적인 모바일 서비스 만들기
안-정적인 모바일 서비스 만들기
 
선도적인 미디어 서비스를 위한 AWS의 추가 제언 :: 양승도 솔루션즈 아키텍트 :: AWS Media Day 2016
선도적인 미디어 서비스를 위한 AWS의 추가 제언 :: 양승도 솔루션즈 아키텍트 :: AWS Media Day 2016선도적인 미디어 서비스를 위한 AWS의 추가 제언 :: 양승도 솔루션즈 아키텍트 :: AWS Media Day 2016
선도적인 미디어 서비스를 위한 AWS의 추가 제언 :: 양승도 솔루션즈 아키텍트 :: AWS Media Day 2016
 
AWS로 사용자 천만 명 서비스 만들기 (윤석찬)- 클라우드 태권 2015
AWS로 사용자 천만 명 서비스 만들기 (윤석찬)- 클라우드 태권 2015 AWS로 사용자 천만 명 서비스 만들기 (윤석찬)- 클라우드 태권 2015
AWS로 사용자 천만 명 서비스 만들기 (윤석찬)- 클라우드 태권 2015
 
효과적인 미디어 서비스를 위한 Web/Mobile Backend 구성 :: 양승도 솔루션즈 아키텍트 :: AWS Media Day
효과적인 미디어 서비스를 위한 Web/Mobile Backend 구성 :: 양승도 솔루션즈 아키텍트 :: AWS Media Day효과적인 미디어 서비스를 위한 Web/Mobile Backend 구성 :: 양승도 솔루션즈 아키텍트 :: AWS Media Day
효과적인 미디어 서비스를 위한 Web/Mobile Backend 구성 :: 양승도 솔루션즈 아키텍트 :: AWS Media Day
 
AWS Enterprise Summit - 클라우드 네이티브 신규 애플리케이션 구축하기 - 정윤진
AWS Enterprise Summit - 클라우드 네이티브 신규 애플리케이션 구축하기 - 정윤진AWS Enterprise Summit - 클라우드 네이티브 신규 애플리케이션 구축하기 - 정윤진
AWS Enterprise Summit - 클라우드 네이티브 신규 애플리케이션 구축하기 - 정윤진
 
Media 서비스의 새로운 플랫폼, AWS :: 김기완 솔루션즈 아키텍트 :: AWS Media Day 2016
Media 서비스의 새로운 플랫폼, AWS :: 김기완 솔루션즈 아키텍트 :: AWS Media Day 2016Media 서비스의 새로운 플랫폼, AWS :: 김기완 솔루션즈 아키텍트 :: AWS Media Day 2016
Media 서비스의 새로운 플랫폼, AWS :: 김기완 솔루션즈 아키텍트 :: AWS Media Day 2016
 
성공적인 AWS클라우드로의 여정 그리고 5가지 궁금한 점 :: 김재성 :: AWS Summit Seoul 2016
성공적인 AWS클라우드로의 여정 그리고 5가지 궁금한 점 :: 김재성 :: AWS Summit Seoul 2016성공적인 AWS클라우드로의 여정 그리고 5가지 궁금한 점 :: 김재성 :: AWS Summit Seoul 2016
성공적인 AWS클라우드로의 여정 그리고 5가지 궁금한 점 :: 김재성 :: AWS Summit Seoul 2016
 

Semelhante a How to Migrate your Startup to AWS

Semelhante a How to Migrate your Startup to AWS (20)

AWS Summit Stockholm 2014 – B2 – Migrating enterprise applications to AWS
AWS Summit Stockholm 2014 – B2 – Migrating enterprise applications to AWSAWS Summit Stockholm 2014 – B2 – Migrating enterprise applications to AWS
AWS Summit Stockholm 2014 – B2 – Migrating enterprise applications to AWS
 
Scaling the Platform for Your Startup - Startup Talks June 2015
Scaling the Platform for Your Startup - Startup Talks June 2015Scaling the Platform for Your Startup - Startup Talks June 2015
Scaling the Platform for Your Startup - Startup Talks June 2015
 
Scaling the Platform for Your Startup
Scaling the Platform for Your StartupScaling the Platform for Your Startup
Scaling the Platform for Your Startup
 
Your First 10 million Users on the AWS Cloud
Your First 10 million Users on the AWS CloudYour First 10 million Users on the AWS Cloud
Your First 10 million Users on the AWS Cloud
 
Your First 10 Million Users with Amazon Web Services
Your First 10 Million Users with Amazon Web ServicesYour First 10 Million Users with Amazon Web Services
Your First 10 Million Users with Amazon Web Services
 
Scaling on AWS for the First 10 Million Users
Scaling on AWS for the First 10 Million UsersScaling on AWS for the First 10 Million Users
Scaling on AWS for the First 10 Million Users
 
Cloud Migration, Application Modernization, and Security
Cloud Migration, Application Modernization, and Security Cloud Migration, Application Modernization, and Security
Cloud Migration, Application Modernization, and Security
 
Cloud Migration, Application Modernization and Security for Partners
Cloud Migration, Application Modernization and Security for PartnersCloud Migration, Application Modernization and Security for Partners
Cloud Migration, Application Modernization and Security for Partners
 
Building and Managing Scalable Applications on AWS: 1 to 500K users
Building and Managing Scalable Applications on AWS: 1 to 500K usersBuilding and Managing Scalable Applications on AWS: 1 to 500K users
Building and Managing Scalable Applications on AWS: 1 to 500K users
 
Aplicaciones a gran escala: Cómo servir a millones de usuarios
Aplicaciones a gran escala: Cómo servir a millones de usuariosAplicaciones a gran escala: Cómo servir a millones de usuarios
Aplicaciones a gran escala: Cómo servir a millones de usuarios
 
Scaling the Platform for Your Startup
Scaling the Platform for Your StartupScaling the Platform for Your Startup
Scaling the Platform for Your Startup
 
AWS Webcast - Understanding database options
AWS Webcast - Understanding database optionsAWS Webcast - Understanding database options
AWS Webcast - Understanding database options
 
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech Talks
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech TalksAWS Services Overview and Quarterly Update - April 2017 AWS Online Tech Talks
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech Talks
 
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech Talks
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech TalksAWS Services Overview and Quarterly Update - April 2017 AWS Online Tech Talks
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech Talks
 
Escalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuariosEscalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuarios
 
Why Scale Matters and How the Cloud is Really Different (at scale)
Why Scale Matters and How the Cloud is Really Different (at scale)Why Scale Matters and How the Cloud is Really Different (at scale)
Why Scale Matters and How the Cloud is Really Different (at scale)
 
Cloud Migration, Application Modernization and Security for Partners
Cloud Migration, Application Modernization and Security for PartnersCloud Migration, Application Modernization and Security for Partners
Cloud Migration, Application Modernization and Security for Partners
 
AWS Startup Day Bangalore: Being Well-Architected in the Cloud
AWS Startup Day Bangalore: Being Well-Architected in the CloudAWS Startup Day Bangalore: Being Well-Architected in the Cloud
AWS Startup Day Bangalore: Being Well-Architected in the Cloud
 
AWS Summit Stockholm 2014 – T1 – Architecting highly available applications o...
AWS Summit Stockholm 2014 – T1 – Architecting highly available applications o...AWS Summit Stockholm 2014 – T1 – Architecting highly available applications o...
AWS Summit Stockholm 2014 – T1 – Architecting highly available applications o...
 
Escalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuariosEscalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuarios
 

Mais de Amazon Web Services

Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
Amazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
Amazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
Amazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
Amazon Web Services
 

Mais de Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Último

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Último (20)

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 

How to Migrate your Startup to AWS

  • 1. © 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Andreas Chatzakis, AWS Solutions Architecture Bob Gregory, Application Architect, Made.com 7th July 2016 Migrating your Startup to AWS
  • 2. What to expect from this session • Advice for startups migrating to AWS • A practical checklist • Relevant AWS services • A real example from Made.com
  • 3. Services you can use before migrating to AWS Amazon Cognito Amazon Mobile Analytics AWS Device Farm Amazon SNS Mobile Storage & CDN BI & Machine Learning Email DNS Amazon S3 Amazon CloudFront Amazon QuickSight Amazon Redshift Amazon Machine Learning Amazon Kinesis Amazon EMR Amazon Route 53 Amazon SES Amazon WorkMail
  • 4. Proof of Concept • Do this early • Will answer many questions • Identify gaps and dependencies • Estimate cost Start with DEV&TEST!
  • 5. Accelerate your migration with Training Intro Videos and Labs • Free introductory training Online Labs • Hands-on practice in a sandbox environment. Instructor Led Training • Architecting, Developing, Operating, Big Data, Security https://aws.amazon.com/training/
  • 6.
  • 7. Extend your team with AWS Support • 3 plans to match your needs • Developer Support • Business Support • Enterprise Support • AWS Infrastructure Event Management
  • 8. Migration approaches • Big Bang • Default choice for most startups • Phased • Driven by technical complexity or expiration of old infrastructure investments • Per application • Per layer
  • 9. Connectivity • VPN • AWS Direct Connect • Existing provider on AWS (verify region)
  • 10. 3 stage journey Lift & Shift • Move platform • Security • High Availability Optimise • Automate • Optimize cost • Infinite scalability Transform • Decouple • Managed Services • Serverless
  • 11. Preparing for an application migration • Establish objectives • Enumerate application components • Document dependencies • Think about licensing • Licence-included pricing (RDS,EC2) • AWS Marketplace • BYOL • Map to AWS
  • 12. On-premises infrastructure mapped to AWS Technology On-premises AWS Network VPN, MPLS Amazon VPC, AWS Direct Connect Storage DAS, SAN, NAS, SSD Amazon EBS, Amazon S3, Amazon EC2 instance storage, Amazon EFS Compute Hardware, virtualization Amazon EC2, Amazon ECS, AWS Lambda Content delivery Third-party CDN Amazon CloudFront Databases MS SQL Server, MySQL, Oracle, DB2, PostgreSQL, MongoDB,. … Amazon RDS, Amazon DynamoDB, Amazon ElastiCache, DB software on Amazon EC2 Load balancing Hardware and software load balancers Elastic Load Balancing, software load balancers Scaling & cluster management Hardware and software clustering tools Auto Scaling, software clustering solutions DNS BIND, Windows Server, third party Amazon Route 53, third-party DNS software on Amazon EC2
  • 13. On-premises infrastructure mapped to AWS Technology On-premises AWS Analytics & data warehouse Hadoop, Vertica, Cassandra, specialized hardware and software Amazon EMR, Amazon Redshift, software on Amazon EC2 Messaging and workflow RabbitMQ, ActiveMQ, Kafka, … Amazon SQS, Amazon SNS, Amazon SWF, software on Amazon EC2 Caching Redis, Memcached, … Amazon ElastiCache, Memcached, SAP Hana Archiving Tape library, off-site data storage Amazon S3, Amazon Glacier Email Email software Amazon SES Identity, authoritzation, & authentication AD/ADFS, LDAP, SAML, third party… AWS Identity and Access Management/AWS STS, Amazon Cognito, AWS Directory Service, AD & LDAP on Amazon EC2 Deployment & configuration management Chef, Puppet, Salt, Ansible, PowerShell DSC AWS CloudFormation, AWS OpsWorks, AWS Elastic Beanstalk, AWS CodeDeploy, Amazon ECS Management and monitoring CA, BMC, Rightscale Amazon CloudWatch, AWS Config, AWS CloudTrail, AWS Trusted Advisor
  • 14. Simplified cutoff process Your Data Center Web Layer Database Layer Load Balancing Firewalls etc DNS
  • 15. Simplified cutoff process AWS region Your Data Center Web Layer Database Layer Load Balancing Firewalls etc DNS
  • 16. Simplified cutoff process AWS region Private Connection Your Data Center Web Layer Database Layer Load Balancing Firewalls etc DNS
  • 17. Simplified cutoff process AWS region Web Layer Private Connection Your Data Center Web Layer Database Layer Load Balancing Firewalls etc DNS Elastic Load Balancer
  • 18. Simplified cutoff process AWS region Web Layer Private Connection Your Data Center Web Layer Database Layer Load Balancing Firewalls etc DNS Elastic Load Balancer Amazon RDS
  • 19. Simplified cutoff process AWS region Web Layer Private Connection Your Data Center Web Layer Database Layer Load Balancing Firewalls etc DNS Elastic Load Balancer Amazon RDS DB replication
  • 20. Simplified cutoff process AWS region Web Layer Private Connection Your Data Center Web Layer Load Balancing Firewalls etc DNS Elastic Load Balancer Amazon RDS Database Layer DB replication
  • 21. Simplified cutoff process AWS region Web Layer Private Connection Your Data Center Web Layer Load Balancing Firewalls etc DNS Elastic Load Balancer Amazon RDS Database Layer DB replication
  • 22. Simplified cutoff process AWS region Web Layer DNS Elastic Load Balancer Amazon RDS
  • 23. Cutoff Readiness • Review Security best practices • Pen testing • https://aws.amazon.com/security/penetration-testing/ • Load testing • Review AWS Service Limits • AWS Business Support • A tested Migration process • A tested Roll-Back process
  • 24. What could possibly go wrong… • Hard coded IP addresses or host names • Incorrectly sized AWS resources • Auto Scaling ramp up period • High DNS TTL slowing cut over and rollback • Bandwidth from traditional infra to AWS • IP address overlap with old network • Third-party whitelisted IP addresses • Email limits (request increase/use Amazon SES)
  • 25. Migrating the application servers • VM Import • Rebuild • Configuration management (Chef, Puppet…) • Docker and the EC2 Container Service (ECS) • AWS Elastic Beanstalk, AWS Opsworks • Infrastructure as Code and AWS CloudFormation
  • 27. Empire – PaaS experience on top of ECS https://youtu.be/8zbbQkszP04
  • 28. Database Migration options Dump/Restore • Small database • Source DB not supporting replication Native Replication • Homogeneous migration • No transformations AWS Database Migration Service • Heterogeneous migrations • Transformations • Easy to setup
  • 29. Migrating data into AWS • File transfer using S/FTP, SCP, 3rd party tools • Point on-premises backup to S3 • AWS Storage Gateway for asynchronous backup • AWS Import/Export: Disk or Snowball • Database backup tools • Database replication tools • AWS Direct Connect 100 Mbps to 10 Gbps
  • 30. DNS Migration example.com Third-party monitoring System monitoring Internal DNS Public DNS Route 53 public zones Route 53 private zones Route 53 health checks example.com
  • 31. Bulk transfer domains 1. Export DNS to Route 53 2. Delegate to Route 53 3. Transfer domains to Route 53 Order matters for availability!
  • 34. AWS Trusted Advisor Free with Business or Enterprise Support
  • 38. MADE.COM / AWS How do I migrate my application to the cloud? Bob Gregory
  • 39. Introduction Hi everyone, I’m Bob@made.com and I am an Application Architect. I want to talk about things to do before you migrate, then some things to do early in migration, and finish by talking about how we are managing cost.
  • 40. MADE.COM : great design direct from the makers
  • 41. Right now we’re moving from this: Magento OpenERP XML-RPC
  • 43. Last year we moved our hosting away from: ● Traditional managed service ● 4 big hypervisors (20 core, 320GB RAM) ● 19TB SAN (SAS/SSD auto-tiered) ● All replicated in DR site ● VMWare running about 65 VMs (dev / test / prod) ● Running Magento, OpenERP and Unboxed
  • 44. ...to AWS, because: ● We like being connected to the Internet ● To automate infrastructure build (and get things done faster) ● Autoscaling (vs overprovisioning) ● It’s cool. And this is a better reason than it sounds.
  • 45. Start with something simple You are going to break things. A big-bang approach will hurt.
  • 46. Start with something simple If you have no users, you will have no complaints. Consider starting with Greenfield systems.
  • 47. Start with something simple How will you integrate your cloud deployments with on-premise? Loose coupling will save your bacon. Consider starting with Public HTTP services. Consider starting with Asynchronous messaging.
  • 48. Start with something simple It’s easier to handle an outage that only affects you personally. Consider starting with Development Infrastructure.
  • 49. Before you start Treat manual configuration as a bug. Automate all the things.
  • 50. Before you start Cloudformation is okay but can be unwieldy. Consider Terraform if you like JSON. Consider Ansible if you like extensibility.
  • 51. Before you start We had several iterations of our network layout. It is hard to change your entire topology. Keep it simple.
  • 52. We use 9 subnets. Address space is cheap. 2 Route tables. Is this internal or external? Managed NAT instances Let AWS worry about it.
  • 53. Before you start The hardest things to run are stateful services. Amazon do lots of the hard work for you. Consider S3. Consider RDS. Consider Elasticache. Consider Elastic File System.
  • 54. Before you start It is much simpler to manage identical machines. Treat servers as cattle not pets. Consider Docker.
  • 55. Before you start Docker has been a major factor in our success. Developers can think at an application-stack level. Teams deliver a working package configuration and a source- controlled application configuration along with their code-base.
  • 56. Before you start Keep it simple. You don’t need to deploy Kubernetes on top of Mesos + =
  • 57. Before you start There is no charge for running extra accounts. Set up Consolidated Billing and run multiple AWS accounts.
  • 58. We use A hub-and-spoke model. We run a vpn in Management. VPC Peering to access other environments Separate Production. This allows easier access control A separate account for testing automation
  • 59. We use A Bastion account for IAM. Like sudo for AWS. Two-factor authentication to access other environments. Role-based access. Developers are only allowed to destroy test machines. http://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html
  • 61.
  • 62. A 30 second Ansible tutorial: Please can I have exactly one instance with the Name “my-instance”?
  • 63. A 30 second Ansible tutorial: Please can I have exactly one instance ?
  • 64.
  • 65. Don’t be this guy It’s called best practice for a reason
  • 66. So you’ve deployed your first system. You’ve chosen your automation tooling You’ve pushed data into stateful backing services You’ve containerised your codebase and its configuration
  • 67. So you’ve deployed your first system. You have prevented AWSpocalypse.
  • 68. Before you deploy your second service Instances come and go. In order to manage your environment you will need telemetry. Monitor all the things. Create Health Dashboards for each system you deploy.
  • 69. Before you deploy your second service Cloudwatch is okay. It’s easy to set up and free for basic monitoring.
  • 70. We use Collectd To gather metrics Riemann To process and alert InfluxDB To store metrics Grafana To make pretty pictures
  • 71. Before you deploy your second service Instances come and go. In order to manage your environment you will need log shipping. Log all the things. Developers shouldn’t need to ssh to instances just to view logs.
  • 72. We use Rsyslog To gather and process logs Logstash To route logs into indexes Elasticsearch To store logs Kibana To view logs
  • 73. This is expensive in engineering time You must implement monitoring, but there are quicker ways to get going. Consider SAAS.
  • 74. Time to move the big things Database migration is the worst part (except for all the other worst parts). Amazon’s Database Migration Service is essentially magic. Find it in the RDS tab of the AWS Console.
  • 75. We used HAProxy on the old and new systems. To switch over, we configured HAProxy OLD to route traffic to HAProxy NEW. To fail back, we could configure HAProxy NEW to route to HAProxy OLD.
  • 76. So where are we now? We prioritised agility over cash. Each service has redundancy, and shares no infrastructure with other systems. This makes it simple for developers to deploy their stacks.
  • 77. So where are we now? We prioritised agility over cash. Each service has redundancy, and shares no infrastructure with other systems. This makes it really expensive.
  • 78. How are we reducing costs? Not everything needs to be up all the time Consider Turning off test environments overnight. Consider Scaling down database instances. Consider Auto-scaling Groups.
  • 79. How are we reducing costs? On-demand instances are the expensive option. Consider Reserved Instances for RDS, Elasticache, anything where you have some well-known capacity.
  • 80. How are we reducing costs? On-demand instances are the expensive option. Consider Spot Instances for automated tests and batch processing.
  • 81. How are we reducing costs? CloudHealth has useful reports on instance over-sizing; unattached volumes; and violations of best practice. They charge a fixed percentage of your bill, so you are never too small to consider using them.
  • 82. How are we reducing costs? The next step is Container Scheduling. By abstracting away the ec2 instances, we can retain agility while deploying multiple systems to each instance. By using servers more efficiently we can cut our bill.
  • 83. How are we reducing costs? Container scheduling requires Great monitoring of service performance and health. Log shipping from your containers. Service discovery (we’re using consul) A fundamental rethink of the way you architect systems. It has taken us approximately a year to reach this point.
  • 85. Please remember to rate this session under My Agenda on awssummit.london