We ran performance tests of Consul on ECS to determine the resource usage of the sidecar containers Consul on ECS injects along with the ACL controller. The architecture page describes each Consul on ECS component in depth.
We used the following procedure to measure resource usage:
- Executed performance tests while deploying clusters of various sizes. We ensured that deployment conditions stressed Consul on ESC components.
- After each performance test session, we recorded resource usage for each component to determine worst-case scenario resource usage in a production environment.
- We used Fargate's minimum allowed CPU (256 shares) and memory settings (512 MB) on ECS during performance testing to demonstrate that Consul on ECS along with application containers can run on the smallest ECS tasks.
Here is the maximum resource usage we observed for each container:
|ACL Controller||5%||43 MB|
|Health Sync||6%||35 MB|
|Consul Client||10%||87 MB|
The containers added by Consul on ECS consume resources well below the minimum CPU and
memory limits for an ECS Task. Use the
cpu settings for the task definition
if additional resources are necessary for your application task.