쿠버네티스에서 cgroup v2로의 전환: 알아야 할 사항
쿠버네티스는 컨테이너 리소스를 관리하기 위해 리눅스 cgroup을 사용하며, cgroup v2로의 상당한 전환이 이루어지고 있습니다. cgroup v1 지원은 현재 유지보수 모드이며 향후 쿠버네티스 릴리스에서 완전히 제거될 예정입니다. cgroup v2는 통합된 계층 구조, 보다 일관된 인터페이스, 향상된 리소스 격리를 제공합니다. 쿠버네티스 v1.31은 cgroup v1 관리를 유지보수로 표시했으며, v2는 v1.25부터 안정화되었습니다. v1.35와 같은 최신 쿠버네티스 버전은 명시적으로 재정의하지 않는 한 cgroup v1 노드에서 kubelet 시작 실패를 기본값으로 설정합니다. kubeadm의 시스템 검증 확인 또한 v1.35부터 cgroup v1 사용을 플래그 지정할 것입니다. cgroup v2는 cgroup v1보다 더 나은 메모리 관리를 제공하는 계층적 보호 기능을 갖춘 메모리 QoS와 같은 새로운 기능을 가능하게 합니다. 또한 컨테이너 내의 모든 프로세스가 함께 종료되도록 보장하여 컨테이너 인식 OOM 처리를 개선합니다. Rootless 컨테이너 지원 또한 cgroup v2의 위임 기능을 통해 공식적으로 더 잘 처리됩니다. 마이그레이션하려면 커널 버전, 컨테이너 런타임 및 kubelet 구성과의 호환성을 보장해야 합니다.