Root cause
AWS runs (at least) two networks: the main network your workloads live on, and an internal network hosting foundational control-plane services, DNS, and - crucially - AWS's own monitoring. At 7:30 AM PST, an automated activity to scale one of the internal services triggered unexpected behavior in a large number of clients, which began aggressively retrying connections. The wave of retries overwhelmed the devices connecting the two networks, and previously untested queueing behavior on those devices made latency worse the more the network struggled.
The failure loop was self-sustaining: congestion caused failures, failures caused retries, retries caused congestion. And because AWS's operators observe AWS through systems on the affected network, the people fixing the outage were doing so with degraded dashboards - one reason public status updates lagged so badly that day.
Business impact
The data plane mostly held: already-running EC2 instances, load balancers, and S3 kept serving. What died was the ability to change anything - consoles, APIs, autoscaling, container launches, and the queue/event fabric (SQS, EventBridge) that glues serverless architectures together. Downstream, the outage reached consumer names (Ring, Roomba, Disney+, delivery logistics at Amazon itself) and thousands of SaaS products. If your incident response required launching new instances or rotating credentials via STS, you were stuck watching.
Prevention and lessons
- Static stability is the goal. Architectures that keep working when the control plane is unavailable - pre-provisioned capacity, no launch-time dependencies, cached credentials - rode this event out. Our DR checklist includes a control-plane-outage drill for exactly this failure class.
- Don't put your observability inside the blast radius. AWS's monitoring lived on the failing network; yours probably lives in the failing region. External synthetic checks (or a second region) are cheap insurance - this is also why our status page probes from outside.
- Retry like a good citizen. Unbounded client retries turned a scaling hiccup into a seven-hour event. Backoff with jitter and retry budgets protect both you and the shared infrastructure.
- Us-east-1 concentration risk, again. The event impaired global features homed in us-east-1 (STS global endpoint, console sign-in). Regionalize your dependencies where AWS offers the choice - see Multi-AZ vs Multi-Region.