쿠버네티스 kubeadm을 활용한 클러스터 업그레이드

ZER0·2022년 10월 24일
1

Kubernetes

목록 보기
22/39
post-thumbnail
post-custom-banner

1. 클러스터 업그레이드 절차

  • kubeadm 업그레이드
  • 마스터 노드 업그레이드
  • 마스터 노드 kubelet, kubectl 업그레이드
  • 워커 노드 업그레이드
  • 워커 노드 kubelet, kubectl 업그레이드

2. kubeadm 업그레이드

  • kubeadm 현재 버전 확인 kubeadm version
  • apt 업데이트 apt update
  • 업그레이드 가능한 kubeadm 버전 확인 apt-cache madison kubeadm
  • kubeadm 업그레이드
 	apt-mark unhold kubeadm && \
 	apt-get update && apt-get install -y kubeadm=1.24.0-00 && \
 	apt-mark hold kubeadm
  • 업그레이드 적용 확인 kubeadm version
  • 클러스터 업그레이드 플랜 확인 kubeadm upgrade plan

3. 마스터 노드 업그레이드

  • 현재 클러스터 버전 확인
  • drain 적용 kubectl drain controlplane --ignore-daemonsets
  • 클러스터 업그레이드 적용 sudo kubeadm upgrade apply v1.24.0

4. 마스터 노드 kubelet 업그레이드

  • kubelet과 kubectl 업그레이드
	apt-mark unhold kubelet kubectl && \
	apt-get update && apt-get install -y kubelet=1.24.0-00 kubectl=1.24.0-00 && \
	apt-mark hold kubelet kubectl
  • kubelet 재시작
	sudo systemctl daemon-reload
	sudo systemctl restart kubelet
  • 마스터 노드 커든 해제
	kubectl uncordon controlplane
  • 마스터 노드 업그레이드 적용 확인

5. 워커 노드 업그레이드

  • 워커 노드 드레인 적용
	kubectl drain node01 --ignore-daemonsets
  • 워커노드 ssh 접속
	ssh node01
  • kubeadm 업그레이드
	apt-mark unhold kubeadm && \
	apt-get update && apt-get install -y kubeadm=1.24.0-00 && \
	apt-mark hold kubeadm
    sudo kubeadm upgrade node

6. 워커 노드 kubelet, kubectl 업그레이드

  • kubelet과 kubectl 업그레이드
	apt-mark unhold kubelet kubectl && \
	apt-get update && apt-get install -y kubelet=1.24.0-00 kubectl=1.24.0-00 && \
	apt-mark hold kubelet kubectl
  • kubelet 재시작
	sudo systemctl daemon-reload
	sudo systemctl restart kubelet
  • 워커 노드 커든 해제
	kubectl uncordon node01
  • 워커 노드 업그레이드 적용 확인

참고

  1. https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/
profile
Security Compliance Engineer
post-custom-banner

0개의 댓글