1) Pre-requisites
Setup
Installing Docker
Installing Brew
Installing Java
Installing Ansible
Other Recommended Tools
Setting up Required Services
Setting up a Course Root Folder
2) Creating the Sample Application
Application Architecture
Installing the Application
Building the Application
Running the Application
Testing the Application
3) Creating Docker Release Images
Release Pipeline Workflow
Workflow Specifications
Understanding the Test Stage
Running the Test Stage
Understanding the Base Image
Understanding the Release Stage
Running the Release Stage
Tagging and Publishing Release Images
5) Setting up AWS Access
Setting up AWS Identity and Access Management
Creating an Account Alias
Creating IAM Roles
Creating Groups
Creating Users
Setting up an EC2 Key Pair
Setting up AWS CLI Access
6) Running Docker Applications Using the EC2 Container Service
EC2 Container Service Overview
Publishing Images to EC2 Container Registry
Publishing Images Using the Release Pipeline
Creating an ECS Cluster
Verifying an ECS Container Instance
Creating an ECS Task Definition
Creating an ECS Service
ECS Service Deployments
Creating an ECS Task
7) Customizing ECS Container Instances
Custom Amazon Machine Image Design
Understanding EC2 Instance Initialization
Using Packer to Build Amazon Machine Images
Creating a Packer Template
Adding Packer Provisioning Tasks
Configuring the ECS Agent
Customizing Docker
CloudWatch Logs Integration
HTTP Proxy Support
ECS Container Instance Health Checks
Post Build Cleanup
Building and Publishing the Image
8) Deploying AWS Infrastructure Using Ansible and CloudFormation
AWS Deployment Strategy
AWS Account Infrastructure Architecture
Ansible Playbooks
Ansible Playbook Structure
Creating an Ansible Playbook
Configuring the AWS STS Role
Configuring the AWS CloudFormation Role
Understanding the AWS CloudFormation Role
Using AWS CloudFormation Role Templates
Creating the CloudFormation Resources Stack
Creating the EC2 Container Registry Stack
Creating the Network Stack
Publishing the Docker Squid Image
Creating the HTTP Proxy Stack
Deploying the HTTP Proxy Stack
9) Architecting and Preparing Applications for ECS
Microtrader AWS Architecture
Docker and AWS Challenges
Controlling Cluster Auto Discovery
Configuring Cluster Auto Discovery Using Confd
10) Defining ECS Applications Using Ansible and CloudFormation
Creating the Microtrader Deployment Playbook
Configuring EC2 Autoscaling Groups
Configuring Autoscaling Launch Configurations
Configuring CloudFormation Init Metadata
Configuring EC2 Autoscaling Security Groups
Configuring Autoscaling EC2 Instance Profiles
Configuring a Public Load Balancer
Configuring an Internal Load Balancer
Configuring DNS Records
Configuring the Relational Database Service
Configuring CloudWatch Log Groups
11) Deploying ECS Applications Using Ansible and CloudFormation
ECS System Resources
Understanding ECS Memory Allocation
Configuring ECS Task Definitions Part 1
Configuring ECS Task Definitions Part 2
Understanding ECS Service Deployment
Configuring ECS Services
Deploying the Microtrader Stack
Troubleshooting the Microtrader Application
12) Creating CloudFormation Custom Resources Using AWS Lambda
CloudFormation Custom Resources Overview
Creating a Lambda Function
Creating a Custom Resource
Creating a Custom Resources Project
Handling CloudFormation Requests
Validating Input Data
Integrating with the ECS Service
Polling ECS Task Status
Building Lambda Functions
Publishing Lambda Functions
Creating Lambda Functions in CloudFormation
Deploying CloudFormation Custom Resources
Handling Update and Delete Requests
Handling Long Running ECS Tasks
13) Managing Secrets in AWS
Introducing the EC2 Systems Manager
Secrets Management Solution Overview
Creating the Secrets Provisioner
Creating Secrets Using CloudFormation
Injecting Secrets at Container Startup
Consuming Secrets In CloudFormation
Configuring IAM Roles for Accessing Secrets
Deploying Secrets Using CloudFormation
14) Managing ECS Infrastructure Lifecycle
Understanding Auto Scaling Lifecycle Hooks
Creating a Lifecycle Hook Lambda Function
Configuring Lifecycle Hooks in CloudFormation
Configuring Auto Scaling Rolling Updates
Deploying and Testing Lifecycle Hooks
15) Auto Scaling ECS Applications
ECS Auto Scaling Challenges
Understanding ECS Resources
ECS Capacity Management
Scaling out ECS Clusters
Scaling in ECS Clusters
Auto Scaling Solution Overview
Understanding ECS Events
Creating a Capacity Manager Lambda Function
Calculating ECS Container Instance Capacity
Testing the ECS Capacity Manager
Publishing CloudWatch Custom Metrics
Creating CloudWatch Alarms
Creating EC2 Auto Scaling Policies
Managing ECS Capacity Using CloudFormation
EC2 Auto Scaling Using CloudFormation
Configuring ECS Auto Scaling
ECS Auto Scaling Using CloudFormation
16) Continuous Delivery Using CodePipeline
Solution Overview
Creating a CodeBuild Image
Adding CodeBuild Support for Build Actions
Creating a Pipeline
Creating an Application Version Artifact
Adding CodeBuild Support for Deploy Tasks
Creating Deployment Templates
Creating a Deployment Action
Ensuring Immutable Artifacts
Deploying to Production
Creating Pipelines in CloudFormation
Defining the Source Stage in CloudFormation
Defining the Build Stage in CloudFormation
Defining Deploy Stages in CloudFormation
Deploying a Pipeline Using CloudFormation
No comments:
Post a Comment