Kubernetes
v1.35.4Kubernetes Corev1.35.4는 사이드카 컨테이너 재시작 불가, StatefulSet 병렬 스케일링 회귀, kube-proxy nftables 오작동, 감사 로그 레이턴시 어노테이션 오류 등 5개의 실제 버그를 수정한 패치 릴리스입니다.
breakingStatefulSet maxUnavailable 동작에 의존 중이라면 즉시 확인 필요
MaxUnavailableStatefulSet 기능 게이트가 1.35.4에서 다시 기본 비활성화됐습니다. 1.35.x로 업그레이드하면서 maxUnavailable 기반 병렬 파드 관리를 기대했다면, 그 동작은 현재 없는 셈입니다. StatefulSet 스펙에 maxUnavailable을 설정해둔 경우 조용히 무시됩니다. 업그레이드 전 스펙을 점검하고, 해당 기능 게이트가 다시 안정화될 때까지 운영 전략을 조정하세요.
breaking사이드카 + startupProbe 조합 사용 중이면 빠른 업그레이드 권장
restartPolicy: Always인 initContainer와 startupProbe를 함께 쓰는 파드는 kubelet 재시작 이후 크래시된 컨테이너가 영원히 재시작되지 않고 RestartCount: 0에 멈추는 현상이 있었습니다. 서비스 메시 프록시, 로그 수집기 등 사이드카 패턴을 쓰는 프로덕션 워크로드가 영향을 받습니다. 이미 이 상태에 빠진 파드가 있다면, 1.35.4로 업그레이드 후 해당 파드를 수동으로 삭제·재생성하는 것이 복구 방법입니다.
enhancementnft 1.1.3 노드 환경이라면 kube-proxy 업그레이드 우선 적용
nftables 버전 1.1.3이 설치된 시스템에서 kube-proxy의 nftables 모드가 완전히 동작하지 않는 문제가 있었습니다. 네트워킹 자체가 깨지는 조용한 장애입니다. 최근 Debian/Ubuntu 계열 일부 배포판이 nft 1.1.3을 포함하므로, 해당 환경의 노드 컴포넌트는 이번 패치를 우선 적용하세요.
주요 변경 (5)
- StatefulSet 회귀 수정: MaxUnavailableStatefulSet 기능 게이트를 기본 비활성화로 되돌려 1.35 이전의 안정적인 병렬 파드 관리 동작 복원
- 사이드카 컨테이너 버그 수정: restartPolicy: Always인 initContainer와 startupProbe를 함께 쓰는 파드가 kubelet 재시작 후 RestartCount: 0에서 멈추는 문제 해결
- nft 1.1.3이 설치된 시스템에서 kube-proxy nftables 모드 정상화
- 감사 로그 수정: 500ms 초과 요청에 대한 apiserver 레이턴시 어노테이션이 누락되던 1.34+ 회귀 수정
- Go 1.25.9 빌드, OpenTelemetry 라이브러리 v1.41.0으로 업그레이드