IL-0099 2i2c · 2025-05-12kubernetes
2025년 5월 12일 2i2c 가 운영하는 Earthscope 허브에서 워크숍과 단기 강좌 도중 사용자 서버 시작이 15분을 넘고 커널이 죽었다. 약 30명이 듣는 강좌와 허브를 쓰던 다른 강사들이 영향을 받았다.
워크숍이 쓰던 예전 프로필 옵션은 32GB 노드에서 메모리를 8GB 보장했지만 상한을 두지 않아 메모리 오버커밋이 컸다. 한 사용자의 메모리 사용이 보장량을 넘어 치솟으면 같은 노드를 쓰는 다른 사용자의 파드가 축출돼 커널이 죽었다.
첫날 밤 helm 롤아웃과 허브 재배포로 조금 나아졌지만 문제는 남았다. 다음 날 원인을 찾은 엔지니어들은 워크숍 직전에 사용자 프로필의 노드 공유 비율과 상한을 바꾸지 않기로 했다. 대신 medium 프로필을 열고 보장량을 올려 오버커밋을 줄였고, 노드 15개를 미리 띄워 30명 워크숍을 치렀다. 5월 14일에는 작은 노드용 프로필의 메모리 보장량과 상한을 같게 맞추는 변경을 배포했고, 그날 워크숍은 문제없이 끝났다.
2025년 5월 12일 20:15 EEST 에 Freshdesk 지원 티켓이 들어왔다. 워크숍 중 사용자 서버가 시작하는 데 15분 넘게 걸리고 커널이 죽는다는 내용이었다. 같은 허브를 다른 용도로 쓰던 강사들도 영향을 받았다.
20:59 에는 약 30명이 듣는 단기 강좌에서 허브에 큰 문제가 있다는 보고가 따로 들어왔다. 21:05 에 엔지니어가 helm 롤아웃과 허브 재배포를 하자 상황이 나아지는 듯했다. 하지만 21:59 에 커뮤니티는 서버는 다시 뜨지만 여전히 멈춘다고 알렸고, 22:00 에 엔지니어는 문제가 계속된다며 tornado.web.HTTPError: HTTP 404: Not Found (Kernel does not exist 오류를 보고했다.
두 번째 엔지니어가 로그를 살폈지만 뚜렷한 이상을 찾지 못했고, 허브 자체가 아니라 자원 고갈 문제라고 결론을 내렸다. Grafana 의 클러스터 정보 대시보드에서는 허브가 돌던 코어 노드의 CPU 사용률이 높았다.
원인은 다음 날 14:30 에 찾았다. 워크숍이 쓰던 예전 프로필 옵션은 32GB 노드에서 메모리를 8GB 보장했지만 상한은 두지 않았다. 사용자가 보장량보다 꾸준히 더 쓰면 다른 사용자의 커널이 죽었다.
증상 파드 축출
원인 용량 한계
커뮤니티가 Freshdesk 지원 티켓으로 알렸다. 티켓은 20:15 에 열렸고 20:49 에 #support-freshdesk 슬랙 채널로 팀에 전달됐으며, 20:57 에 첫 엔지니어가 확인했다.
메모리 상한 없이 보장량만 둔 프로필에서는 노드를 나눠 쓰는 사용자끼리 서로를 축출할 수 있다. 메모리 보장량과 상한을 같게 두면 한 사용자의 메모리 급증이 같은 노드의 다른 사용자에게 번지지 않는다. 이번에는 로그에 뚜렷한 오류가 없었고 원인은 프로필 설정에 있었다. 워크숍 직전에는 프로필 구조를 바꾸지 않고 노드를 미리 띄우는 쪽으로 대응했다.
IL-0102 배포와 워커 오토스케일링 폭주가 겹치자 크기를 고정해 둔 CoreDNS 가 메모리 한도를 넘겨 재시작된 뒤 회복하지 못했고, Buildkite 사이트 전체가 약 30분 멈췄다.Buildkite · 2026같은 원인 · 공통 노드 풀, 컨테이너 메모리 한도
같은 원인 · 공통 노드 풀, 컨테이너 메모리 한도
IL-0016 네임스페이스와 규칙이 늘어 live 클러스터의 Prometheus 가 메모리 부족으로 OOMKilled 되며 플랫폼 모니터링이 끊겼다UK Ministry of Justice · 2023같은 원인 · 공통 노드 풀, 컨테이너 메모리 한도
IL-0094 JupyterHub 클러스터에서 학생 파드가 노드의 CPU 와 메모리를 다 써서 자원 보장이 부족했던 코어 파드가 자원을 얻지 못했고, 허브 전체가 멈췄다.2i2c · 2020같은 원인 · 공통 노드 풀, 컨테이너 메모리 한도
IL-0155 NYC1 의 일부 DOKS 클러스터에서 공유 CPU 노드 위의 CoreDNS 때문에 DNS 가 간헐적으로 실패하고 NodeNotReady 가 났다DigitalOcean · 2026같은 원인 · 공통 노드 풀
https://incidentlib-mcp.benchlet.com/mcpAPI 는 키가 필요 없습니다. MCP 서버는 search_incidents, get_incident, list_incidents, get_topic, vocab 도구를 내놓습니다. 사용법은 API 와 MCP.
같은 원인 · 공통 노드 풀
IL-0082 EKS 노드 교체 중 CoreDNS 파드 하나가 종료되자 남은 CoreDNS 파드가 늘어난 부하를 버티지 못해 DNS 조회가 느려지고 타임아웃이 났다.RebelMouse · 2025같은 원인 · 공통 노드 풀
IL-0044 kube-prometheus-stack 업그레이드 뒤 Prometheus 가 WAL 재생 중 메모리를 50Gi 넘게 써서 시작할 때마다 OOMKilled 로 죽었다Saifeddine Rajhi · 2024같은 원인 · 공통 컨테이너 메모리 한도
IL-0110 Grafana Agent 파드가 메모리를 많이 쓰던 노드에 Hangfire 파드가 함께 올라가 시스템 OOM 으로 CrashLoopBackOff 를 반복했고, 노드가 응답을 멈추고 NotReady 가 됐다.DFDS · 2024같은 원인 · 공통 컨테이너 메모리 한도
IL-0169 FR-PAR 의 Scaleway Kubernetes API 가 메모리 부족으로 쓰러져 노드 인증이 막히고 Kapsule 노드가 NotReady 가 됐다.Scaleway · 2024같은 원인 · 공통 컨테이너 메모리 한도
같은 원인 · 공통 컨테이너 메모리 한도
IL-0070 dask-gateway로 워커를 대량으로 띄우자 노드가 1분 만에 100대 늘었고, Prometheus가 메모리를 거의 다 쓰던 코어 노드에서 hub 파드를 비롯한 중요한 파드들이 축출되거나 재시작됐다2i2c · 2023같은 원인 · 공통 노드 풀
IL-0206 GKE 파드 안의 Consul 에이전트가 메모리 급증으로 거듭 OOM kill 되어 Rails 파드가 데이터베이스 복제본을 찾지 못했고, 모든 쿼리가 primary 로 몰려 GitLab.com 이 느려졌다.GitLab · 2022같은 원인 · 공통 컨테이너 메모리 한도
같은 원인 · 공통 노드 풀
같은 원인 · 공통 노드 풀
IL-0026 메모리 제한이 없는 fluentd-sumologic 파드가 메모리를 다 써서 운영 쿠버네티스 노드 두 대에 이틀 연속 SystemOOM 이 났다Blue Matador · 2019같은 원인 · 공통 컨테이너 메모리 한도
같은 원인 · 공통 컨테이너 메모리 한도