{"id":"IL-0093","org":"UK Ministry of Justice","date":"2020-08-14","docs":[],"title":{"en":"Ingress controller pods crash-looped one after another because the leader pod had exhausted its shared memory","ko":"리더 ingress 컨트롤러 파드가 공유 메모리를 다 써서 ingress 컨트롤러 파드 6개 중 4개가 크래시 루프에 빠졌다"},"domain":["kubernetes"],"impact":{"scope":"the ingress controllers of the cluster; four of six replicas crash-looping, with a risk that all ingresses in the cluster would fail","users":"unknown","region":"unknown"},"review":{"written_by":"session","reviewed_at":null,"reviewed_by":null},"lessons":null,"related":[],"sources":[{"url":"https://runbooks.cloud-platform.service.justice.gov.uk/incidents/2020-08-14-ingress-controllers-crashlooping.html","kind":"runbook","license":"unknown","archived":null}],"summary":{"en":"The cluster ran six replicas of the ingress controller. The leader pod among them had exhausted its shared memory, and the other replicas could not connect to it to get the latest nginx configuration. Two replicas were crash-looping, and following the runbook by restarting more replicas only added more crash-looping pods, four of six in the end.\n\nRestarting the leader ingress controller pod let the other replicas connect and fetch the latest nginx.config file, and all of them returned to ready and running. The report gives the time to repair as 37 minutes and the time to resolve as 55 minutes.","ko":"클러스터의 ingress 컨트롤러는 파드 6개로 돌고 있었다. 리더 역할을 하는 ingress 컨트롤러 파드가 공유 메모리를 다 썼다. 다른 파드들은 리더에게서 최신 nginx.config 파일을 받아 오지 못했고 크래시 루프에 빠졌다. 크래시 루프에 빠진 파드는 처음에 2개였지만, 런북대로 파드를 재시작하자 재시작한 파드도 같은 상태가 되어 4개로 늘었다.\n\n팀이 리더 파드를 재시작하자 다른 파드들이 리더에 연결해 최신 설정을 받았고, 모두 Ready 와 Running 상태로 돌아왔다. 11:38 에 해결되었고, 복구까지 37분, 해결까지 55분이 걸렸다."},"trigger":null,"severity":"unknown","symptoms":["crash-loop"],"timeline":{"detected_after":null,"resolved_after":"55m"},"date_kind":"incident","detection":{"en":"Two of the six ingress controller pods were seen crash-looping at 10:43; the incident was declared at 11:01.","ko":"2020-08-14 10:43 에 ingress 컨트롤러 파드 6개 중 2개가 크래시 루프에 빠진 것이 감지되었다."},"components":["ingress"],"root_cause":"capacity","remediation":[{"text":{"en":"restarted the leader ingress controller pod so the other replicas could connect and get the latest nginx configuration","ko":"리더 ingress 컨트롤러 파드를 재시작했다. 그러자 다른 파드들이 리더에 연결해 최신 nginx.config 파일을 받았다."}}],"action_items":[],"contributing":["manual-action-worsened","single-point-of-failure"],"recurrence_of":null,"symptoms_text":{"en":"At 10:43 on 14 August 2020 two of the six ingress controller pods in the cluster were in a crash loop. Restarting those pods did not fix them.\n\nThe normal runbook said to recycle all the pods. After pods 4 and 5 were restarted they also began to crash-loop, so four of the six replicas were down. Restarting the remaining pods risked leaving all six in a crash loop and every ingress in the cluster down. The incident was declared at 11:01.\n\nThe pod that had not yet been looked at or restarted was the leader ingress controller pod, and it had exhausted its shared memory.","ko":"2020-08-14 10:43 에 클러스터의 ingress 컨트롤러 파드 복제본 6개 중 2개가 크래시 루프에 빠진 것이 감지되었다.\n\n크래시 루프에 빠진 파드를 재시작해도 나아지지 않았다. 팀은 평소 런북대로 모든 파드를 차례로 재시작하기로 했다. 그런데 4번과 5번 파드를 재시작하자 그 파드들도 크래시 루프에 빠졌고, 6개 중 4개가 크래시 루프 상태가 되었다.\n\n남은 파드까지 재시작하면 6개가 모두 내려가 클러스터의 모든 Ingress 가 끊길 위험이 있었다. 팀은 11:01 에 장애를 선언했다. 이때까지 팀은 리더 파드를 찾지도, 재시작하지도 않았다."},"updated_at":"2026-11-09T11:55:43.219378Z","url":"https://benchlet.com/incidentlib/app/cases/IL-0093","org_slug":"uk-ministry-of-justice"}