Cases2 cases
1 to 2 of 2
IL-0220An overloaded AWS Transit Gateway dropped packets on 4 January 2021, and Slack's web tier saturated and went downSlack2021- Symptoms
During the Americas' morning of 4 January 2021, an external monitoring service paged Slack because error rates were creeping up. While the investigation was starting, Slack's own dashboarding and alerting service became unavailable, so responders had to work without their usual dashboards and alerts.
- Trigger
On the first working day after the holidays, Slack's traffic went from the quietest time of the year to one of its biggest days overnight, with cold client caches pulling more data than usual, and one of Slack's AWS Transit Gateways did not scale fast enough for it.
- Root cause
- Component
- Contributing factor
- Detection
An external monitoring service paged Slack when error rates started creeping up during the Americas' morning. AWS engineers were separately alerted to the packet drops by AWS's internal monitoring.
- Remediation
- Disabled automated downscaling of the web tier to keep serving capacity and allow investigation
- Cleared up the broken, partly provisioned instances that filled the autoscaling groups
- Repaired provision-service so new web tier instances could be provisioned and enter service
- AWS engineers increased the Transit Gateway capacity manually across all Availability Zones
- Action items
- AWS reviews its Transit Gateway scaling algorithms for large packet-per-second increases
- Request a preemptive upscaling of the Transit Gateways at the end of the next holiday season
- Run the dashboard service instances in the same VPC as their database to remove the Transit Gateway dependency
- Load test provision-service regularly
- Reevaluate health-checking and autoscaling configurations so they cannot overload provision-service again
- Lessons
Monitoring has to stay as independent as possible of the infrastructure it watches, or it fails when it is needed most. Here the dashboard and alerting services failed because they ran in a different VPC from their databases and so depended on the Transit Gateways. provision-service had been load tested before, but this event exceeded the earlier scale-ups.
IL-0222Google Cloud US regions had heavy packet loss and some went unreachable after the network control plane was descheduledGoogle Cloud2019- Symptoms
On Sunday 2 June 2019, with user impact beginning between 11:47 and 11:49 US/Pacific, Google Cloud projects in several US regions saw elevated packet loss from network congestion, and some regions became unreachable. Customers saw higher latency, intermittent errors and lost connectivity to instances in us-central1, us-east1, us-east4, us-west2, northamerica-northeast1 and southamerica-east1, while us-west1, Europe and Asia had no regional congestion.
- Trigger
At 11:45 US/Pacific a relatively rare type of datacenter maintenance event started in one physical location, and the automation that runs it descheduled logical clusters that also held network control plane jobs in other physical locations.
- Root cause
- Component
- Contributing factor
- Detection
Google engineers were alerted to the failure two minutes after it began and started the incident process used for the most serious production incidents. The first customer notice appeared on the status page at 12:53 US/Pacific.
- Remediation
- Lowered the priority of less critical network traffic classes to reduce congestion
- Halted the datacenter automation software responsible for the maintenance event
- Rescheduled the network control plane and its supporting infrastructure in each location
- Rebuilt and redistributed the lost network control plane configuration, rolling it out from 14:03
- Directed service traffic away from the affected regions
- Moved the Cloud VPN control plane in three regions out of its fail-safe state
- Action items
- Keep the maintenance automation off until safeguards stop it descheduling jobs in several physical locations at once
- Harden the cluster management software to reject such requests whatever their origin
- Reconfigure the network control plane to reject maintenance requests of the type involved
- Make the network control plane in each location persist its configuration
- Let the network stay in fail static mode longer when the control plane is lost
- Review, update and test emergency response tooling and procedures, including customer communication tooling, for such network failures
- Extend continuous disaster recovery testing to this and similarly catastrophic failures
These 2 cases involve Backbone network (WAN) and BGP routing. 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
Cloud provider outage1 case
- Contributing factor
- Organisation
Software defect1 case
- Contributing factor
- Organisation