Cases3 cases
1 to 3 of 3
IL-0306A Neon pageserver's EC2 instance failed without warning and Postgres databases of 0.4% of us-east-1 projects stalledNeon2024- Symptoms
At 17:28 on 2024-08-14 the EC2 instance pageserver-7.us-east-1.aws.neon.tech stopped responding. Neon customer databases attached to that pageserver stalled whenever they needed to read data that was not already in their Postgres buffer cache.
- Trigger
The EC2 instance hosting pageserver-7 in us-east-1 failed without the advance warning AWS usually gives before a hardware failure.
- Root cause
- Component
- Contributing factor
- Detection
Several alerts fired at 17:38, in Slack and as automatic pages to the on-call engineers: the pageserver stopped answering metric scrapes, the control plane API error rate rose, and user operations such as starting endpoints and creating timelines got stuck.
- Remediation
- Migrated the 17037 projects on pageserver-7 to other pageservers in the region with a semi-manual script
- Brought back by hand about 20 projects whose in-flight operations blocked the migration
- Action items
- Move all paying customers onto the storage controller sooner than planned
- Finish moving the existing pageserver infrastructure under the storage controller
- Lessons
Neon's first control plane design, in which operations always run to completion, cannot drive a fast response to node failures at scale, because operations that depend on physical machines may never complete. A human decision in the loop and alerts with several minutes of delay made the response too slow; the storage controller, with its own heartbeats and automatic rescheduling, moves work off a failed pageserver in seconds.
IL-0370Render Postgres databases in Frankfurt were down up to 65 minutes as their disks stayed attached to a failed nodeRender2022- Symptoms
At 08:30 UTC on 23 May 2022, every user Postgres database on one node in Render's Frankfurt region went completely down after the node, supplied by Render's external cloud provider, had a hardware issue and failed its status check. The database instances could not start on a healthy node because their disks were still attached to the failed node.
- Trigger
A node supplied by Render's external cloud provider had a hardware issue and failed its status check at 08:30 UTC on 23 May 2022.
- Root cause
- Component
- Contributing factor
- Detection
An alert that fires when databases have been stuck in one state while starting up for at least 15 minutes paged the on-call engineer automatically at 08:57 UTC.
- Remediation
- Manually terminated the failed node at about 09:27 UTC so the disks could attach to healthy nodes
- Action items
- Create an alert that fires sooner than the current 15-minute startup alert
- Make it easier to identify the correct corrective action, and eventually automate it
- Review incident procedures so the status page reflects reliability accurately
- Build high availability for Postgres so a primary's node hardware failure causes minimal downtime
- Lessons
Hardware issues are rare but expected, so Render's mitigations aim at detecting them sooner and shortening the time to resolve them.
- Symptoms
The GLM-130B pretraining run on 96 nodes, started on 2022-05-06 at 04:00, was interrupted again and again by single nodes that broke down, lost connection or reported missing GPUs, and each time training had to be restarted from a saved step. On 2022-05-30 a restart got stuck in data loading because of a Lustre file system error, and the 2.3T text corpora could no longer be read.
- Trigger
Individual nodes of the 96-node allocation failed during training, through breakdowns, a lost connection, missing GPUs, a CPU error and an NVLink error, and on 2022-05-30 the Lustre file system that held the training corpus failed.
- Root cause
- Component
- Contributing factor
- –
- Detection
The Lustre error was found when a restart from global_step23200 stayed stuck in data loading.
- Remediation
- Restarted the training from the last saved step after each node failure
- Changed the checkpoint saving interval from 500 steps to 100 steps
- Switched the job to another node pool and restarted from step 15600
- Removed the suspected replacement node n30076 from step 16600, which did not change the speed
- Copied the 2.3T text corpora from a backup disk back to the Lustre file system, which took a few days
These 3 cases involve Database and Cloud block storage. 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 cause1
Hardware failure3 cases
- Component
- Contributing factor
- Organisation
IL-0306A Neon pageserver's EC2 instance failed without warning and Postgres databases of 0.4% of us-east-1 projects stalledNeon2024IL-0370Render Postgres databases in Frankfurt were down up to 65 minutes as their disks stayed attached to a failed nodeRender2022IL-0429GLM-130B training on 96 nodes kept stopping on node failures, and a Lustre error left the 2.3T corpus unreadable