Incident Library

IL-0470 Buildkite · 2026-05-28kubernetesawsobservability

알림 처리 워커가 모자라 Buildkite 알림 전달이 두 차례 늦어졌다

2026-05-28 에 Buildkite 의 알림 처리 인프라 일부가 용량이 모자라 알림 전달 지연이 늘었다. EKS 의 오토스케일링이 쓰는 Prometheus 의 저장 공간이 다 차서 큐가 쌓이는 동안 EKS 위의 워커 일부가 제대로 늘지 못했기 때문이다. 20:01 UTC 에 지연이 시작됐다. 팀은 내부 큐 지연 모니터링으로 이를 알아채고, 영향받은 워크로드를 EKS 에서 이전 인프라인 ECS 로 되돌리기 시작했다. 되돌아갈 ECS 서비스가 전체 부하를 바로 받을 준비가 되어 있지 않아서 엔지니어가 장애 중에 스케일링 설정과 워커 수를 손으로 조정했다. 대부분 고객의 지연은 21:00 UTC 에 풀렸다.

첫 회복 뒤에도 일부 워크로드는 EKS 에 남아 있었고, Prometheus 가 회복하자 다시 오토스케일링하고 있었다. 팀은 이 워크로드가 더는 트래픽을 받지 않는다고 잘못 판단했다. 인프라 설정을 다시 맞추는 동안, 짝이 되는 ECS 서비스가 다 늘어나기 전에 이 EKS 워크로드가 먼저 줄어들었다. 그래서 22:12 부터 22:40 UTC 까지 일부 고객에게 두 번째 지연이 생겼다. 팀은 롤백을 마저 끝내고 남은 ECS 서비스를 늘려 이 지연을 해소했다. 롤백 경로가 이런 상황을 다 다루지 못해 복구가 예상보다 오래 걸렸다.

심각도
–
영향 범위
Delayed Buildkite notifications (GitHub commit status, email, Slack and webhook) from 20:01 to about 21:00 UTC, and again from 22:12 to 22:40 UTC for a subset of customers; downstream CI, merge and deployment workflows that depend on the notifications were delayed
영향 사용자
A subset of Buildkite customers
지역
–
감지까지
–
복구까지
2h 39m

증상

2026-05-28 20:01 UTC 부터 알림 처리 워커가 모자라 Buildkite 의 알림 전달 지연이 늘었다. 내부 큐 지연 모니터링이 이를 잡았다.

늦어진 알림은 GitHub 커밋 상태, 이메일, Slack, 웹훅 알림이었다. 이 알림을 다른 CI 나 배포 시스템의 입력으로 쓰는 고객은 그 뒤의 CI, 병합, 배포 흐름까지 늦어졌다. 알림 종류, 재시도 동작, 연동 방식에 따라 영향이 더 길게 남은 고객도 있었다.

대부분 고객의 지연은 21:00 UTC 에 풀렸지만, 22:12 부터 22:40 UTC 까지 일부 고객에게 지연이 다시 나타났다.

팀은 처음에 영향받은 워크로드를 EKS 에서 이전의 ECS 인프라로 되돌렸다. 그러나 되돌아갈 ECS 서비스가 전체 부하를 바로 받을 준비가 되어 있지 않아 회복이 예상보다 늦었다.

공개 상태 페이지에는 20:20 UTC 에 일부 고객의 빌드와 작업 알림이 늦어지고 있어 조사 중이라는 공지가 처음 올라왔다.

증상 지연 시간 증가오토스케일러 오동작

원인

촉발
EKS 의 오토스케일링이 쓰는 Prometheus 서비스의 저장 공간이 다 찼다. 그래서 큐가 쌓이는 동안 EKS 위의 알림 처리 워커 일부가 제대로 늘지 못했다.

감지

팀은 내부 큐 지연 모니터링으로 장애를 알아챘다. 공개 상태 페이지에는 20:20 UTC 에 첫 공지가 올라왔다.

조치

후속 조치

교훈

Buildkite 는 롤백 경로가 이번 상황을 다 다루지 못해 복구가 예상보다 오래 걸렸다고 보았다. 알림 지연의 영향은 고객이 알림을 CI 와 배포 흐름에 어떻게 쓰는지에 따라 다르게 나타난다. Buildkite 는 공개 상태 페이지가 고객이 겪는 영향을 제때 분명하게 보여 주지 못했다고 밝혔다.

출처

관련 사례

내 클러스터에도 있는지 확인하기

kubegap 은 Claude Code 나 Codex 에서 쿠버네티스 클러스터를 읽기만 하며 이 사례와 같은 상태를 점검합니다. 이 사례의 구성 요소: Prometheus. 점검 항목의 근거는 이 사례 같은 공개 보고서입니다.

AI 도구와 스크립트용

API 는 키가 필요 없습니다. MCP 서버는 search_incidents, get_incident, list_incidents, get_topic, vocab 도구를 내놓습니다. 사용법은 API 와 MCP.