Cases2 cases
1 to 2 of 2
IL-0341Traffic between Cloudflare and AWS us-east-1 had high latency, packet loss and origin failures for almost four hoursCloudflare2025- Symptoms
From 16:27 UTC on 21 August 2025, users connecting to Cloudflare from servers in AWS us-east-1, or receiving connections from Cloudflare there, saw high latency, packet loss and failures to reach origins. Cloudflare's network team was alerted to internal congestion in Ashburn (IAD) at 16:44 UTC.
- Trigger
At about 16:27 UTC a single customer began sending many requests from AWS us-east-1 to Cloudflare for objects in Cloudflare's cache, doubling the total traffic from Cloudflare to AWS.
- Root cause
- Component
- Contributing factor
- Detection
Cloudflare's network team was alerted to internal congestion in Ashburn (IAD) at 16:44 UTC, and an incident was raised for customer impact at 17:45 UTC.
- Remediation
- Rate limited the single customer whose traffic caused the surge
- Took further traffic engineering actions that fully resolved the congestion
- Asked AWS to revert its BGP prefix withdrawals, which AWS finished at 20:07 UTC
- Action items
- Build a mechanism to deprioritise a customer's traffic when it congests the network enough to affect others
- Speed up the Data Center Interconnect upgrades to add network capacity
- Work with AWS so the two companies' BGP traffic engineering actions do not conflict
- Build a traffic management system that gives each customer a network resource budget and automates the manual actions used here
- Lessons
Cloudflare concludes that it must isolate customers better so that no single customer can take over shared network resources and degrade the platform for others, and that its network needs enough capacity to meet demand. It describes the outage as the result of insufficient network congestion management during an unusual high-traffic event.
IL-0284Workers KV failed 90.22% of requests in a third-party storage outage, breaking Access, WARP and many Cloudflare productsCloudflare2025- Symptoms
At 17:52 UTC on 12 June 2025, Cloudflare's WARP team saw registrations of new devices failing and declared an incident. Minutes later the Cloudflare Access team got an alert on a rapid rise in error rates, and Service Level Objectives for several other services fell below target. All of them shared one cause: Workers KV was unavailable.
- Trigger
Part of the storage infrastructure behind Workers KV is backed by a third-party cloud provider, and that provider had an outage. Workers KV could then no longer serve cold reads or writes from its central data store.
- Root cause
- Component
- Contributing factor
- Detection
The WARP team saw registrations of new devices failing at 17:52 UTC and declared an incident. At 18:05 the Access team received an alert on a rapid increase in error rates and Service Level Objective alerts fired across several teams; at 18:06 the incidents were combined once Workers KV unavailability was identified as the shared cause.
- Remediation
- Activated the Challenges and Turnstile kill switches so visitors were not blocked
- Degraded Gateway rules that referenced identity or device posture state to remove the Workers KV dependency
- Force-dropped Access identity and device posture requests to shed load on Workers KV
- Worked on a Workers KV release against an alternative backing datastore in case the storage stayed down
- Restored Access and Device Posture calls to Workers KV once the third-party service was back
- Action items
- Avoid singular dependencies on storage infrastructure that Cloudflare does not own
- Improve the ability to recover critical services, including Access, Gateway and WARP
- Add redundancy to Workers KV's storage infrastructure and remove the dependency on any single provider
- Make each affected product resilient to the loss of any single point of failure, third-party dependencies included
- Build tooling to re-enable namespaces progressively during storage incidents, so services come back without overloading Cloudflare's own infrastructure
- Lessons
Cloudflare holds itself responsible for its choice of dependencies and how it architects around them, even when a vendor failure was the trigger. Building many products on Workers KV normally makes them more robust than separate storage services would, but here the cascading failure of Workers KV made the outage worse and widened its blast radius.
These 2 cases involve BGP routing and CDN and edge network. kubegap audits a Kubernetes cluster for gaps like these, read-only, from Claude Code or Codex; its checks cite public reports like the ones in this library.
By root cause2
Capacity exhaustion1 case
- Contributing factor
- Organisation
Cloud provider outage1 case
- Component
- Contributing factor
- Organisation