피드로 돌아가기
Kubernetes BlogKubernetes Blog
DevOps

Kubernetes v1.34에서 KubeletCgroupDriverFromCRI 기능이 GA 진입하며 kubelet이 CRI 구현체에서 cgroup driver를 자동 감지하는 방식으로 수동 설정 오류 제거

Kubernetes v1.34: Autoconfiguration for Node Cgroup Driver Goes GA

2025년 9월 12일5intermediate

Context

Linux 시스템에서 cgroupfs와 systemd 두 가지 cgroup driver가 존재하는데, kubelet과 CRI 구현체(CRI-O, containerd)가 동일한 driver를 사용하도록 설정하지 않으면 명시적 오류 메시지 없이 kubelet이 오동작했다. 클러스터 관리자들이 이 설정 불일치로 인한 문제 해결에 많은 시간을 소비해왔다.

Technical Solution

  • kubelet이 CRI 구현체에 query를 날려 사용할 cgroup driver를 자동 감지: KubeletCgroupDriverFromCRI 기능을 v1.28.0에서 도입 후 v1.34.0에서 GA
  • containerd v2.0 이상 및 CRI-O v1.28.0 이상 버전에서만 이 기능 지원
  • containerd v1.y 지원 중단 일정 명시: Kubernetes v1.35의 마지막 릴리스까지만 지원하며 v1.36.0에서 제거
  • kubelet_cri_losing_support 메트릭 추가: 버전 레이블(예: 1.36.0)로 node의 containerd 버전이 미래 요구사항을 만족하지 못하는지 사전 감지 가능

Key Takeaway

Kubernetes 커뮤니티는 자동 설정 감지 기능을 GA 진입시키기까지 각 CRI 구현체의 메이저 버전 릴리스와 OS 패키징 타이밍을 고려해 다중 릴리스 사이클을 거쳤으며, 하위 호환성 유지 기간을 명확히 설정해 운영자의 업그레이드 계획을 촉진했다.


Kubernetes 클러스터를 v

1.34 이상으로 운영하는 관리자는 containerd를 v

2.0 이상으로, CRI-O는 v

1.

2

8.0 이상으로 사전 업그레이드한 후 kubelet_cri_losing_support 메트릭을 모니터링하면 cgroup driver 설정 오류로 인한 kubelet 오동작을 사전에 방지할 수 있다.

원문 읽기