본 글은 AWS 공식 문서를 참고하여 작성 되었습니다.
클러스터의 Kubernetes 버전을 업데이트
했으며 동일한 Kubernetes 버전을 사용
하도록 노드를 업데이트하려고 할 때.새 AMI 릴리스 버전
을 사용할 수 있을 때.구성 변경 사항
이 있는 시작 템플릿의 새 버전을 배포
해야 할 때.Amazon VPC CNI
추가 기능의 버전 1.9.0 이상을 배포하고, 접두사 위임에 대해 추가 기능을 사용하도록 설정했으며, 노드 그룹의 새로운 AWS Nitro 시스템 인스턴스가 크게 증가된 포드 수를 지원하도록(사용 가능한 IP 주소의 양을 늘렸을 때) 했을 때.먼저 아래 명령으로 노드 그룹을 확인합니다.
$ eksctl get nodegroup --cluster <cluster name>
eksctl upgrade nodegroup
명령을 이용해 노드 그룹을 업데이트 합니다.
$ eksctl upgrade nodegroup --name=<node-group-name> --cluster=<cluster name>
노드 그룹을 제어 플레인의 Kubernetes 버전과 동일한 버전으로 업그레이드할 수 있습니다.
예를 들어, Kubernetes 1.21을 실행하는 클러스터
가 있는 경우 다음 명령을 사용하여 현재 실행 중인 Kubernetes 1.20을 1.21
로 업그레이드할 수 있습니다.
eksctl upgrade nodegroup \
--name=<node-group-name> \
--cluster=<cluster-name> \
--kubernetes-version=1.21
자세한 사항은 --help
를 통해 확인해보세요.
$ eksctl upgrade nodegroup --help
Upgrade nodegroup
Usage: eksctl upgrade nodegroup [flags]
Nodegroup flags:
--name string Nodegroup name
--launch-template-version string Launch template version
--kubernetes-version string Kubernetes version
--force-upgrade Force the update if the existing node group's pods are unable to be drained due to a pod disruption budget issue
--release-version string AMI version of the EKS optimized AMI to use
--wait nodegroup upgrade to complete (default true)
General flags:
-c, --cluster string EKS cluster name
-r, --region string AWS region. Defaults to the value set in your AWS config (~/.aws/config)
--timeout duration maximum waiting time for any long-running operation (default 45m0s)
AWS client flags:
-p, --profile string AWS credentials profile to use (defaults to value of the AWS_PROFILE environment variable)
Common flags:
-C, --color string toggle colorized logs (valid options: true, false, fabulous) (default "true")
-d, --dumpLogs dump logs to disk on failure if set to true
-h, --help help for this command
-v, --verbose int set log level, use 0 to silence, 4 for debugging and 5 for debugging with AWS debug logging (default 3)
Use 'eksctl upgrade nodegroup [command] --help' for more information about a command`
For detailed docs go to https://eksctl.io/