IL-0169 Scaleway · 2024-01-24kubernetes
2024-01-24 23:48 CET, FR-PAR 리전의 Scaleway Kubernetes API 가 메모리 부족 상태에 빠졌다. 동시에 몰린 배포가 원인이었다. 이 API 는 노드 인증도 맡고 있었다. 그래서 API 가 쓰러지자 kubelet 이 lease 를 갱신하지 못했고, 노드는 NotReady 가 된 채 끝없이 재시도했다. 관리형 Kubernetes 서비스인 Kapsule 과 Kosmos 를 공유 환경과 전용 환경에서 쓰는 고객, 그리고 Cockpit 같은 일부 제품이 영향을 받았다.
Kubernetes 쪽에서 고장 난 구성 요소들이 보내는 요청이 API Gateway 로 몰려 부하가 크게 늘었다. API Gateway 는 응답 시간이 늘어 일부 요청이 타임아웃까지 갔지만 완전히 멈추지는 않았다. 과거 장애 뒤에 해 둔 설정 조정 덕분에 갑작스러운 요청 급증도 전보다 잘 견뎠다.
엔지니어들은 00:35 부터 00:40 사이 Kubernetes API 의 메모리 한도와 가비지 컬렉션 임계값을 올리고 주요 서비스의 복제본을 늘렸다. 00:43 에 API Gateway 요청이 빠르게 줄었고, 00:54 에 노드가 돌아오기 시작했다. 인스턴스 작업이 대량으로 밀려 있어 이를 지켜봤다. 01:03 에 레지스트리 캐시를 비우는 등 추가 조치를 하자 모든 FR-PAR 클러스터가 안정되기 시작했고, 01:13 에 Cockpit 지표가 다시 나타나며 완전히 복구됐다.
2024-01-24 23:48 CET, FR-PAR 리전에서 Kapsule 과 Kosmos 고객 클러스터의 일부 노드가 NotReady 로 바뀌었다. 같은 시각 API Gateway 로 들어오는 요청이 크게 치솟았다.
API Gateway 응답 시간이 늘어 일부 요청은 타임아웃까지 갔다. 노드는 컨트롤 플레인에 인증하지 못해 일시적으로 NotReady 상태가 됐고, 해당하는 클러스터에서는 자동 복구가 돌아 노드를 교체했다. Cockpit 같은 다른 제품도 영향을 받아 지표가 끊겼다가 01:13 에 다시 나타났다.
00:00:10 에 내부 에스컬레이션을 거쳐 당직 엔지니어가 장애를 맡았다. 00:00 부터 00:30 사이에 진단한 결과, Kubernetes API 의 메모리 부족이 원인으로 확인됐다.
원인 용량 한계
23:48 에 API Gateway 부하가 늘어난 것이 감지됐고, 00:00:10 에 내부 에스컬레이션을 거쳐 당직 엔지니어가 맡았다.
탄탄한 모니터링과 빠른 대응 체계가 중요하다. Kubernetes API 가 노드 인증까지 맡고 있어서 API 의 메모리 부족이 곧장 노드 NotReady 로 번졌다. Scaleway 는 이를 막으려고 로컬 인증 캐시와 노드 인증 개선을 계획했다.
같은 원인 · 공통 kubelet, 컨테이너 메모리 한도
IL-0071 작은 파일이 4만 개 넘게 든 단일 스테이지 이미지의 containerd 스냅샷이 쌓여 워커 노드의 inode 가 디스크보다 빠르게 소진되고 있었다Onkar Raghunath Shelke · 2026같은 원인 · 공통 kubelet
IL-0102 배포와 워커 오토스케일링 폭주가 겹치자 크기를 고정해 둔 CoreDNS 가 메모리 한도를 넘겨 재시작된 뒤 회복하지 못했고, Buildkite 사이트 전체가 약 30분 멈췄다.Buildkite · 2026같은 원인 · 공통 컨테이너 메모리 한도
같은 원인 · 공통 컨테이너 메모리 한도
IL-0044 kube-prometheus-stack 업그레이드 뒤 Prometheus 가 WAL 재생 중 메모리를 50Gi 넘게 써서 시작할 때마다 OOMKilled 로 죽었다Saifeddine Rajhi · 2024같은 원인 · 공통 컨테이너 메모리 한도
https://incidentlib-mcp.benchlet.com/mcpAPI 는 키가 필요 없습니다. MCP 서버는 search_incidents, get_incident, list_incidents, get_topic, vocab 도구를 내놓습니다. 사용법은 API 와 MCP.
같은 원인 · 공통 컨테이너 메모리 한도
IL-0016 네임스페이스와 규칙이 늘어 live 클러스터의 Prometheus 가 메모리 부족으로 OOMKilled 되며 플랫폼 모니터링이 끊겼다UK Ministry of Justice · 2023같은 원인 · 공통 컨테이너 메모리 한도
같은 원인 · 공통 컨테이너 메모리 한도
IL-0206 GKE 파드 안의 Consul 에이전트가 메모리 급증으로 거듭 OOM kill 되어 Rails 파드가 데이터베이스 복제본을 찾지 못했고, 모든 쿼리가 primary 로 몰려 GitLab.com 이 느려졌다.GitLab · 2022같은 원인 · 공통 컨테이너 메모리 한도
IL-0094 JupyterHub 클러스터에서 학생 파드가 노드의 CPU 와 메모리를 다 써서 자원 보장이 부족했던 코어 파드가 자원을 얻지 못했고, 허브 전체가 멈췄다.2i2c · 2020같은 원인 · 공통 컨테이너 메모리 한도
IL-0176 시계열 급증으로 호스트 메모리가 바닥나자 oom_score_adj 999 를 받은 Prometheus 컨테이너가 커널 OOM Killer 에게 먼저 죽어 CrashLoopBackOff 에 빠졌다.LINE · 2020같은 원인 · 공통 kubelet
IL-0026 메모리 제한이 없는 fluentd-sumologic 파드가 메모리를 다 써서 운영 쿠버네티스 노드 두 대에 이틀 연속 SystemOOM 이 났다Blue Matador · 2019같은 원인 · 공통 컨테이너 메모리 한도
IL-0002 빌더 파드가 노드 한 대에 몰리자 kubelet 이 기본 API QPS 한도에 막혀 파드 상태를 늦게 갱신했고, CI 빌드가 AWS IAM 자격 증명을 받지 못해 실패했다Zalando · 2019같은 원인 · 공통 kubelet
같은 원인 · 공통 컨테이너 메모리 한도