Amazon EC2
Container Service
Highly scalable, fast, container management service
Valentyn Nastenko from stopad.io
Container Use Cases
Distributed Applications and Microservices
Batch/Extract-Transform-Load Jobs
Continuous Integration and Continuous
Deployment
Features
Docker Compatibility
Managed Clusters
Task Definitions
Scheduling
Load Balancing
Monitoring and logging
Repository Support
Amazon EFS File System
Security
Amazon EC2 Container Registry (ECR)
Private Docker Repository
● V2 Docker Registry
● Highly Available
● IAM and AWS Auth integration
● Low latency push, pulls and inspection
● Simplified Workflow
Alternatives
● Dockerhub
● Docker Trusted Registry
● ECS Clusters
● Container Instances
● ECS Container Agent
● Task Definitions
● Services
● ECR Repositories
● AWS CloudTrail
● ECS CloudWatch
ECS Architecture
Amazon ECS Cluster Workflow
Amazon ECS Cluster
Task definitions
Task definitions are split into four basic
parts:
the task family
the IAM task role
container definitions
volumes.
The family is the name of the task, and
each family can have multiple revisions.
Task definitions limits
Changes to one component can impact all three components,
which may be a larger scope for the change than you want
Each component is more difficult to scale because you have to
scale every container proportionally
Task definitions can only have 10 container definitions and your
application stack might require more, either now or in the
future
Every container in a task definition must land on the same
container instance, which may limit your instance choices
to the largest sizes
Scheduling Containers
Batch Jobs
ECS task scheduler
Run task once
Batch jobs (fixed interval/cron)
RunTask (random)
StartTask (placed)
Long-Running Apps
ECS service scheduler
Health management
Scale-up and scale-down
AZ aware
Amazon ECS Batch jobs
Amazon ECS Service
Amazon ECS Service
Amazon ECS Service Update
Automatic Scaling
Amazon ECS Service Monitoring
ClusterName, ServiceName
CPUReservation
CPUUtilization
MemoryReservation
MemoryUtilization
● Amazon CloudWatch Alarms
● Amazon CloudWatch Logs
● Amazon CloudWatch Events
● AWS CloudTrail log monitoring
Application Load Balancers
Application Load Balancers
Amazon ECS CI and CD
ECS Command line interface
High-level commands to creating, updating, and monitoring clusters and tasks from a local development environment.
Supports Docker Compose, a popular open-source tool for defining and running multi-container applications.
Open source, binaries available for MacOs and Linux
Amazon ECS Service Limits and price
Price
There is no additional charge for Amazon EC2
Container Service.
You pay for AWS resources (e.g. EC2
instances or EBS volumes) you create to store
and run your application.
You only pay for what you use, as you use it;
there are no minimum fees and no upfront
commitments.
Thank you for
your attention
Please don’t ask too much :)

Amazon EC2 container service

  • 1.
    Amazon EC2 Container Service Highlyscalable, fast, container management service Valentyn Nastenko from stopad.io
  • 3.
    Container Use Cases DistributedApplications and Microservices Batch/Extract-Transform-Load Jobs Continuous Integration and Continuous Deployment
  • 4.
    Features Docker Compatibility Managed Clusters TaskDefinitions Scheduling Load Balancing Monitoring and logging Repository Support Amazon EFS File System Security
  • 5.
    Amazon EC2 ContainerRegistry (ECR) Private Docker Repository ● V2 Docker Registry ● Highly Available ● IAM and AWS Auth integration ● Low latency push, pulls and inspection ● Simplified Workflow Alternatives ● Dockerhub ● Docker Trusted Registry
  • 6.
    ● ECS Clusters ●Container Instances ● ECS Container Agent ● Task Definitions ● Services ● ECR Repositories ● AWS CloudTrail ● ECS CloudWatch ECS Architecture
  • 7.
  • 8.
  • 9.
    Task definitions Task definitionsare split into four basic parts: the task family the IAM task role container definitions volumes. The family is the name of the task, and each family can have multiple revisions.
  • 10.
    Task definitions limits Changesto one component can impact all three components, which may be a larger scope for the change than you want Each component is more difficult to scale because you have to scale every container proportionally Task definitions can only have 10 container definitions and your application stack might require more, either now or in the future Every container in a task definition must land on the same container instance, which may limit your instance choices to the largest sizes
  • 11.
    Scheduling Containers Batch Jobs ECStask scheduler Run task once Batch jobs (fixed interval/cron) RunTask (random) StartTask (placed) Long-Running Apps ECS service scheduler Health management Scale-up and scale-down AZ aware
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
    Amazon ECS ServiceMonitoring ClusterName, ServiceName CPUReservation CPUUtilization MemoryReservation MemoryUtilization ● Amazon CloudWatch Alarms ● Amazon CloudWatch Logs ● Amazon CloudWatch Events ● AWS CloudTrail log monitoring
  • 18.
  • 19.
  • 20.
  • 21.
    ECS Command lineinterface High-level commands to creating, updating, and monitoring clusters and tasks from a local development environment. Supports Docker Compose, a popular open-source tool for defining and running multi-container applications. Open source, binaries available for MacOs and Linux
  • 22.
    Amazon ECS ServiceLimits and price Price There is no additional charge for Amazon EC2 Container Service. You pay for AWS resources (e.g. EC2 instances or EBS volumes) you create to store and run your application. You only pay for what you use, as you use it; there are no minimum fees and no upfront commitments.
  • 23.
    Thank you for yourattention Please don’t ask too much :)