O slideshow foi denunciado.
Seu SlideShare está sendo baixado. ×

Agile Deployment using Git and AWS Elastic Beanstalk

Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Carregando em…3
×

Confira estes a seguir

1 de 39 Anúncio

Agile Deployment using Git and AWS Elastic Beanstalk

Baixar para ler offline

AWS Elastic Beanstalk is the fastest and simplest way to get an application up and running on Amazon Web Services. Developers can simply upload their application code and the service automatically handles all the details such as resource provisioning, load balancing, auto-scaling, and monitoring. This session shows you how to connect your Git repository with Amazon Web Services, deploy your code to AWS Elastic Beanstalk, easily enable or disable application functionality, and perform zero-downtime deployments through interactive demos and code samples.

Timothee Cruse, Solutions Architect, Amazon Web Services, ASEAN

AWS Elastic Beanstalk is the fastest and simplest way to get an application up and running on Amazon Web Services. Developers can simply upload their application code and the service automatically handles all the details such as resource provisioning, load balancing, auto-scaling, and monitoring. This session shows you how to connect your Git repository with Amazon Web Services, deploy your code to AWS Elastic Beanstalk, easily enable or disable application functionality, and perform zero-downtime deployments through interactive demos and code samples.

Timothee Cruse, Solutions Architect, Amazon Web Services, ASEAN

Anúncio
Anúncio

Mais Conteúdo rRelacionado

Diapositivos para si (20)

Quem viu também gostou (20)

Anúncio

Semelhante a Agile Deployment using Git and AWS Elastic Beanstalk (20)

Mais de Amazon Web Services (20)

Anúncio

Mais recentes (20)

Agile Deployment using Git and AWS Elastic Beanstalk

  1. 1. © 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Timothée Cruse Solution Architect, ASEAN April 28th 2016 Agile Deployment using Git and AWS Elastic Beanstalk
  2. 2. Web Services APP DEPLOYMENT ENVIRONMENTS INFRASTRUCTURE
  3. 3. What if you could just focus on your app ? APP and a TOOLBOX for DEPLOYMENT, ENVIRONMENTS and INFRASTRUCTURE
  4. 4. You can with AWS Elastic Beanstalk! APP AWS Elastic Beanstalk
  5. 5. Okay let’s get started!
  6. 6. Components of a Web App • Three tier architecture: • Web Server • App Server • Database • Components • Application Compute • Database Engine • Storage and Delivery
  7. 7. AWS Elastic Beanstalk - EB • Easily deploy, monitor, and scale applications • Infrastructure provisioned and managed by EB. You maintain complete control. • Preconfigured application containers that are easily customizable. • Platform updates handled automatically/manually within maintenance window
  8. 8. AWS Elastic Beanstalk Environment • Two tiers • Web Server • Worker • Two types: • Single instance • Load balanced, auto scalable • Configures Amazon Route 53 and provides a domain name https://yourenv.elasticbeanstalk.com
  9. 9. Application Versioning Saved Configurations Allow for easy duplication for A/B testing or non-disruptive deployments Application Versions All versions are stored durably in Amazon S3. Code can also be pushed from a Git repository!
  10. 10. AWS Elastic Beanstalk Instance Configuration Your code HTTP server Application server Language interpreter Operating system Host • Each Amazon EC2 instance comes with the necessary components to run applications • No more worrying about logging into instances to install and configure your app stack Focus on building your app
  11. 11. Deployment Options 1. Via the AWS Management Console 2. Via Git / EB CLI 3. Via the AWS Toolkit for Eclipse and the Visual Studio IDE $ pip install awsebcli
  12. 12. Example: CLI workflow Initial app deployment: $ git init . $ git add . Initialize your Git repository01 Add your code04 $ eb init $ git commit –m “v1.0” Create your Elastic Beanstalk app02 Commit05 Follow the prompts to configure the environment 03 Create the resources and launch the application 06 $ eb create
  13. 13. Example: CLI workflow Update your app: Update your code01 $ git add . $ git commit –m “v2.0” $ eb deploy Push the new code02 Monitor the deployment progress03 $ eb status
  14. 14. Live Demo http://bit.ly/summit2016-helloworld
  15. 15. Hello world
  16. 16. • Scalable and Highly Available • Database • WebSockets Lets use a web framework: SailsJS “The web framework of your dreams. Built for developers by developers.” http://sailsjs.org Lets build a simple chat app!
  17. 17. Customization via .ebextensions • Customize AWS Elastic Beanstalk resources • Examples: • Deploy your resources in a custom VPC • Configure your auto-scaling rules • Much more • Simple Chat: • Custom VPC • Configure ELB for websockets
  18. 18. Components of a Web App • Three tier architecture: • Web Server • App Server • Database • Components • Application Compute • Database Engine
  19. 19. Amazon RDS Amazon RDS • Fully managed relational database • Automated full daily backups and 5 min incremental point in time recovery • Highly available through Multi-AZ with automatic failover to standby database • Easily create cross-region read replicas • Managed underlying storage layer with configurable IOPS performance Aurora MariaDB
  20. 20. Using Elastic Beanstalk with Amazon RDS • Support for running Amazon RDS instances in your AWS Elastic Beanstalk environment. • RDS connection details are made available to application as environment variables • Database is tied to beanstalk environment’s lifecycle
  21. 21. Live Demo http://bit.ly/summit2016-simplechat-rds
  22. 22. Simple Chat with a database
  23. 23. Multi-AZ - High Availability Setup A Simple Multi-AZ Setup
  24. 24. Multi-AZ - High Availability Setup Availability Zone A - Fails
  25. 25. Multi-AZ - High Availability Setup RDS Multi-AZ Failover Kicks In
  26. 26. Multi-AZ - High Availability Setup Slave is promoted to Master Starts accepting traffic from Application
  27. 27. Multi-AZ - High Availability Setup Auto scaling Kicks In Spins up App Server instance to maintain the min count of 2
  28. 28. WebSockets over multiple nodes?
  29. 29. Amazon ElastiCache Amazon ElastiCache • Fully managed in-memory cache • Dynamically add or remove cache nodes • Memcached and Redis • Cache node auto-discovery • Multi-AZ node placement • Multi-AZ with auto-failover • Persistence • Read replicas
  30. 30. New branch: Simple Chat + DB + Redis
  31. 31. Live Demo http://bit.ly/summit2016-simplechat-redis
  32. 32. 2 Environments PROD STAGING
  33. 33. Blue/Green Deployments
  34. 34. Blue/Green Deployments
  35. 35. Blue/Green Deployments
  36. 36. Live Demo
  37. 37. AWS Elastic Beanstalk • Deploy and maintain complete control over my environment • Focus on my app • Git + EB CLI
  38. 38. Smooth sailing from now on
  39. 39. Thank you

×