Kubernetes
v1.36.0Kubernetes CoreKubernetes v1.36은 다수의 GA 승격, DRA 대규모 확장, 갱 스케줄링 API 신규 도입, 그리고 업그레이드 전 즉시 조치가 필요한 메트릭 이름 변경을 포함하는 대형 릴리스입니다.
breaking업그레이드 전 모니터링 수정 필수 — 메트릭 이름 두 개 변경
volume_operation_total_errors와 etcd_bookmark_counts가 각각 volume_operation_errors_total, etcd_bookmark_total로 이름이 바뀌었습니다. 기존 이름을 쓰는 Prometheus 알림이나 Grafana 대시보드는 업그레이드 후 조용히 동작을 멈춥니다. v1.36을 프로덕션에 적용하기 전에 모니터링 스택 전체를 점검하고 참조를 모두 교체하세요.
breakingDRA 사용 중이라면 RBAC 업데이트 필수
DRAResourceClaimGranularStatusAuthorization 피처 게이트가 v1.36에서 베타로 기본 활성화됩니다. DRA 스케줄러·컨트롤러는 resourceclaims/binding에 대한 update/patch 권한이, DRA 드라이버는 resourceclaims/driver에 대한 associated-node:update 또는 arbitrary-node:update 권한(특정 resourceNames로 제한)이 필요합니다. DRA 드라이버를 운영 중이라면 업그레이드 전에 RBAC 매니페스트를 반드시 점검하고 수정하세요. 누락 시 파드 스케줄링이 실패합니다.
breakingflex-volume·git-repo 볼륨 플러그인 제거 — 마이그레이션 필수
kubeadm은 더 이상 flex-volume 플러그인 디렉터리를 자동으로 마운트하지 않으며, git-repo 볼륨 플러그인은 영구적으로 비활성화됩니다. 재활성화 옵션이 없으므로 git-repo 볼륨을 사용하는 워크로드는 init 컨테이너 패턴이나 CSI 드라이버로 전환해야 합니다. kubeadm 환경에서 flex-volume을 계속 쓰려면 v1.36 업그레이드 전에 distroless 기반이 아닌 KCM 이미지와 extraVolumes 설정을 수동으로 구성해야 합니다.
breakingStrictIPCIDRValidation 기본 활성화 — IP/CIDR 값 점검 필요
이제 API 필드에서 선행 0이 있는 IP(예: 010.0.0.1)나 호스트 비트가 설정된 CIDR(예: 192.168.1.5/24)을 거부합니다. 기존 오브젝트는 validation ratcheting으로 보존되지만, 신규 생성 및 업데이트는 실패합니다. 업그레이드 전에 매니페스트, Helm 차트, 자동화 스크립트에서 비정규 IP/CIDR 값을 점검하세요.
enhancementMutatingAdmissionPolicy GA 승격 — 단순 Webhook 교체 검토 시점
CEL 기반 MutatingAdmissionPolicy가 v1으로 GA 승격되어 기본 활성화됩니다. 레이블/어노테이션 주입이나 기본값 설정처럼 단순한 뮤테이팅 웹훅을 운영 중이라면 MutatingAdmissionPolicy로 교체를 검토할 때입니다. 웹훅 서버 유지, 인증서 관리, 가용성 걱정 없이 CEL 기반 정책으로 동일한 기능을 구현할 수 있습니다. 상태가 없는 단순 뮤테이션부터 시작하는 것을 권장합니다.
주요 변경 (7)
- 업그레이드 전 대시보드/알림 수정 필수: `volume_operation_total_errors` → `volume_operation_errors_total`, `etcd_bookmark_counts` → `etcd_bookmark_total`로 메트릭 이름 변경
- kubeadm에서 flex-volume 지원 제거, git-repo 볼륨 플러그인 영구 비활성화 — CSI로 마이그레이션 필요
- DRA 대폭 확장: 디바이스 테인트/톨러레이션 베타 승격, DRAAdminAccess·DRAPrioritizedList GA 승격, ResourceClaim 상태 업데이트에 세분화된 RBAC 권한 필요
- UserNamespacesSupport GA 승격, MutatingAdmissionPolicy GA(v1) 승격 및 기본 활성화
- StrictIPCIDRValidation 기본 활성화 — 선행 0이나 애매한 서브넷 마스크가 포함된 IP/CIDR 값은 API에서 거부됨
- 갱 스케줄링을 위한 scheduling.k8s.io/v1alpha2 Workload/PodGroup API 도입, v1alpha1 Workload API 제거
- InPlacePodLevelResourcesVerticalScaling 베타 승격(기본 활성화) — 파드 수준 CPU/메모리 인플레이스 리사이즈 지원