DevOps Engineering on AWS teaches you how to use the combination of tools, practices, and cultural philosophy of DevOps to improve an organization’s ability to develop, deliver, and maintain applications and services at high velocity on AWS. This course covers Continuous Integration (CI), Continuous Delivery (CD), microservices, infrastructure as code, monitoring and logging, and communication and collaboration.
Course Objectives
In this course, you learn to:
- List the advantages of small DevOps teams
- List the roles and responsibilities of the members of a typical small DevOps team
- Leverage AWS Cloud9 to write, run and debug their code as well as share their cloud-based IDE with their dev team
- Build continuous integration/continuous delivery (CI/CD) pipelines including testing and security
- Develop Git branching strategies and integrate with CI/CD pipeline for various environments
- Use AWS CloudFormation to deploy development, test, and production environments for a software development project
- Design and implement an infrastructure on AWS that supports DevOps development projects
- Build a CI/CD pipeline for AWS CloudFormation templates
- Establish collaboration by bringing together the workflows and responsibilities of development and operations
- Host secure, highly scalable private Git repositories with AWS CodeCommit
- Leverage Amazon Elastic Container Registry (Amazon ECR) to securely store Docker container images and integrate with AWS CodeBuild and Amazon Elastic Container Service (Amazon ECS)
- Automate build, test, and packaging code with AWS CodeBuild
- Integrate security in CI/CD pipeline tools and services
- Implement common deployment strategies such as “all at once,” “rolling,” and “blue/green”
- Automate software deployments to Amazon Elastic Compute Cloud (Amazon EC2), on-premises computes, AWS ECS (Amazon EC2 /AWS Fargate), and AWS Lambda with AWS CodeDeploy
- Automate release pipelines (build, test, deploy) with AWS CodePipeline
- Monitor an application and environment using AWS tools and technologies
Intended Audience
This course is intended for:
- Developers
- DevOps engineers
- SysOps engineers
- DevOps architects
- System administrators
Prerequisites
We recommend that learners have:
- Previous attendance at the Cloud Operations on AWS or Developing on AWS courses
- Working knowledge of one or more high-level programing languages, such as C#, Java, PHP, Ruby, Python
- Intermediate knowledge of administering Linux or Windows systems at the command-line level
- Two or more years of experience provisioning, operating, and managing AWS environments
Course Outline
- Module 1: Introduction to DevOps
- Module 2: Infrastructure Automation
- Module 3: AWS Toolkits
- Lab 1: Using AWS CloudFormation to provision and manage a basic infrastructure
- Module 4 - Continuous Integration/Continuous Delivery (CI/CD) with Development Tools
- Lab 2: Deploy an application to an EC2 fleet using AWS CodeDeploy
- Lab 3: Automating code deployments using AWS CodePipeline
- Module 6: DevOps and Containers
- Module 7: DevOps and Serverless Computing
- Lab 4: Deploying a serverless application using AWS Serverless Application Model (AWS SAM) and a CI/CD pipeline
- Module 8: Deployment Strategies
- Module 9: Automated Testing
- Module 10: Security Automation
- Module 11: Configuration Management
- Lab 5: Performing blue/green deployments with CI/CD pipelines and Amazon Elastic Container Service
- Module 12: Observability
- Lab 6: Using AWS DevOps tools for CI/CD pipeline automations
- Module 13: Reference Architectures
- Course Wrap-up
- Course Resources