쿠버네티스 클러스터 업그레이드는 쿠버네티스 버전을 최신 버전으로 올려 안정성, 보안, 성능 향상을 가져오는 과정입니다. 주로 kubeadm 도구를 사용하여 업그레이드하며, 마스터 노드와 워커 노드를 순서대로 업그레이드합니다. 아래는 일반적인 업그레이드 절차입니다.
1. 사전 준비
- 버전 확인: 업그레이드할 대상 쿠버네티스 버전을 확인합니다. 쿠버네티스 버전 정책상, 한 번에 1개의 마이너 버전만 업그레이드할 수 있습니다 (예: 1.24에서 1.25로).
- 호환성 확인: 업그레이드할 쿠버네티스 버전과 함께 사용하는 플러그인이나 애드온이 호환되는지 확인합니다.
- 백업: etcd 데이터베이스와 중요한 리소스를 백업해 둡니다.
2. 업그레이드 가능한 버전 계획 확인 (kubeadm upgrade plan)
bash
코드 복사
sudo kubeadm upgrade plan
이 명령어는 현재 클러스터의 버전과 업그레이드 가능한 버전 정보를 보여줍니다. 업그레이드 가능한 쿠버네티스 버전과 각 구성 요소 버전이 표시되며, 업그레이드 시 주의할 사항들도 안내됩니다.
3. 마스터 노드 업그레이드
3-1. kubeadm을 사용하여 마스터 노드 업그레이드
- 지정된 버전으로 마스터 노드를 업그레이드합니다.
- 예를 들어, 쿠버네티스 1.25.0으로 업그레이드하려면 다음 명령어를 사용합니다:
bash코드 복사sudo kubeadm upgrade apply v1.25.0
- 이 명령어는 마스터 노드의 제어 플레인 구성 요소(kube-apiserver, kube-controller-manager, kube-scheduler)를 업그레이드하고, etcd 데이터베이스 스키마를 자동으로 업그레이드합니다.
3-2. kubelet과 kubectl 업그레이드
- kubelet과 kubectl의 패키지를 업그레이드합니다.
bash코드 복사sudo apt-get update && sudo apt-get install -y kubelet=1.25.0-00 kubectl=1.25.0-00 sudo systemctl restart kubelet
4. 워커 노드 업그레이드
각 워커 노드에서 아래 절차를 따릅니다:
4-1. kubeadm을 사용하여 노드 업그레이드 준비
bash
코드 복사
sudo kubeadm upgrade node
4-2. kubelet과 kubectl 업그레이드
- 워커 노드에서도 kubelet을 업그레이드하고 재시작합니다.
bash코드 복사sudo apt-get update && sudo apt-get install -y kubelet=1.25.0-00 sudo systemctl restart kubelet
5. 검증
- 업그레이드가 완료되면 클러스터 상태를 점검하여 모든 구성 요소와 파드가 정상 상태인지 확인합니다.
- kubectl get nodes로 모든 노드가 새 버전으로 업그레이드되었는지 확인합니다.
6. 애드온 업데이트
클러스터의 네트워크 플러그인이나 기타 애드온도 새 버전에 맞춰 업데이트해야 합니다. 각 애드온의 문서를 참조하여 버전 호환성을 점검하고 필요 시 재설치합니다.
요약
- kubeadm upgrade plan으로 업그레이드 가능한 버전 확인.
- 마스터 노드: kubeadm upgrade apply로 제어 플레인 업그레이드 → kubelet, kubectl 업데이트 및 재시작.
- 워커 노드: kubeadm upgrade node → kubelet 업데이트 및 재시작.
- 전체 상태 검증 및 애드온 업데이트.
위의 절차를 따르면 안전하게 쿠버네티스 클러스터를 최신 버전으로 업그레이드할 수 있습니다.
'DevOps' 카테고리의 다른 글
CKA 예제 리마인더 - 19. Cluster Upgrade Process (0) | 2024.11.03 |
---|---|
Kubernetes - upgrade 간략한 요약 (0) | 2024.11.03 |
Kubernetes - drain, cordon, uncordon (0) | 2024.11.03 |
CKA 예제 리마인더 - 18. OS Upgrades (0) | 2024.11.03 |
CKA 예제 리마인더 - 17. Multi Container PODs (1) | 2024.11.02 |