Kubernetes
v1.35.5Kubernetes CoreKubernetes v1.35.5는 스케줄러 상태 오염, Windows 네트워킹, kube-proxy 대규모 클러스터 동작, kubeadm 초기화 문제를 수정한 패치 릴리스입니다.
breakingkubeadm 사용자: 업그레이드 후 kubeconfig 생성 동작 확인 필요
kubeadm init이 admin.conf와 super-admin.conf 생성 시 controlPlaneEndpoint 대신 localAPIEndpoint를 사용하도록 바뀌었습니다. 커스텀 controlPlaneEndpoint 설정을 쓰는 클러스터라면 업그레이드 후 생성된 kubeconfig가 올바른지 반드시 검증하세요. 초기화 후 tooling이 controlPlaneEndpoint 기반 kubeconfig를 참조한다면 스테이징에서 먼저 테스트하는 것을 권장합니다.
enhancement대규모 클러스터: kube-proxy 업그레이드로 불필요한 전체 동기화 차단
엔드포인트가 1000개를 넘는 환경에서 kube-proxy가 불필요한 full-sync를 반복 실행하고 있었습니다. 이번 패치로 해당 동작이 멈추므로, 바쁜 클러스터의 CPU와 네트워크 오버헤드를 직접 줄일 수 있습니다. 다음 유지보수 윈도우에 kube-proxy 업그레이드를 포함시키세요.
enhancement스케줄러 메모리 누수 수정 — 스케줄링 불안정 증상이 있다면 즉시 적용하세요
동일한 이름의 Pod가 스케줄링 실패를 반복할 때 in-flight 상태 추적 데이터가 무한 증가하는 버그였습니다. 스케줄러 메모리 사용량이 지속적으로 증가하거나 스케줄링 지연이 관찰됐다면, 이 패치가 근본 원인을 해결합니다.
주요 변경 (5)
- 스케줄러 버그 수정: 스케줄링 실패 후 동일한 이름으로 Pod를 교체할 때 in-flight 큐 상태가 누적되던 문제(메모리 무제한 증가 가능)
- Windows L2Bridge 네트워크 수정: 노드 간 Pod IP 재사용 시 오래된 HNS 엔드포인트가 정리되지 않아 발생하던 DNS 타임아웃 해결
- kube-proxy가 대규모 클러스터(엔드포인트 1000개 이상)에서 불필요한 전체 동기화를 수행하지 않도록 수정
- kubeadm init 시 admin kubeconfig에 controlPlaneEndpoint 대신 localAPIEndpoint를 사용하도록 변경 — 느린 로드밸런서 환경의 부트스트랩 실패 해결
- kubeadm etcd 상태 확인이 전체 멤버 대신 쿼럼 기반으로 동작하도록 개선