IL-0090 UK Ministry of Justice · 2021-06-09kubernetes
2021년 6월 9일 Cloud Platform 팀은 ModSec 인그레스 컨트롤러 모듈을 v3.33.0 으로 업그레이드했고, 배포는 성공한 것처럼 보였다. 업그레이드 직후부터 ModSec 검증 웹훅이 새 인그레스 생성과 기존 인그레스 변경을 모두 막았다. 웹훅 호출은 x509 인증서 오류로 실패했다. 인증서는 modsec01-nx-controller-admission 이름으로 발급돼 있었는데, 호출은 modsec01-nx-modsec-admission.ingress-controllers.svc 로 갔다.
인그레스 API 호출이 모두 막히면서 사용자 애플리케이션 배포도 전부 멈췄다. 팀은 ModSec 인그레스 컨트롤러 모듈을 v0.0.7 로 롤백해 문제를 풀었다. 수리까지 31분, 해결까지 43분이 걸렸다. 이 문제는 테스트 클러스터에서 걸러지지 않았다.
2021년 6월 9일 13:15 에 한 사용자가 #ask-cloud-platform 채널에 UAT 애플리케이션을 배포하다가 오류가 났다고 알렸다.
오류 문구는 다음과 같았다. kind Ingress: Internal error occurred: failed calling webhook "validate.nginx.ingress.kubernetes.io": Post https://modsec01-nx-modsec-admission.ingress-controllers.svc:443/networking/v1beta1/ingresses?timeout=10s: x509: certificate is valid for modsec01-nx-controller-admission, modsec01-nx-controller-admission.ingress-controllers.svc, not modsec01-nx-modsec-admission.ingress-controllers.svc
인그레스 API 호출이 모두 막혀 새 인그레스를 만들 수 없었고 기존 인그레스의 변경도 배포되지 않았다. 사용자 애플리케이션 배포도 전부 여기에 걸렸다. 장애는 ModSec 인그레스 컨트롤러 모듈을 v3.33.0 으로 업그레이드한 직후에 시작됐다. 업그레이드 자체는 성공한 것처럼 보였다.
증상 ? 배포 실패
원인 ? 업그레이드로 깨진 호환성
13:15 에 한 사용자가 #ask-cloud-platform 채널에 UAT 애플리케이션 배포 오류를 올리면서 장애가 드러났다. 장애 선언은 13:54 였다.
–
같은 원인 · 공통 인그레스 컨트롤러
같은 원인 · 공통 인그레스 컨트롤러
같은 원인 · 공통 인그레스 컨트롤러
같은 원인 · 공통 인그레스 컨트롤러
같은 원인 · 공통 어드미션 웹훅
같은 원인 · 공통 어드미션 웹훅