AWS Container Services - ECS ECR with Fargate and EC2
- Description
- Curriculum
- FAQ
- Reviews
Elastic Container Registry (ECR)
-
Create ECR repository
-
Build Image, Push to the repository
-
Tag Images
-
Scanning Common Vulnerabilities and Exposures (CVEs) using CoreOS Clair project
-
Marking image for Immutability in ECR
Elastic Container Service (ECS) – Fully managed container orchestration service.
-
ECS cluster management with EC2 and Fargate provisioning
-
Integration of ECS with IAM
-
EC2 provisioning with On-Demand and spot instances
-
Using images from ECR
-
Scaling of ECR Cluster
-
Scaling of Services by increasing and decreasing tasks
-
Using Spot instance to optimize cost
-
Leverage capacity providers for cost optimization and High Availability
-
Leverage serverless option with Fargate
-
Deploy high available ECS cluster with task distributed across Availability Zones
-
Deploy ECS in custom created VPC
-
Setup AWS ENI Trunking
-
Integration with AWS App Mesh
-
Service Discovery with inbuild options
Cluster Management
-
Create and Manage ECS Clusters
-
Creating Task definition
-
Updating Task definition and create a newer version
-
Configure ECS cluster capacity providers
-
Monitoring cluster performance in Cloudwatch
Tasks Management
-
Creating and managing tasks
-
Creating scheduled tasks
-
Deploying tasks using various deployment and placement types
-
Bin packed and Availability zone distributed tasks
Service Management
-
Managing Services
-
Creating rolling and blue-green deployments
-
Leveraging service discovery using Route 53
-
1IntroductionVideo lesson
Welcome to AWS Container Services course
-
2Elastic Container Service IntroductionVideo lesson
Introduction to Elastic Container Service
Introducing features like Performance, Container service, Reliability, Serverless option - Fargate
Pay as you go model, High Scalability and High Availability
-
3ECS Component IntroductionVideo lesson
Introducing different components of Container service and Docker
Introducing Cluster - Orchestrator
Role played by Service, Task and Cluster
Compute provisioning by EC2 and Fargate
-
4ECS Cluster Quick StartVideo lesson
Quick start of Elastic Container Service
Using builtin Task definition
Creating Service
Using task in Service and creating complete stack using cloud formation
Verifying created service, task and cluster
Check the running task using public ip
Deleting the cluster
-
5AWS Regions and ZonesVideo lesson
Introduction to AWS Regions and Zones
Purpose of Regions and Zones
Leveraging Zones for High availability
Concept of task distribution across zones
-
6AWS BillingVideo lesson
Introduction to Free Tier
AWS Simple calculator usage
AWS Billing calculation methodology
Verifying billing in AWS Account
Setting billing alerts
-
7AWS IAM Users and Root UsersVideo lesson
Introduction to AWS Identity and Access Management (IAM)
Creating IAM Users and Groups
Setting user policies
Difference between root user and IAM Users
Login using IAM users
Reasons to protect root users
-
8Docker Introduction and its componentsVideo lesson
Different components of docker
Working of docker containers
Advantages of docker isolation
Lifecycle of docker container
Introduction to docker image, dockerfile, Repository and Registry
Role of docker and security groups
-
9AWS EC2 Docker installation and conceptsVideo lesson
Creating AWS EC2 Instances
Creating security groups
Generating private and public key in AWS
Login to EC2 Instance using Putty client
Installing required components for Docker
Creating docker group and starting docker daemon
Verifying docker installation
-
10Docker Image Container Registry Repository and lifecycleVideo lesson
Creating dockerfile
Building and verifying docker image
Creating a container using a docker image
Creating a docker image with php
Running multiple containers
Opening ports for containers in the security group
-
11AWS CLI Installation and ConfigurationVideo lesson
Verify AWS CLI Version
Installation of AWS CLI in Linux and Windows
Creating an access key and security key for the user
Making the access key active/inactive
Configure AWS CLI to use the security key
-
12Create Repository in ECRVideo lesson
Introduction to Elastic Container Registry (ECR)
Creating new Repository
Concepts of tagging in the repository
Setting options like Tag immutability and scan on push
Login and getting password for Elastic Container Registry (ECR)
Using ECR CLI
Describe repositories using CLI
-
13Pushing Image into ECRVideo lesson
Tagging image with Repository URI
Pushing image using docker push
Verify image vulnerabilities using image scan
Creating a custom image with change/new version
Tagging image using repository URI and tag
Pushing image with different tag
-
14ECR - Working using CLIVideo lesson
Exploring options in AWS ECR CLI
Creating a repository using CLI
Tagging and pushing an image to a repository
Describe images in a repository
List images within a repository
Triggering scan using AWS CLI
View / List vulnerabilities identified for an image
-
15Elastic Container Service Quick IntroductionVideo lesson
Elastic Container Service (ECS) high-level overview
Overview of the cluster creation process
Overview of cluster, service, task and cloud formation stack
Different compute options like EC2 and Fargate
-
16ECS Create New TaskVideo lesson
Create task using Fargate for Fargate provisioned cluster
Exploring various options while creating a task
Overview of ECSTaskExecution policy
Using task memory and task CPU (vCPU)
Adding container to tasks
Introduction to port mapping
Running the task anonymously
-
17ECS Create Cluster and Run TaskVideo lesson
Create a cluster using network only option
Use task definition and run the task
Setup VPC to run the task
Verify running task
-
18ECS Create new ServiceVideo lesson
Create new service for the cluster of type replica
Setup service security group
Verify the running task for service
-
19ECS Relation between Cluster Task and ServiceVideo lesson
The relation between cluster, service, and tasks
Create multiple tasks using Service
Terminate a task manually and test auto-creation of task
Verify deployments of Service
Relation of Running Counts and desired counts of tasks
Updating the service
Deleting the service
-
20ECS Service Daemon TypeVideo lesson
Introduction to Daemon Type Service
Starting Daemon Type service
Verify the service
-
21ECS Scheduled TaskVideo lesson
Create Scheduled Task
Configure schedule run type
Configure Cron expression
Configure schedule target
Verify the scheduled task
-
22Create Cluster with ECS InstancesVideo lesson
The concept of using EC2 as compute provisioning for the cluster
Trade-off between using EC2 and Fargate
Create a new cluster with on-demand EC2
Create a new VPC and configure the security group
Verify created ECS Instances
-
23Task definition and creationVideo lesson
Create a new task definition for ECS cluster
Overview of IAM roles, VPC, policy, etc.,
Running the task and verify with an external link
-
24Create and manage serviceVideo lesson
Create a new service for EC2 provisioned cluster
Verify the deployments for running and desired count of tasks
Verify the running tasks in services
-
25Enabling ENI TrunkingVideo lesson
Concept of EC2 Elastic Network Interface (ENI)
Functioning of ENI with EC2
Limitation of ENI while running containers
Need for ENI trunking in ECS Instances
Enabling ENI trunking as part of ECS account settings
-
26ECS Bridge networkingVideo lesson
Bridge networking overview
Limitation and how bridge networking works in Docker environment
ENI and port mapping as part of bridge networking
-
27AWSVPC Networking Concept and understandingVideo lesson
Overview of AWSVPC networking
Difference between AWSVPC and bridge networking
Need for AWSVPC networking in Docker environment
Mapping of ENI and ports in AWSVPC networking
The behavior of containers in AWSVPC networking distributed across multiple hosts
Comparing with overlay networking of Docker
-
28Setup cluster with AWSVPCVideo lesson
Create a cluster using AWSVPC
Creating a role and new VPC
Create a task and add a container for AWSVPC
-
29Creating service using AWSVPCVideo lesson
Detailed discussion on AWSVPC
Understand the purpose of the load balancer
Create a load balancer
Configure routing
Register targets
Use the load balancer and configure with VPC
Create multiple tasks for a service
Access tasks using a load balancer
-
30Updating Task in ServiceVideo lesson
Updating task definition by changing image
Using updated task version with service
Verify primary and active deployments
Validate working of rolling update
Discussion on registration delay, slow start duration, load balancing algorithm, and stickiness
-
31ECS Instance ScalingVideo lesson
Adding more capacity to the auto-scaling group
Discussion on desired capacity, minimum capacity and maximum capacity
Changing the desired capacity to change the ECS instance capacity
Verify deployments, discussion on the minimum and maximum health percentage
Reducing the capacity and discussion on placement/movement of task to other ECS Instances
-
32Spot Instance OverviewVideo lesson
Concept of spot instances in AWS EC2
Difference between spot instances and on-demand instances
Finding the right price to bid with spot instance
Checking the spot instance pricing history
-
33Create cluster using Spot InstanceVideo lesson
Create a cluster using spot instance
Difference between diversified and lowest bid spot instance allocation strategy
Verify spot instance fulfilled or not
-
34Stopping cluster when not in useVideo lesson
Stopping cluster by updating the desired capacity
Reason and advantages of stopping the cluster than deleting it
Verify whether instances got registered from the cluster
-
35Starting the clusterVideo lesson
Start the stopped cluster by changing the desired capacity number
Verifying the number of running tasks on the existing service after starting the cluster
Introduction to scaling policy and autoscaling
-
36ECS Cluster ScalingVideo lesson
Understand the concept of auto-scaling
Understand launch config
Setting the numbers like Maximum, Minimum, and Desired capacity
Setting the policy pair to increase and decrease the capacity
-
37ECS Instance Autoscaling Create PolicyVideo lesson
Creating autoscaling policy
Setting the scaleup policy
Create an alarm for policy
Understand the concept of consecutive period
Set the action to be taken on alarm trigger
Monitor the metrics
Verify the status of different alarm
-
38Executing Autoscaling PolicyVideo lesson
Test the policy by manually executing it
Verify the status of alarm after executing the alarm manually
Verify instance status as part of auto-scaling group
Check the activity history
-
39Autoscaling ServicesVideo lesson
Update service for autoscaling
Setting minimum, maximum and desired number of tasks for the service
Adding the policy pair to scale up and scale down
Setting target value, scaleout and in cooldown period
Creating alarm for ECS service metric
Setting scaling action with a cooldown period
Verify scaling actions for the service after a successful trigger of policy
-
40Service Discovery IntroductionVideo lesson
Concept of service discovery and service registry
Need for service discovery in a microservice environment
Advantage of having service discovery
-
41Task Setting Environment VariableVideo lesson
Understand environmental variable in containers
Setting the environment variable for sample MySQL task definition
Create a sample task and verify how environment variable is used
Connect to MySQL using public IP and verify
-
42MySQL Task Definition Register in Cloud MapVideo lesson
Create Service with service discovery integration
Create sample namespace for service discovery
Verify Route 53 hosted zone for namespace
-
43Wordpress Service DifinitionVideo lesson
Create a WordPress task definition using MySQL service name
Set environment variable for startup values
Open the ports to access WordPress
-
44Wordpress Service Install and TestingVideo lesson
Create service for using WordPress definition
Verify how WordPress using the environment variables
Access public IP and setup WordPress
Verify database on tables created by WordPress
-
45Wordpress Scaling and CleanupVideo lesson
Scaleup the task and realize the advantage of service discovery
Delete service and tasks created for demo
Clear namespace in Route 53 hosted zone
-
46Blue Green Deployment IntroductionVideo lesson
Overview of Blue-Green deployment
Need and advantage of Blue-Green deployment
Underlying working of Blue-Green deployment
-
47Blue Green Deployment Demo Part 1Video lesson
Create a task definition with multiple versions
Create a task and test task definition
Create Elastic Load Balancer (ELB) and configure routing
Register targets with ELB
Configure deployment type as Blue/Green
Overview of default configuration in Code Deploy
Overview of Deployments, Applications, Deployment configuration in Code Deploy
Change original revision termination duration in code deploy deployment configuration
Setup service role for code deploy
Configure target groups, listener port, and protocol
Review created tasks
-
48Blue Green Deployment Demo Part 2Video lesson
Update service with the new version
Verify the task deployment and code deploy application status
Overview of different deployment hooks
Monitor primary and active deployment status
Verify and monitor traffic shifting progress in deployment status
Confirm deployment at service events
-
49Blue Green Deployment Clean upVideo lesson
Delete and clean the resource created and Code deploy, IAM and ECS Task definitions
Delete the code deploy application, deployment groups
Delete ECS Service
Delete Elastic Load Balancer (ELB)
Verify and clean up EC2 security groups, Elastic IP and keys
External Links May Contain Affiliate Links read more