container management with amazon ecs
TRANSCRIPT
©2016, Amazon Web Services, Inc. or its affiliates. All rights reserved
Container Management with Amazon ECSSascha Möllering
Solutions Architect
AWS Global Infrastructure
13 Regions35 Availability Zones63 Edge Locations
Agenda
• Amazon EC2 Container Service• Amazon EC2 Container Registry• Common patterns• Demo
Amazon EC2 Container Service
Easily manage clusters for any scale
• Nothing to run• Complete state• Control and monitoring• Scale
Flexible container placement
• Applications• Batch jobs• Multiple schedulers
Designed for use with other AWS services
• Elastic Load Balancing• Amazon Elastic Block Store• Amazon Virtual Private
Cloud• AWS Identity and Access
Management (IAM)
Designed for use with other AWS services
• AWS CloudTrail• Auto Scaling• CloudWatch Logs
Extensible
• Comprehensive APIs• Open source agent• Custom schedulers
Amazon EC2 Container Registry
Fully managed
• Nothing to run• Control and monitoring• Scale
Secure
• IAM resource based policies• Transfer via HTTPS• Encryption at rest
Simplified Workflow
• Tight integration with Amazon ECS
• Use Docker CLI commands (e.g., push, pull, list, tag)
Highly Available
• Backed by Amazon S3• Images redundantly stored
across multiple facilities and multiple devices in each facility
Common Patterns
Pattern 1: Services and applications
• Simple to model• Micro services• Blue/green deployments
Pattern 2: Batch jobs
• Share resource pools• Ideal for bursty jobs• Spot instances
Amazon ECS Terminology
Amazon EC2 instances
Docker daemon
Amazon ECS agent
Key components: container instances
Regional
Resource pool
Grouping of container instances
Start empty, dynamically scalable
Key Components: Clusters
Key components: task definitions
Volume definitions
Container definitions
Unit of work
Grouping of related containers
Run on container instances
Key components: tasks
Key components: Run a task
Good for short-lived containers, e.g.
batch jobs
Key components: Create a service
Good for long-running applications
and services
Key components: Create a service
• Load balance traffic across containers• Automatically recover unhealthy containers• Auto Scaling• Discover services
Elastic Load Balancing
Key components: Update a service
• Scale up• Scale down
Elastic Load Balancing
Key components: Update a service
• Deploy a new version• Drain connections
Elastic Load Balancing
Typical user workflow
I want to run a service.
Typical user workflow
Run Instances
Amazon EC2
Use custom AMI with Docker support and
ECS agent. Instances register
with specified cluster.
Typical user workflow
Create Task DefinitionDeclare resource requirements for
containers
Typical user workflow
Create ServiceDeclare resource requirements for
service
X 5
Elastic Load Balancing
Typical user workflow
Describe Service
Demo
Summary
• ECS is a highly scalable container management service
• ECR is a fully-managed Docker container registry
• Designed for use with other AWS services
BERLIN