피드로 돌아가기
Kubernetes BlogKubernetes Blog
Infrastructure

Cluster API v1.12이 제자리 업데이트(In-place Updates)와 체인 업그레이드(Chained Upgrades)를 도입해 Kubernetes 클러스터 라이프사이클 관리의 워크로드 중단을 최소화

Cluster API v1.12: Introducing In-place Updates and Chained Upgrades

2026년 1월 27일8intermediate

Context

Cluster API는 Kubernetes 클러스터의 선언형 라이프사이클 관리를 제공하지만, 기존에는 Machine 스펙 변경 시 항상 기존 머신을 삭제하고 새로운 머신을 생성하는 불변 롤아웃(immutable rollout) 방식만 지원했다. 또한 여러 Kubernetes 마이너 버전을 업그레이드할 때 각 단계별로 수동 관리가 필요했다.

Technical Solution

  • 제자리 업데이트 확장 지원: update extensions를 통해 기존 머신을 유지하면서 직접 변경 가능 (예: 사용자 자격증명 변경 시 머신 삭제/재생성 불필요)
  • KubeadmControlPlane과 MachineDeployments에 제자리 업데이트 적용: 컨트롤 플레인과 워커 노드 모두 제자리 업데이트 지원
  • 자동 메커니즘 선택: 변경 사항에 따라 Cluster API가 제자리 업데이트와 불변 롤아웃 중 최적의 방식을 자동으로 선택
  • 체인 업그레이드로 다중 마이너 버전 업그레이드 자동화: 목표 Kubernetes 버전을 지정하면 Cluster API가 중간 단계를 자동으로 계산하고 순서대로 실행
  • 업그레이드 계획 최적화: 워커 머신이 Kubernetes 버전 스큐 정책이 허락하는 범위 내에서 중간 마이너 릴리스를 건너뜀
  • 확장성 유지: upgrade plan runtime extensions과 lifecycle hooks를 통해 사용자가 업그레이드 계획 계산 방식과 추가 작업 자동화를 커스터마이징 가능

Key Takeaway

Cluster API는 제자리 업데이트와 체인 업그레이드를 통해 워크로드 중단 최소화와 운영 편의성 향상의 균형을 유지했으며, 확장성 원칙을 고수하면서 사용자가 선택적으로 불변 인프라의 이점을 일부 포기하고 변경 유연성을 얻을 수 있도록 설계했다.


Kubernetes 클러스터를 운영하는 플랫폼 팀이 Cluster API v

1.12을 도입하면, 머신 스펙 변경 시 자동으로 제자리 업데이트와 롤아웃 중 최적 방식을 선택받으며, 연 1~2회 업그레이드만 수행하되 3개 마이너 버전 이상을 한 번에 업그레이드할 수 있어 운영 빈도를 줄이면서도 원하는 버전으로 신속하게 도달할 수 있다.

원문 읽기