Incident Library
  • Root cause
  • Component
  • Symptom
  • Contributing factor
  • Case

Cases12 cases

9 to 12 of 12

  1. Symptoms

    At 09:20 CET on 13 October 2021, during a planned change on a router, IPv4 traffic across OVHcloud's whole network stopped being routed, while all IPv6 traffic stayed reachable. The team detected a problem with the router's performance at 09:21 CET and escalated at once.

    Trigger

    A planned change to a router in the Vint Hill datacentre in the United States, meant to strengthen anti-DDoS protection, included a command to regulate the redistribution of BGP into OSPF, and the router did not interpret that command correctly.

    Root cause
    Component
    Contributing factor
    Detection

    At 09:21 CET the team detected a problem with the router's performance and started the escalation process.

    Remediation
    • Disconnected the optical equipment to isolate the router's connectivity
    • Powered off the faulty router
    • Stabilised connectivity to restore the remaining services
    Action items
    • Re-evaluate the change procedure for this type of equipment, which applies the command line natively
    • Strengthen the related change process
  2. 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
  3. Symptoms

    On 30 January 2017, Google Compute Engine instances, Cloud VPN tunnels and GCE network load balancers that were created or live migrated between 10:36 and 12:42 PDT could not be reached on their public IP addresses. Resources created earlier, and instances that were not live migrated, kept working.

    Trigger

    A large set of updates was applied to a rarely used load balancing configuration on the shared layer 2 load balancers.

    Root cause
    Component
    Contributing factor
    Remediation
    • Restarted the jobs that program changes into the network load balancers, so the stuck changes were processed as a batch
    • Applied the fix zone by zone between 11:36 and 12:42
    Action items
    • Increase the canary timeout so updates that hit the inefficient code path only slow network changes instead of stopping them
    • Improve the inefficient code path
    • Write new tests that check behaviour on a wider range of configurations
    • Accelerate replacing global propagation of address configuration with decentralized routing
    • Add metrics and alerting that identify this kind of issue sooner
  4. Symptoms

    From 12:47 AM PDT on 21 April 2011, a subset of Amazon EBS volumes in one Availability Zone of the US East Region could no longer serve reads or writes, and EC2 instances that tried to use them got stuck as well. AWS called these "stuck" volumes. EBS API calls across the whole US East Region also returned high error rates and latencies during two periods on the first day.

    Trigger

    During a routine network change to upgrade the capacity of the primary EBS network in one Availability Zone, traffic was to be shifted off one of the redundant routers. The shift was executed incorrectly and sent the traffic onto the lower-capacity replication network instead of the other primary router, which could not carry it.

    Root cause
    Component
    Contributing factor
    Remediation
    • Rolled back the incorrect traffic shift, which restored network connectivity
    • Disabled all new Create Volume requests in the affected Availability Zone at 2:40 AM PDT
    • Disabled all communication between the degraded EBS cluster and the EBS control plane from 8:20 AM PDT
    • Stopped EBS servers in the degraded cluster from futilely contacting other servers for free space
    • Changed the EBS control plane so new EBS-backed instance launches stopped failing
    • Moved spare server capacity physically from across the US East Region into the degraded cluster
    • Adjusted the negotiation throttles so the new servers could join without flooding the old ones
    • Built a separate EBS control plane partitioned to the affected zone and finer-grained throttles, then processed the backlog
    • Restored the remaining volumes from S3 snapshots taken early in the event
    • Restored volumes on failed machines that had no snapshot after forensic work
    • Intervened by hand on the RDS multi-AZ instances that did not fail over automatically
    Action items
    • Audit the change process and add automation to prevent the traffic shift mistake
    • Change capacity planning and alarming to keep the extra safety capacity needed for large recovery events
    • Change the retry logic in EBS nodes to back off harder and reconnect to previous replicas instead of searching for new nodes
    • Test and deploy the fix for the race condition that crashed EBS nodes
    • Fix the RDS bug that kept multi-AZ instances from failing over automatically
    • Improve the EBS control plane timeout logic to prevent thread exhaustion when one zone's cluster is slow
    • Make the EBS control plane aware of Availability Zones so it sheds load when over capacity
    • Move more EBS control plane functions into per-cluster services that run in the same zone as the cluster
    • Offer multiple Availability Zones to Amazon VPC customers
    • Provide better tools for building multi-AZ applications that survive the loss of a zone
    • Host free webinars and publish whitepapers on fault-tolerant architecture
    • Build the fine-grained control and throttling used in recovery into the EBS nodes and automate the recovery models
    • Look at changes that keep volumes working while a cluster is degraded, including the ability to take a snapshot of a stuck volume
    • Send more frequent and detailed customer updates and staff developer support more widely during events
    • Develop tools that show through the APIs whether instances are impaired
    Lessons

    AWS writes that with more spare capacity the cluster would have absorbed the re-mirroring requests without a storm, and that it now understands how much capacity large recovery events need. The event also showed that the EBS control plane let a failure in one Availability Zone affect the others, so more work is needed to make zones behave as if completely independent. AWS adds that some customers had critical components in a single zone, and that multi-AZ deployments need to become easier to design and run.

Check your cluster for this

These 12 cases involve BGP routing and Network control plane (SDN). 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 cause5

Capacity exhaustion1 case

Organisation
  1. IL-0350 Hosts in an IONOS TXL cluster lost connectivity when an InfiniBand fabric resweep failed on a full multicast table

Operator error2 cases

  1. IL-0349 IONOS Private Cloud in Berlin lost management access, storage and VM internet routing after a VLAN change
  2. IL-0337 EBS volumes in one US East Availability Zone got stuck after a network change cut EBS nodes off from their replicas

Software defect5 cases

  1. IL-0347 About 25% of Scaleway FR-PAR-1 hypervisors lost VPC connectivity when both VPC BGP route reflectors got stuck
  2. IL-0529 New Google Cloud VMs and other instances came up without network connectivity in all zones after VPC controllers stopped
  3. IL-0342 DigitalOcean's AMS3, LON1 and SFO2 data centers lost Internet connectivity in repeated waves as edge routers failed
  4. IL-0222 Google Cloud US regions had heavy packet loss and some went unreachable after the network control plane was descheduled
  5. IL-0396 New or live-migrated GCE instances, VPN tunnels and network load balancers were unreachable on public IPs for over 2h

Faulty deployment1 case

Organisation
  1. IL-0530 Virtual router controllers in us-central1 ran out of memory in a loop, cutting networking for new and migrated VMs

Configuration change3 cases

  1. IL-0225 An IGP purge command made every Microsoft WAN router recompute routes, causing global latency, timeouts and packet loss
  2. IL-0539 KT's internet service failed nationwide for about 89 minutes as wrong routes spread from one router in Busan
    KT2021
  3. IL-0228 IPv4 routing across OVHcloud's global network broke after a router change put the full internet routing table into OSPF