Detailed Course Outline
Day 1
Module 0: Course overview
- Course objective
- Suggested prerequisites
- Course overview breakdown
Module 1: Introduction to DevOps
- What is DevOps?
- The Amazon journey to DevOps
- Foundations for DevOps
Module 2: Infrastructure Automation
- Introduction to Infrastructure Automation
- Diving into the AWS CloudFormation template
- Modifying an AWS CloudFormation template
- Demonstration: AWS CloudFormation template structure, parameters, stacks, updates, importing resources, and drift detection
Module 3: AWS Toolkits
- Configuring the AWS CLI
- AWS Software Development Kits (AWS SDKs)
- AWS SAM CLI
- AWS Cloud Development Kit (AWS CDK)
- AWS Cloud9
- Demonstration: AWS CLI and AWS CDK
- Hands-on lab: Using AWS CloudFormation to provision and manage a basic infrastructure
Module 4: Continuous integration and continuous delivery (CI/CD) with development tools
- CI/CD Pipeline and Dev Tools
- Demonstration: CI/CD pipeline displaying some actions from AWS CodeCommit, AWS
- CodeBuild, AWS CodeDeploy and AWS CodePipeline
- Hands-on lab: Deploying an application to an EC2 fleet using AWS CodeDeploy
Day 2
Module 4: Continuous integration and continuous delivery (CI/CD) with development tools
- AWS CodePipeline
- Demonstration: AWS integration with Jenkins
- Hands-on lab: Automating code deployments using AWS CodePipeline
Module 5: Introduction to Microservices
- Introduction to Microservices
Module 6: DevOps and containers
- Deploying applications with Docker
- Amazon Elastic Container Service and AWS Fargate
- Amazon Elastic Container Registry and Amazon Elastic Kubernetes service
- Demonstration: CI/CD pipeline deployment in a containerized application
Module 7: DevOps and serverless computing
- AWS Lambda and AWS Fargate
- AWS Serverless Application Repository and AWS SAM
- AWS Step Functions
- Demonstration: AWS Lambda and characteristics
- Demonstration: AWS SAM quick start in AWS Cloud9
- Hands-on lab: Deploying a serverless application using AWS Serverless Application Model (AWS SAM) and a CI/CD Pipeline
Module 8: Deployment strategies
- Continuous Deployment
- Deployments with AWS Services
Module 9: Automated testing
- Introduction to testing
- Tests: Unit, integration, fault tolerance, load, and synthetic
- Product and service integrations
Day 3
Module 10: Security automation
- Introduction to DevSecOps
- Security of the Pipeline
- Security in the Pipeline
- Threat Detection Tools
- Demonstration: AWS Security Hub, Amazon GuardDuty, AWS Config, and Amazon Inspector
Module 11: Configuration management
- Introduction to the configuration management process
- AWS services and tooling for configuration management
- Hands-on lab: Performing blue/green deployments with CI/CD pipelines and Amazon Elastic Container Service (Amazon ECS)
Module 12: Observability
- Introduction to observability
- AWS tools to assist with observability
- Hands-on lab: Using AWS DevOps tools for CI/CD pipeline automations
Module 13: Reference architecture (Optional module)
- Reference architectures
Module 14: Course summary
- Components of DevOps practice
- CI/CD pipeline review
- AWS Certification