-. Cluster Version Update → NodeGroup Version Update(노드그룹 업데이트 진행 시, 노드 버전 순차적 업데이트 수행됨)
2. 목적
-. EKS 버전 EOS에 따른 버전 업그레이드(EOS 버전 1.22)
3. 참고 사항
-. 1.22 → 1.25 로 한번에 버전 업데이트는 불가하며, 1.22→ 1.23→ 1.24→ 1.25 순으로 순차 업데이트 진행 필요
-. Cluster&Node Group 버전이 한 단계 업데이트될 때마다 Event, Pod 상태 등 확인 필요
-. Add-on으로 Driver 설치 버전 확인이 필요하고, add-on으로 설치한 게 아니라, helm 등 다른 방식으로 설치한 경우, AWS 콘솔에서 확인이 불가능하며, 삭제 후 add-on으로 설치 혹은 직접 driver 버전 업데이트 등의 프로세스로 작업이 필요함
-. taint 명령 후 'kubectl get nodes'를 입력해보면 아래와 같습니다.
*cordon 명령어는 기존 파드에는 영향을 안주면서 스케줄링을 비활성화 하는 역할을 합니다.
kubectl taint nodes node1 key1=value1:NoSchedule
-. taint 명령어로 스케줄링을 정지합니다.
-. cordon은 파드가 스케줄링되지 않도록 하며, taint가 적용된 노드에는 신규 스케쥴은 진행되지 않습니다. 따라서 위 화면을 기준으로 새로 생성된 노드로만 스케쥴이 진행됩니다.
*************
작업간 주의사항 (1)
kubectl get pods -o wide # 해당하는 네임스페이스 내 모든 파드의 상세 목록 조회
kubectl get pods --all-namespaces # 모든 네임스페이스 내 모든 파드의 목록 조회
을 입력하며 정상적으로 pods가 동작하는지 확인할 필요가 있으며,
이상이 있는 pods는
kubectl describe pods <my-pod> 명령어를 통해 어떤 문제가 발생했는지 살펴볼 필요가 있습니다.
작업간 주의사항 (2)
위에서 업그레이드하는 시스템(CoreDNS, CNI, Kube-proxy)과 ingress 설정(위에는 표기하지 않았으며, 추후 공부하며 다시 작성 예정)은 변경 전 kubectl get <블라블라~~~ 조회하고 싶은것> -o yaml > 파일명.yaml 형식으로 백업해두는 것을 추천합니다.