Join this workshop for a crash course in serverless DevOps! This workshops presents a scenario in which you help out Wild Rydes (www.wildrydes.com), the world’s leading unicorn transportation startup! After building the first iteration of its serverless web application, Wild Rydes needs serverless DevOps experts like yourself to help it rapidly build and iterate upon its web app. In this workshop, you’ll help Wild Rydes set up a CI/CD pipeline that enables the company to rapidly build, test, and deploy changes to its serverless application. You’ll also learn to monitor and diagnose issues for its application. This workshop will teach you how to model and deploy serverless apps with the AWS Serverless Application Model. You’ll learn to use AWS CodePipeline and AWS CodeBuild to create a CI/CD pipeline for AWS Lambda and other services. Finally, you’ll learn to use AWS X-Ray to diagnose issues in your Lambda functions.
Requirements: Laptop, AWS account, basic Git experience. Recommended: Previous experience with the AWS Management Console and AWS CloudFormation templates, some familiarity with the AWS Developer Tools services, and preferably one of the AWS Associate certifications.
5. Why does DevOps matter?
30xMore frequent
deployments
200xShorter lead times
60xFewer failures
168xFaster recovery
6. Development transformation at Amazon: 2001–2009
2001 2009
Monolithic architecture and
hierarchical organization
Decoupled services and
two pizza teams
7. In 2009, we ran a
study to find out
where
inefficiencies
might still exist
8. We were just waiting
WaitWrite
code WaitBuild
code WaitDeploy
to test
Deploy
to prod
Weeks
Mins Days Mins Days Mins Days Mins
9. We were just waiting
WaitWrite
code WaitBuild
code WaitDeploy
to test
Deploy
to prod
Weeks
Mins Days Mins Days Mins Days Mins
10. Deployment pipelines
Automated actions and transitions;
from check-in to production
Development benefits:
• Faster
• Safer
• Simplification and
standardization
11. This has continued to work out really well
In 2014:
• Thousands of service teams across Amazon
• Building microservices
• Practicing continuous delivery
• Many environments (staging, beta, production)
50 million deployments a year
15. AWS Code Services
Source Build Test Production
Third-party
tooling
Software release steps:
AWS CodeCommit AWS CodeBuild
AWS CodePipeline
AWS SAM
16. AWS CodeStar
Start developing on AWS in minutes
Work across your team, securely
Manage software delivery easily
Choose from a variety of project templates
Quickly develop, build, and deploy applications on AWS
19. Owning servers means dealing with ...
Operations and management Scaling
Provisioning and utilization Availability and fault
tolerance
20. Benefits of Lambda and serverless compute
No servers to provision
or manage
Scales with usage
Never pay for idle Availability and fault
tolerance built in
21. Using AWS Lambda
Bring your own code
• Node.js, Java, Python, C#
• Bring your own libraries
(even native ones)
Flexible use
• Synchronous or
asynchronous
• Integrated with other
AWS services
Flexible authorization
• Securely grant access to
resources and VPCs
• Fine-grained control for
invoking your functions
Simple resource model
• Select power rating from
128 MB to 1.5 GB
• CPU and network
allocated proportionately
23. Services for building serverless applications
AWS SAM
AWS Lambda
Amazon DynamoDB
Amazon API Gateway
Amazon SQS
Serverless compute and API proxy
AWS X-Ray
AWS step functions
Database, state management, and queues
Developer tools
24. AWS Serverless Application Model (AWS SAM)
AWS CloudFormation brings:
• Infrastructure as code
• Easy to provision and manage a collection of related AWS resources
• Input .yaml file and output provisioned AWS resources
• Optimized for infrastructure
AWS SAM:
• CloudFormation extension optimized for serverless
• New serverless resources: functions, APIs, and tables
• Supports anything CloudFormation supports
• Open specification (Apache 2.0)
26. AWS SAM Local
• https://github.com/awslabs/aws-sam-local
• Install and run Docker
• Install SAM Local (Go platform binaries)
• Local functionality
• Invoke functions
• Generate sample event source payloads
• Run API Gateway
33. Get started!
• Work in teams
• Reveal detailed instructions, if necessary
• AWS staff is here to help
• $25 AWS credits will be available
• http://amzn.to/serverless-devops-workshop