Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Building modern web applications on AWS

Building modern web applications on AWS

Developers need to quickly develop, build, and deploy web applications. In this session, we show you how AWS CodeStar makes it easy for you to set up a continuous delivery toolchain and start developing on AWS in minutes. We also share best practices for managing and deploying web applications using AWS Amplify.

Darko Mesaros

November 01, 2019
Tweet

More Decks by Darko Mesaros

Other Decks in Technology

Transcript

  1. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Darko Mesaroš Specialist Solutions Architect, AWS @darkosubotica Building Web Apps with AWS CodeStar (and Amplify Console)
  2. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Darko Mesaroš / Darko Meszaros / Дарко Месарош ! → " → # → $ → % Berlin % @darkosubotica ln/darko-mesaros $(whoami)
  3. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. What we will learn today? • Modern Application – Why? What? How? • Focusing on your code with CodeStar • Let Amplify console do the work for you
  4. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Modern Application – Why? What? How?
  5. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Approaches to modern application development • Go serverless • Microservices • Infrastructure (everything) as Code • CI/CD • Insight – how is what doing? • Built in Security
  6. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. CI/CD Source Build Test Production Continuous integration Continuous delivery Continuous deployment
  7. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. CI/CD • Deployment frequency • weeks/monthly => hourly/daily • Change lead time • one-six months => one-seven days • Change failure rate • 46- 60% => 0-15% • 48% of software teams where able to see the reduced failure rates Source: 2018 DORA State of DevOps Report
  8. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. CI/CD Source Build Test Production Third Party Tooling AWS CodeStar AWS CodeCommit AWS CodeBuild AWS CodeDeploy AWS CodePipeline
  9. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. CI – Continuous Integration
  10. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. CI/CD Source Build Test Production Continuous integration Continuous delivery Continuous deployment
  11. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Continuous delivery service for fast and reliable application updates Model and visualize your software release process Builds, tests, and deploys your code every time there is a code change Integrates with third-party tools and AWS AWS CodePipeline
  12. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Secure, scalable, and managed Git source control Use standard Git tools Scalability, availability, and durability of Amazon S3 Encryption at rest with customer-specific keys No repo size limit Post commit hooks to call out to SNS/Lambda AWS CodeCommit
  13. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Fully managed build service that compiles source code, runs tests, and produces software packages Scales continuously and processes multiple builds concurrently You can provide custom build environments suited to your needs via Docker images Only pay by the minute for the compute resources you use Launched with CodePipeline and Jenkins integration AWS CodeBuild
  14. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. CD – Continuous Deployment
  15. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. CI/CD Source Build Test Production Continuous integration Continuous delivery Continuous deployment
  16. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Automates code deployments to any instance Handles the complexity of updating your applications Avoid downtime during application deployment Rollback automatically if failure detected Deploy to Amazon EC2 or on-premises servers, in any language and on any operating system Integrates with third-party tools and AWS AWS CodeDeploy
  17. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Focusing on your code with CodeStar
  18. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. AWS CodeStar Quickly develop, build, and deploy applications on AWS Start developing on AWS in minutes Work across your team, securely Manage software delivery easily Choose from a variety of project templates
  19. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. AWS CodeStar • Some notable features • Free • Integration with Cloud9 IDE • Works with • EC2, Lambda, CodeCommit, CodeBuild, CodePipeline, CodeDeploy, CloudFormation, CloudWatch, Elastic Beanstalk • GitHub, Atlassian JIRA
  20. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Sweet CodeStar demo
  21. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. AWS Amplify Console
  22. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. DevOps requirements for modern web apps Dev sandboxes Test Prod Web app per dev sandbox Test web app Prod web app Isolated backends Shared backend
  23. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. DevOps challenges with modern web apps Faster release cycles Team workflows Global availability Lots of moving parts complicate the following:
  24. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. AWS Amplify Console Build, deploy, and host cloud-powered modern web apps 1. Connect your repository 2. Configure build settings 3. Deploy your app Optional deployment of backend resources + fully managed front-end hosting
  25. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. AWS Amplify Console Your app is served via Amazon's reliable content delivery network with 144 points of presence globally. Set up custom domains managed in Amazon Route 53 with a single click, plus get a free HTTPS certificate. Connect your repository to 'git push' changes to your front end and backend in a single workflow. Work on new features without impacting production. Create branch deployments linked to each feature branch. All deployments either rollout successfully or fail without requiring maintenance windows. Share yet-to-be released features with internal stakeholders by setting a username and password.
  26. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Use cases Use static site generators like Hugo or Jekyll to publish a blog. SSGs perform faster than traditional websites. Deploy SSGs with free SSL on the AWS Amplify Console. Add dynamic functionality using GraphQL or REST APIs. Use the AWS Amplify Console to deploy your front end and backend in a single workflow. PWAs offer native app-like performance, work offline, support push notifications, and can be updated over the air. Use AWS Amplify to deploy PWAs to mobile devices.
  27. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Summary • Automate everything! • Move fast, try new things, and do it safely! • Let us do the work for you!
  28. © 2019, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Next Steps • AWS DevOps Blog: https://aws.amazon.com/blogs/devops/ • AWS 10 Minute Tutorials: • https://aws.amazon.com/getting-started/tutorials/build- serverless-application/ • https://aws.amazon.com/getting-started/tutorials/launch-an- app/ • https://aws.amazon.com/getting-started/tutorials/continuous- deployment-pipeline/
  29. © 2018, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Thank you! @darkosubotica ln/darko-mesaros