Test ECS on EC2 reliability with Gremlin. Simulate instance failures and process crashes to validate task rescheduling and health checks.
Choosing the EC2 launch type means you wanted control over the instances behind your tasks. That control comes with the responsibility for what happens when one of those instances fails, and ECS won't make that decision correctly on its own.
Task placement strategies, health check grace periods, and capacity provider settings interact in ways that look reasonable in the console and behave differently under pressure. A grace period tuned for a fast-starting service will mark a slow-starting one unhealthy and cycle it repeatedly. You typically discover this during a deploy that coincides with real traffic.
Regular testing surfaces these interactions while the stakes are low. It also gives you something more durable than confidence: a record of how your cluster behaved the last time an instance disappeared, and whether that behavior improved after you changed the configuration.
CPU scalability - Containers
Test that your service scales as expected when CPU capacity is limited. Gremlin will consume CPU in 3 stages: 50%, 75%, and 90%.
Host redundancy - Containers
Test resilience to container failures by shutting down a randomly selected container. Verify that your container runtime automatically restarts or replaces it.
Zone redundancy - Containers
Test your containerized service's availability when a randomly selected availability zone becomes unreachable. Verify that traffic fails over to containers in secondary zones.
Validate Container Resilience Mechanism: OOMKiller
Validate that your container runtime's OOMKiller detects excess memory usage and safely restarts the target pod or container.
* Gremlin is designed to work on any cloud platform that provides Linux or Windows hosts. We haven't individually tested every service we cover, and not all are officially supported. Check our compatibility documentation for tested operating systems and known caveats, or get in touch if you don't see yours.
Intelligent Health Checks - AWS
Automatically monitor your AWS services during testing in one-click with Intelligent Health Checks.
AWS integration
Integrate Gremlin with your AWS account for automatic Health Check creation, service discovery, and more.
Troubleshooting Failure Flags
Diagnose and resolve common issues with Failure Flags, Gremlin's application-based fault injection feature.
Using Failure Flags by proxy
Use Failure Flags, Gremlin's application-level fault injection feature, without changing a single line of code.
Reliability Intelligence: Spread load across replicas to reduce error spikes
Reduce error spikes during replica termination by spreading traffic more evenly across a larger number of pods.
Installing Gremlin on Amazon ECS
Learn how to install Gremlin on EC2-backed Amazon Elastic Container Service (ECS) deployments.
Installing Gremlin on AWS - Configuring your VPC
Amazon Web Services (AWS) has unique networking requirements that must be implemented for Gremlin to run successfully…
Amazon CloudWatch Health Check
Learn how to monitor the health of your systems during testing by using your existing AWS CloudWatch alarms.
Deploying Failure Flags on AWS ECS
This document will walk you through setting up Failure-Flags-Sidecar for your ECS Tasks. Failure-Flags-Sidecar runs…
Deploying Failure Flags on AWS Lambda
This document will walk you through setting up the Failure Flags agent for Lambda Functions. The Failure Flags agent…
Failure Flags
Gremlin Failure Flags lets you run Chaos Engineering experiments and reliability tests on serverless workloads…
Scenarios
A Scenario is a set of Health Checks and Gremlin experiments that you can define, along with a name, description…
Experiments
An experiment is a method of injecting failure into a system in a simple, safe, and secure way. Learn how easy it is to run experiments in Gremlin.
Targets
A target is any infrastructure or application resource that you can run experiments on. This can include Amazon EC…
Services
Gremlin tests your services to ensure they're resilient to traffic surges, network latency, cloud provider blackouts, and more. Learn how in our docs.
Configuring the Gremlin Agent
This documentation page shows you how to configure the Gremlin Agent. You can configure Gremlin using either environment…
Avoid downtime. Use Gremlin to turn failure into resilience.
Gremlin empowers you to proactively root out failure before it causes downtime. See how you can harness chaos to build resilient systems by requesting a demo of Gremlin.
