피드로 돌아가기
Kubernetes BlogKubernetes Blog
DevOps

Kubernetes v1.35가 kubelet 설정 드롭인 디렉토리를 GA로 정식 출시하여 이질적 노드 풀의 설정 관리 복잡성을 제거

Kubernetes v1.35: Kubelet Configuration Drop-in Directory Graduates to GA

2025년 12월 22일7intermediate

Context

Kubernetes 클러스터가 GPU 노드, 엣지 노드, 표준 컴퓨팅 노드 등 이질적 노드 풀을 포함하면서 노드 그룹별 서로 다른 kubelet 설정이 필요해졌다. 기존에는 단일 모놀리식 설정 파일, 노드 타입별 완전한 설정 파일 수동 관리, 또는 별도 도구링에만 의존할 수 있었고, 각 방식은 설정 드리프트(configuration drift), 변경 관리의 어려움, 운영 오버헤드가 발생했다.

Technical Solution

  • kubelet 명령행 인자 --config-dir을 프로덕션 레벨로 지원: 지정된 디렉토리의 모든 파일을 메인 설정과 자동 병합
  • 수치 접두사 기반 계층화된 설정 파일 구조 도입: 00-base.conf50-high-capacity-nodes.conf99-new-feature.conf 순서로 병합되어 오버라이드 처리
  • 기본 설정과 노드 그룹별 오버라이드 분리: 베이스 설정은 공통으로 유지하고 고용량 노드, 엣지 노드별 드롭인 파일로 선택적 커스터마이제이션
  • /configz 엔드포인트를 통한 병합된 설정 검증: kubectl proxy로 최종 병합 상태를 curl로 확인 가능
  • 점진적 롤아웃 패턴 지원: 새로운 설정을 높은 수치 접두사로 추가한 후 일부 노드에서 테스트하고 점진적으로 확대

Key Takeaway

이질적 노드 풀을 관리하는 대규모 클러스터에서 설정을 계층화된 파일로 분리하면 설정 드리프트를 방지하고 변경 관리를 단순화할 수 있으며, v1.35부터는 별도 도구 없이 Kubernetes 네이티브 기능만으로 이를 구현 가능하다.


대규모 Kubernetes 클러스터를 운영하는 팀에서 kubelet 설정 드롭인 디렉토리를 도입할 때, 기본 설정과 노드 그룹별 오버라이드를 분리하고 수치 접두사로 병합 순서를 명시하면 설정 변경 시 전체 파일을 재작성하지 않고 필요한 부분만 드롭인 파일로 추가하여 관리 복잡도를 줄일 수 있다.

원문 읽기