Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Migrating Existing Applications to AWS Cloud


Published on

Published in: Technology, Business
  • Be the first to comment

Migrating Existing Applications to AWS Cloud

  1. 1. Migrating Existing Applications To The Cloud: A Phased Driven approach to Cloud MigrationJinesh Varia<br />
  2. 2. The “Living and Evolving” AWS Cloud<br />Your Application<br />Tools to access services<br />Libraries and SDKs<br />.NET/Java etc.<br />Web Interface<br />Management Console<br />Tools<br />AWS Toolkit for Eclipse<br />Command Line Interface<br />Cross Service features<br />AuthenticationAWS IAM<br />Monitoring<br />Amazon CloudWatch<br />Deployment and Automation<br />AWS Elastic Beanstalk<br />Platform building blocks<br />Content Delivery<br />Amazon CloudFront<br />Email<br />Amazon SES<br />Payments<br />Amazon DevPay<br />Amazon FPS<br />Parallel Processing<br />Amazon Elastic MapReduce<br />Messaging<br />Amazon SNS<br />Amazon SQS<br />Workforce<br />Amazon Mechanical Turk<br />Infrastructure building blocks<br />Compute<br />Amazon EC2 <br />Network<br />Amazon VPC<br />Elastic LB<br />Amazon Route 53<br />Storage<br />Amazon S3<br />Amazon EBS<br />Database<br />Amazon RDS<br />Amazon SimpleDB<br />Amazon Global Physical Infrastructure <br />(Geographical Regions, Availability Zones, Edge Locations)<br />
  3. 3. A Phased Driven approach to Cloud Migration<br />
  4. 4.
  5. 5. Includes:<br />Financial Assessment (TCO/ROI Analysis)<br />Security and Compliance Assessment <br />Technical Assessment<br />Choosing the right candidate<br />Migrating Licensed products<br />Identifying the tools that you can reuse<br />Functional/Architectural assessment<br />
  6. 6. Security and Compliance Assessment<br /><ul><li>You own the data, not AWS.
  7. 7. You choose which geographic location to store the data. It doesn’t move unless you decide to move it.
  8. 8. You should consider the sensitivity of your data and decide if and how you will encrypt your data while it is in transit and while it is at rest.</li></ul>Involve your Security Teams early in the process<br />
  9. 9. Create a Dependency Tree of your IT Assets<br />Dashboard<br />Report<br />CRM<br />Search<br />DB<br />logs<br />Service<br />LDAP<br />Auth<br />Web<br />Engine<br />OLAP<br />ERP<br />List all your IT assets<br />Identify upward and downward dependencies<br />Start classifying your IT assetsinto different categories:<br />Applications with Top Secret, Secret, or Public data sets<br />Applications with low, medium and high compliance requirements<br />Applications that are internal-only, partner-only or customer-facing<br />Applications with low, medium and high coupling<br />Applications with strict, relaxed licensing <br />
  10. 10. How to choose the right candidate for the cloud?<br />Dashboard<br />Report<br />CRM<br />Search<br />DB<br />logs<br />Service<br />LDAP<br />Auth<br />Web<br />Engine<br />OLAP<br />ERP<br />Search for under-utilized IT assets<br />Applications that has immediate business need to scale<br />Applications that are running out of capacity<br />Low-hanging fruits (Examples):<br />Web Applications<br />Batch Processing systems<br />Build/QA/Test systems<br />Content Management Systems<br />Digital Asset Management Systems<br />
  11. 11. Includes:<br /><ul><li>Get your feet wet with Amazon Web Services
  12. 12. Learning AWS
  13. 13. Build reference architecture
  14. 14. Be aware of the security features
  15. 15. Build a Prototype/Pilot
  16. 16. Build support in your organization
  17. 17. Validate the technology
  18. 18. Test legacy software in the cloud
  19. 19. Perform benchmarks and set expectations</li></li></ul><li>Get your feet wet – In the cloud in 5 minutes<br />
  20. 20.
  21. 21. Includes:<br /><ul><li>Learning about different database storage options available today
  22. 22. Uploading/Moving your data in Batches
  23. 23. Analyzing your database/datasets
  24. 24. Build necessary toolsand scripts to migrate data
  25. 25. Security of your data (Encryption)</li></li></ul><li>Leverage different storage options in cloud<br />
  26. 26. Includes:<br /><ul><li>Decide a strategy (Forklift/Hybrid)
  27. 27. Automate your processes by creating AMIs
  28. 28. Build “cloud-aware” layers of code for tightly coupled apps</li></li></ul><li>Forklift Migration Strategy<br />App-DB Combo<br />Billing Service<br />SearchService<br />Billing Service<br />Billing DB<br />SearchDB<br />Billing DB<br />
  29. 29. Process<br />Search<br />Search<br />Billing<br />Billing<br />
  30. 30. Includes:<br /><ul><li>Leveraging other AWS services
  31. 31. Implementing “Elasticity”
  32. 32. Automating in-cloud software development and deployment lifecycle
  33. 33. Increasing high availability by leveraging multiple Availability Zones
  34. 34. Hardening Security</li></li></ul><li>Automate Elasticity<br />Amazon S3<br />Apache<br />Apache<br />Apache<br />Apache<br />Apache<br />Apache<br />Apache<br />Struts<br />Tomcat<br />Log4J<br />Your Code<br />Your Code<br />Hibernate<br />Spring<br />Amazon S3<br />Tomcat<br />Tomcat<br />Tomcat<br />Tomcat<br />Tomcat<br />Tomcat<br />Inventory of AMIs<br />Golden AMI and <br />Fetch binaries on boot<br />JeOS AMI and Library of recipes (install scripts)<br />Struts<br />Log4J<br />Spring<br />Fetch on boot<br />Amazon EC2<br />JEE<br />JEE<br />Fetch on boot<br />Apache<br />Apache<br />Apache<br />Apache<br />Struts<br />Struts<br />Struts<br />Struts<br />Struts<br />Struts<br />Linux<br />Linux<br />Tomcat<br />Tomcat<br />Tomcat<br />Tomcat<br />Hibernate<br />Hibernate<br />Hibernate<br />Hibernate<br />Your Code<br />Your Code<br />Your Code<br />Your Code<br />Your Code<br />Your Code<br />Recipes<br />Fetch on boot<br />JEE<br />JEE<br />JEE<br />JEE<br />CHEF<br />Linux<br />Linux<br />Linux<br />Linux<br />Log4J<br />Log4J<br />Log4J<br />Log4J<br />Log4J<br />Log4J<br />Spring<br />Spring<br />Spring<br />Spring<br />Spring<br />Spring<br />CHEF<br />JEE<br />Hibernate<br />Hibernate<br />Hibernate<br />Hibernate<br />Hibernate<br />Hibernate<br />Linux<br />Amazon EC2<br />Amazon EC2<br />JEE<br />JEE<br />JEE<br />JEE<br />JEE<br />JEE<br />JeOS AMI<br />Java AMI<br />Java AMI<br />Linux<br />Linux<br />Linux<br />Linux<br />Linux<br />Linux<br />Java App Stack<br />Frozen Pizza Model<br />Take N Bake Pizza Model<br />Made to order Pizza Model<br />
  35. 35. Hello, I am <br />Mr. Automate<br />Development<br />And Testing<br />Automate <br />Using <br />Cloud APIs<br />Staging and <br />Production<br />Monitoring<br />Build and <br />Deployment<br />
  36. 36. Includes:<br /><ul><li>Understanding your usage patterns and managing cloud resources more effectively
  37. 37. Optimizing to increase Performance, improve efficiency and save further costs
  38. 38. Implementing Advanced Monitoring and telemetry
  39. 39. Ensuring enhanced security
  40. 40. Refactoring applications as necessary
  41. 41. Leverage AWS Best Practices</li></li></ul><li>Optimize and get immediate ROI<br />Understand your usage patterns and manage your cloud resources more effectively<br />Terminate your under-utilized instances<br />Invest in Reserved Instances<br />Improve performance and efficiency<br />Caching at different levels<br />Increase visibility of your apps by implementing advanced monitoring and telemetry<br />Create dashboards to monitor your business SLAs<br />
  42. 42. Cloud Migration: a Phased-driven Strategy<br />
  43. 43.<br />
  44. 44. AS<br />AS<br />AS<br /><br />Elastic IP<br /><br />LB<br />LB<br />Auto-scaling group : Web Tier<br />LB<br />ELB: Web Tier<br />EC2.m1.small<br />WS<br />WS<br />Apache<br />Apache<br />Apache<br />Apache<br />Auto-scale: Middle Tier<br />LB<br />HAProxy: Middle Tier<br />EC2.m1.large<br />Tomcat<br />Tomcat<br />Tomcat<br />Tomcat<br />Tomcat<br />DB<br />RDS<br />Master<br />EC2.m1.xlarge<br />Snap shots<br />DBSlave<br />DBSlave<br />RDS(Slave)<br />Amazon S3<br />EC2.m1.large<br />