IL-0142 Google Cloud · 2023-07-06kubernetesgcpobservability
2023년 7월 6일부터 18일까지 12일 14분 동안 GKE 클러스터 로그에 GKE 가 넣지 말았어야 할 메시지가 추가로 기록됐다. 이 메시지가 Logging API 쓰기 할당량을 더 써서 일부 고객은 할당량이 바닥났다. 영향 범위는 GKE 1.24.x 이상 버전의 Standard 클러스터와 Autopilot 클러스터였고, Google 은 영향 지역을 Global 로 표시했다. 예비 분석에 따르면 근본 원인은 로그를 처리하는 구성 요소의 새 버전 배포였다.
Google 은 장애 첫날부터 이 메시지는 무시해도 된다고 안내하고 우회 방법 두 가지를 제시했다. 할당량에 걸리지 않으려면 Logging API 할당량 증설을 요청하고, 추가 메시지를 저장하지 않으려면 로그 제외 규칙을 적용하라는 것이었다. Google 은 7월 6일 오후에 수정본을 찾았고, 시험을 거쳐 7월 10일부터 영향받은 클러스터에 점진적으로 배포했다. 7월 10일 공지에서 할당량에 다가가던 대형 워크로드 문제는 이미 완화됐다고 밝혔고, 7월 18일 07시 27분 영향받은 모든 사용자의 문제가 해결됐다.
2023년 7월 6일 07시 13분 US/Pacific 부터 GKE 1.24 이상 클러스터의 로그에 예상하지 못한 메시지가 추가로 찍히기 시작했다. Standard 클러스터와 Autopilot 클러스터 모두 해당됐다.
추가된 메시지는 다음과 같은 오류와 경고 로그였다. "Failed to get record: decoder: failed to decode payload: EOF", "cannot parse '0609 05:31:59.491654' after %L", "invalid time format %m%d %H:%M:%S.%L%z for '0609 05:31:59.490647'". Google 이 안내한 로그 제외 쿼리는 `fluentbit-gke` 컨테이너와 `fluentbit` 로그 ID 를 대상으로 했다.
추가 메시지는 Logging API 쓰기 할당량을 더 소비했다. 프로젝트당 노드가 수천 개인 매우 큰 워크로드에서는 할당량을 넘겨 다른 로그 메시지가 버려질 수 있었다. 저장되는 로그가 늘어 로깅 요금에도 영향이 있었다. 클러스터에서 도는 워크로드 자체는 영향을 받지 않았다.
증상 ? 로그 폭증
원인 ? 배포 결함
–
–
관리형 로그 에이전트의 업데이트 하나로도 프로젝트의 Logging API 쓰기 할당량이 바닥날 수 있다. 할당량을 넘기면 정작 필요한 다른 로그가 버려진다. Google 은 프로젝트당 노드가 수천 개인 매우 큰 워크로드에서 이 로그가 할당량을 넘길 수 있다고 안내했다. 플랫폼이 고칠 때까지는 메시지 내용을 기준으로 한 로그 제외 규칙으로 저장과 요금 증가를 막을 수 있었다.
같은 원인 · 공통 텔레메트리 에이전트
같은 원인 · 공통 텔레메트리 에이전트