© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
ECS Deep Dive
Brent Langston
Sr Developer Advocate
AWS Container Services
C O N 4 0 2
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Agenda
Introduction to ECS
Basic core concepts
Dive Deep into New Features
GPU Pinning
Target Tracking Autoscaling
Daemon Scheduling
Service Discovery
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Related breakouts
CON201 – Orchestrating Containers on AWS
Liron Dor & Dima Breydo
CON303 – Mastering Amazon Elastic Container
Service for Kubernetes (Amazon EKS)
Kobi Biton
CON404 – From Code to a Running Container
Alexi Ledenev
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
At first there was
Amazon EC2
Then Docker!
EC2 Instance
Containers
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Containers have become the standard for how to ship and run your
application in the cloud
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Manually downloading and launching containers by hand is
inefficient and error prone
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“Make this easier for us!”
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“Now launch 10 copies of my
container distributed across three
availability zones and connect
them to this load balancer”
“Here is a cluster of EC2
instances to use to run my
applications”
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What we did with ECS in 2018
GPU Pinning
Service Discovery
Daemon Scheduling
CLI Supports Docker Compose V3
ECS Agent Signed for Security
Faster Launch Times
SSM Parameter Support
Configure shm-size and tmpfs
Docker Container Health Checks Task metric & metadata endpoint
App Mesh PreviewTarget Tracking Autoscaling
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What we did with ECS in 2018
GPU Pinning
Service Discovery
Daemon Scheduling
CLI Supports Docker Compose V3
ECS Agent Signed for Security
Faster Launch Times
SSM Parameter Support
Configure shm-size and tmpfs
Docker Container Health Checks Task metric & metadata endpoint
App Mesh PreviewTarget Tracking Autoscaling
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“Make this easier for us!”
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Deploy a task to each cluster instance.
- Especially useful for agents and collectors
Daemon Scheduling
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Daemon Scheduling
$ aws ecs register-task-definition --cli-input-json 
file://datadog-agent-ecs.json
$ aws ecs create-service --cluster $clustername 
--service-name datadog-agent 
--scheduling-strategy DAEMON 
--task-definition datadog-agent-task
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Daemon Scheduling
{ "service": {
"status": "ACTIVE",
"serviceRegistries": [],
"pendingCount": 0,
"launchType": "EC2",
"enableECSManagedTags": false,
"schedulingStrategy": "DAEMON",
"loadBalancers": [],
"placementConstraints": [],
"createdAt": 1550521548.054,
"desiredCount": 0,
"serviceName": "datadog-agent",
"clusterArn": "arn:aws:ecs:us-east-1:651426287273:cluster/tensorflow-test-ECSCluster-
1530L3VP5R7NZ",
"taskDefinition": "arn:aws:ecs:us-east-1:651426287273:task-definition/datadog-agent-
task:2",
"serviceArn": "arn:aws:ecs:us-east-1:651426287273:service/datadog-agent",
"propagateTags": "NONE",
"deploymentConfiguration": {
"maximumPercent": 100,
"minimumHealthyPercent": 0
},
… }
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
See more:
https://docs.aws.amazon.com/AmazonECS/latest
/developerguide/ecs_services.html
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“Make this easier for us!”
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Manage the upper and lower
thresholds so a service maintains a
target metric.
Target Tracking Autoscaling
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Target Tracking Autoscaling
aws application-autoscaling register-scalable-target 
--service-namespace ecs 
--scalable-dimension ecs:service:DesiredCount 
--resource-id service/${clustername}/ecsdemo-frontend 
--min-capacity 3 
--max-capacity 25
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Target Tracking Autoscaling
aws application-autoscaling put-scaling-policy --cli-input-json file:///tmp/config.json
$ cat /tmp/config.json
{
"PolicyName": "TrackOPSperTarget",
"ScalableDimension": "ecs:service:DesiredCount",
"ResourceId": "service/fargate-demo-ECSCluster-3VFR9DTPYPEV/ecsdemo-frontend",
"PolicyType": "TargetTrackingScaling",
"TargetTrackingScalingPolicyConfiguration": {
"TargetValue": 1000,
"PredefinedMetricSpecification": {
"PredefinedMetricType": "ALBRequestCountPerTarget",
"ResourceLabel": "app/farga-Publi-
1P01AEKLB79H/be8cf1d9425bd593/targetgroup/farga-Dummy-1CUKQO9JM0B4S/f5b2c922774fbf34"
}},
"ServiceNamespace": "ecs" }
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Target Tracking Autoscaling
$ while true; do ab -l -c 9 -t 60 $alb_url/ ; sleep 1; done
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Target Tracking Autoscaling
$ while true; do ab -l -c 9 -t 60 $alb_url/ ; sleep 1; done
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Target Tracking Autoscaling
2019-03-05 07:31:24 –0600 service ecsdemo-frontend has reached
a steady state.
2019-03-05 07:30:33 –0600 service ecsdemo-frontend registered
1 targets in target-group farga-Dummy-1CUKQO9JM0B4S
2019-03-05 07:29:07 –0600 service ecsdemo-frontend has started
1 tasks: task aa76481b-4b25-44b5-b493-a672ee5117a1.
2019-03-05 07:28:51 –0600 Message: Successfully set desired
count to 7. Change successfully fulfilled by ecs. Cause:
monitor alarm TargetTracking-service/fargate-demo-ECSCluster-
3VFR9DTPYPEV/ecsdemo-frontend-AlarmHigh-cc966fa8-06c6-4e74-
8b5b-ca9574f01a32 in state ALARM triggered policy
TrackOPSperTarget
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
https://github.com/brentley/ecs_target_tracking
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“Make this easier for us!”
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Auto manage HTTP and DNS
namespaces for ECS services
Service Discovery
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Service Discovery
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Service Discovery
$ ecs-cli compose --project-name ecsdemo-nodejs
service up 
--create-log-groups 
--private-dns-namespace service 
--enable-service-discovery 
--cluster-config fargate-demo 
--vpc $vpc
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Service Discovery
$ cat docker-compose.yml
version: '3'
services:
ecsdemo-frontend:
environment:
- NODEJS_URL=http://ecsdemo-nodejs.service:3000
…
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Demo using the workshop:
https://ecsworkshop.com/nodejs/backend/
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“Make this easier for us!”
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Request and Assign GPUs for ECS tasks
GPU Pinning
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
GPU Pinning
{"containerDefinitions": [
{ "logConfiguration": {...} },
"cpu": 1024,
"resourceRequirements": [ {
"type": "GPU",
"value": "1" } ],
"image": "brentley/tensorflow-gpu:latest",
"essential": true,
"name": "tensorflow-gpu"
} ],
"memory": "6144",
"family": "tensorflow-1-gpu",
"cpu": "1024",
"placementConstraints": []}
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
GPU Pinning
$ aws ecs register-task-definition --cli-input-json 
file://gpu-8-taskdef.json
$ aws ecs run-task --cluster $clustername 
--task-definition tensorflow-8-gpu
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
GPU Pinning
{ "tasks": [
{
"taskArn": "arn:aws:ecs:us-east-1:xxxxxxxxxxxx:task/d92a5dfc-eb27-4164-9c1e-774ce76c09a3",
...
"containers": [
{
"containerArn": "arn:aws:ecs:us-east-1:xxxxxxxxxxxx:container/bfeb5861-044e-4630-a893-d079a73ac9eb",
"taskArn": "arn:aws:ecs:us-east-1:xxxxxxxxxxxx:task/d92a5dfc-eb27-4164-9c1e-774ce76c09a3",
"name": "tensorflow-gpu",
"gpuIds": [
"GPU-17b47bc3-9714-d453-1a5d-1708c2f70343",
"GPU-3b5a4f55-3390-563b-b753-8b1b694ab912",
"GPU-5948b416-092f-29f6-ea77-f9980fc88e68",
"GPU-782cf655-c047-1adf-4369-327bcdb904c4",
"GPU-8e8330b6-ec47-7617-9853-c9c3ee2d364c",
"GPU-8f7b6c73-f179-126e-3528-3ee0efb13357",
"GPU-d162715b-e84e-d1c7-40ee-d388df900dc5",
"GPU-f4f81c16-31be-d200-9521-151b5b39346d"
],
"lastStatus": "PENDING",
"cpu": "1024",
"networkInterfaces": [] }]}]}
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Check out the demo:
https://github.com/brentley/tensorflow-
container
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Let's Review!
ECS makes orchestrating microservices easy. We are constantly
adding new features to keep your operational responsibility simple.
Daemon Scheduling – Ensure deployment matches instance count.
Target Tracking Autoscaling – We manage thresholds, you list target.
Service Discovery – Auto register service endpoints with Route53
GPU Pinning – Allocate GPUs like any other resource.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
See More:
Daemon Scheduling:
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_
services.html
Target Tracking Autoscaling:
https://github.com/brentley/ecs_target_tracking
Service Discovery:
https://ecsworkshop.com/nodejs/backend/
GPU Pinning:
https://github.com/brentley/tensorflow-container
Thank you!
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Brent Langston
@brentContained
http://bit.ly/2SJ6OSc

Deep Dive on Amazon Elastic Container Service (ECS) | AWS Summit Tel Aviv 2019

  • 1.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. ECS Deep Dive Brent Langston Sr Developer Advocate AWS Container Services C O N 4 0 2
  • 2.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Agenda Introduction to ECS Basic core concepts Dive Deep into New Features GPU Pinning Target Tracking Autoscaling Daemon Scheduling Service Discovery
  • 3.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Related breakouts CON201 – Orchestrating Containers on AWS Liron Dor & Dima Breydo CON303 – Mastering Amazon Elastic Container Service for Kubernetes (Amazon EKS) Kobi Biton CON404 – From Code to a Running Container Alexi Ledenev
  • 4.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. At first there was Amazon EC2 Then Docker! EC2 Instance Containers
  • 5.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Containers have become the standard for how to ship and run your application in the cloud
  • 6.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Manually downloading and launching containers by hand is inefficient and error prone
  • 7.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. “Make this easier for us!”
  • 8.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. “Now launch 10 copies of my container distributed across three availability zones and connect them to this load balancer” “Here is a cluster of EC2 instances to use to run my applications”
  • 9.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. What we did with ECS in 2018 GPU Pinning Service Discovery Daemon Scheduling CLI Supports Docker Compose V3 ECS Agent Signed for Security Faster Launch Times SSM Parameter Support Configure shm-size and tmpfs Docker Container Health Checks Task metric & metadata endpoint App Mesh PreviewTarget Tracking Autoscaling
  • 10.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. What we did with ECS in 2018 GPU Pinning Service Discovery Daemon Scheduling CLI Supports Docker Compose V3 ECS Agent Signed for Security Faster Launch Times SSM Parameter Support Configure shm-size and tmpfs Docker Container Health Checks Task metric & metadata endpoint App Mesh PreviewTarget Tracking Autoscaling
  • 11.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 12.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. “Make this easier for us!”
  • 13.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Deploy a task to each cluster instance. - Especially useful for agents and collectors Daemon Scheduling
  • 14.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Daemon Scheduling $ aws ecs register-task-definition --cli-input-json file://datadog-agent-ecs.json $ aws ecs create-service --cluster $clustername --service-name datadog-agent --scheduling-strategy DAEMON --task-definition datadog-agent-task
  • 15.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Daemon Scheduling { "service": { "status": "ACTIVE", "serviceRegistries": [], "pendingCount": 0, "launchType": "EC2", "enableECSManagedTags": false, "schedulingStrategy": "DAEMON", "loadBalancers": [], "placementConstraints": [], "createdAt": 1550521548.054, "desiredCount": 0, "serviceName": "datadog-agent", "clusterArn": "arn:aws:ecs:us-east-1:651426287273:cluster/tensorflow-test-ECSCluster- 1530L3VP5R7NZ", "taskDefinition": "arn:aws:ecs:us-east-1:651426287273:task-definition/datadog-agent- task:2", "serviceArn": "arn:aws:ecs:us-east-1:651426287273:service/datadog-agent", "propagateTags": "NONE", "deploymentConfiguration": { "maximumPercent": 100, "minimumHealthyPercent": 0 }, … }
  • 16.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. See more: https://docs.aws.amazon.com/AmazonECS/latest /developerguide/ecs_services.html
  • 17.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 18.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. “Make this easier for us!”
  • 19.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Manage the upper and lower thresholds so a service maintains a target metric. Target Tracking Autoscaling
  • 20.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Target Tracking Autoscaling aws application-autoscaling register-scalable-target --service-namespace ecs --scalable-dimension ecs:service:DesiredCount --resource-id service/${clustername}/ecsdemo-frontend --min-capacity 3 --max-capacity 25
  • 21.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Target Tracking Autoscaling aws application-autoscaling put-scaling-policy --cli-input-json file:///tmp/config.json $ cat /tmp/config.json { "PolicyName": "TrackOPSperTarget", "ScalableDimension": "ecs:service:DesiredCount", "ResourceId": "service/fargate-demo-ECSCluster-3VFR9DTPYPEV/ecsdemo-frontend", "PolicyType": "TargetTrackingScaling", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 1000, "PredefinedMetricSpecification": { "PredefinedMetricType": "ALBRequestCountPerTarget", "ResourceLabel": "app/farga-Publi- 1P01AEKLB79H/be8cf1d9425bd593/targetgroup/farga-Dummy-1CUKQO9JM0B4S/f5b2c922774fbf34" }}, "ServiceNamespace": "ecs" }
  • 22.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Target Tracking Autoscaling $ while true; do ab -l -c 9 -t 60 $alb_url/ ; sleep 1; done
  • 23.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Target Tracking Autoscaling $ while true; do ab -l -c 9 -t 60 $alb_url/ ; sleep 1; done
  • 24.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Target Tracking Autoscaling 2019-03-05 07:31:24 –0600 service ecsdemo-frontend has reached a steady state. 2019-03-05 07:30:33 –0600 service ecsdemo-frontend registered 1 targets in target-group farga-Dummy-1CUKQO9JM0B4S 2019-03-05 07:29:07 –0600 service ecsdemo-frontend has started 1 tasks: task aa76481b-4b25-44b5-b493-a672ee5117a1. 2019-03-05 07:28:51 –0600 Message: Successfully set desired count to 7. Change successfully fulfilled by ecs. Cause: monitor alarm TargetTracking-service/fargate-demo-ECSCluster- 3VFR9DTPYPEV/ecsdemo-frontend-AlarmHigh-cc966fa8-06c6-4e74- 8b5b-ca9574f01a32 in state ALARM triggered policy TrackOPSperTarget
  • 25.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. https://github.com/brentley/ecs_target_tracking
  • 26.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 27.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. “Make this easier for us!”
  • 28.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Auto manage HTTP and DNS namespaces for ECS services Service Discovery
  • 29.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Service Discovery
  • 30.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Service Discovery $ ecs-cli compose --project-name ecsdemo-nodejs service up --create-log-groups --private-dns-namespace service --enable-service-discovery --cluster-config fargate-demo --vpc $vpc
  • 31.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Service Discovery $ cat docker-compose.yml version: '3' services: ecsdemo-frontend: environment: - NODEJS_URL=http://ecsdemo-nodejs.service:3000 …
  • 32.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Demo using the workshop: https://ecsworkshop.com/nodejs/backend/
  • 33.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved.
  • 34.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. “Make this easier for us!”
  • 35.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Request and Assign GPUs for ECS tasks GPU Pinning
  • 36.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. GPU Pinning {"containerDefinitions": [ { "logConfiguration": {...} }, "cpu": 1024, "resourceRequirements": [ { "type": "GPU", "value": "1" } ], "image": "brentley/tensorflow-gpu:latest", "essential": true, "name": "tensorflow-gpu" } ], "memory": "6144", "family": "tensorflow-1-gpu", "cpu": "1024", "placementConstraints": []}
  • 37.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. GPU Pinning $ aws ecs register-task-definition --cli-input-json file://gpu-8-taskdef.json $ aws ecs run-task --cluster $clustername --task-definition tensorflow-8-gpu
  • 38.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. GPU Pinning { "tasks": [ { "taskArn": "arn:aws:ecs:us-east-1:xxxxxxxxxxxx:task/d92a5dfc-eb27-4164-9c1e-774ce76c09a3", ... "containers": [ { "containerArn": "arn:aws:ecs:us-east-1:xxxxxxxxxxxx:container/bfeb5861-044e-4630-a893-d079a73ac9eb", "taskArn": "arn:aws:ecs:us-east-1:xxxxxxxxxxxx:task/d92a5dfc-eb27-4164-9c1e-774ce76c09a3", "name": "tensorflow-gpu", "gpuIds": [ "GPU-17b47bc3-9714-d453-1a5d-1708c2f70343", "GPU-3b5a4f55-3390-563b-b753-8b1b694ab912", "GPU-5948b416-092f-29f6-ea77-f9980fc88e68", "GPU-782cf655-c047-1adf-4369-327bcdb904c4", "GPU-8e8330b6-ec47-7617-9853-c9c3ee2d364c", "GPU-8f7b6c73-f179-126e-3528-3ee0efb13357", "GPU-d162715b-e84e-d1c7-40ee-d388df900dc5", "GPU-f4f81c16-31be-d200-9521-151b5b39346d" ], "lastStatus": "PENDING", "cpu": "1024", "networkInterfaces": [] }]}]}
  • 39.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Check out the demo: https://github.com/brentley/tensorflow- container
  • 40.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. Let's Review! ECS makes orchestrating microservices easy. We are constantly adding new features to keep your operational responsibility simple. Daemon Scheduling – Ensure deployment matches instance count. Target Tracking Autoscaling – We manage thresholds, you list target. Service Discovery – Auto register service endpoints with Route53 GPU Pinning – Allocate GPUs like any other resource.
  • 41.
    © 2019, AmazonWeb Services, Inc. or its affiliates. All rights reserved. See More: Daemon Scheduling: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_ services.html Target Tracking Autoscaling: https://github.com/brentley/ecs_target_tracking Service Discovery: https://ecsworkshop.com/nodejs/backend/ GPU Pinning: https://github.com/brentley/tensorflow-container
  • 42.
    Thank you! © 2019,Amazon Web Services, Inc. or its affiliates. All rights reserved. Brent Langston @brentContained http://bit.ly/2SJ6OSc