aws / aws/containers-roadmap

ECS Agent Optimization : Reduce CPU usage in event of multiple ecs tasks placements

Open
#1,234 4 comments 0 reactions 0 assignees View on GitHub
ECS
Dominant language
Shell
Stars
5.4k
Forks
334
PR merge metrics
No merged PRs in 30d

Description

### Summary
When you have an environment where you have 60+ containers per nodes ( let say 2 nodes with 120 tasks). And let say you have a t3.2xlarge (or t3.large). If they died (force shutdown). New nodes have high CPU due to too many concurrent dockerd process going on..

### Description

If you need to replace a node (due to an unexpected failure) or replacement. Let say you had 2 more nodes Available that were empty. The new nodes are just maxing out on CPU / Memory (during docker untar unpigz.)

Is there an option to limit how many concurrent 'Docker creation process' is being launched?

Ie: On a 8CPU we might want to limit to 4 Docker Pull/Extract/Up at a time to ensure not to impact other Docker containers.

If such feature doesn't exists, could we get a Ecs-Agent Configuration to tell how much concurrent maxinum is allowed on a node? and default would be (number of cpu's? or maybe 3/4 of the total available CPU's)

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the ECS Agent configuration and the Docker pull, extract, and creation work described in the issue. The goal is a configurable per-node concurrency limit for these operations, with a documented default or CPU-based behavior; the issue does not name specific files or tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker
Domain
infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.