관리 메뉴

피터의 개발이야기

[EKS] Amazon EKS 버전 업그레이드, #3 kubectl 설치 또는 업데이트 본문

AWS/EKS

[EKS] Amazon EKS 버전 업그레이드, #3 kubectl 설치 또는 업데이트

기록하는 백앤드개발자 2022. 9. 29. 08:46
반응형

 

EKS 업그레이드
 - 1탄: EKS, AddOn
 - 2탄: WorkNode
 - 3탄:  kubectl

 

ㅁ 개요

 ㅇ 이전 글에서 Amazon EKS 버전 업그레이드 1탄(EKS), 2탄(WordNode)를 진행하였다.

 ㅇ kubernetes 클러스터를 관리하기 위한 kubectl도 업그레이드가 필요하다.

 ㅇ 이번 글에서는 kubectl의 업그레이드 하는 과정을 정리하였다.

 ㅇ 하지만 이미 kubectl의 client의 버젼이 1.23이어서 다운그레이드 하는 과정을 함께 정리하였다.

 ㅇ 실질적으로 업그레이드와 다운그레이드 자체는 버젼에 맞는 kubectl 다운받아 설치하는 것이기에 방법은 동일하다.

 

 

 

 

 다운그레이드


ㅁ 버젼확인

# kubectl 버젼확인
[ec2-user@ip-172-31-43-214 ~]$ kubectl version --short
Client Version: v1.23.6
Server Version: v1.22.13-eks-15b7512

 ㅇ 현재 1.23.6 버젼이 깔려있다.

 

 

Amazon EKS 클러스터 제어 영역과 마이너 버전이 하나 다른 kubectl 버전을 사용해야 합니다. 예를 들어 1.22 kubectl
 클라이언트는 Kubernetes 1.21, 1.22, 1.23 클러스터와 함께 작동합니다.

 ㅇ AWS 참고로 말하기를 버전 하나 차이는 함께 작동을 한다고는 하지만 테스트를 위해 1.21로 다운그레이드 후 다시 1.22로 업그레이드 해 보려고 한다.

 

 

ㅁ 다운그레이드

[ec2-user@ip-172-31-43-214 ~]$ curl -o kubectl https://s3.us-west-2.amazonaws.com/amazon-eks/1.21.2/2021-07-05/bin/linux/amd64/kubectl
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 44.2M  100 44.2M    0     0  7158k      0  0:00:06  0:00:06 --:--:-- 9030k

 ㅇ 버젼별 다운로드 페이지는 여기이다.

 ㅇ 1.21.2 버젼으로 다운로드하였다.

 ㅇ 링크 선택 시 주의점은 arm이 아닌 amd를 선택해야한다.

 

 

ㅁ 실행권한 부여

[ec2-user@ip-172-31-43-214 ~]$ chmod +x ./kubectl
[ec2-user@ip-172-31-43-214 ~]$ ll kubectl
-rwxrwxr-x 1 ec2-user ec2-user 46403584  9�� 29 08:25 kubectl

 ㅇ 실행권한을 부여하였다.

 

 

바이너리를 PATH의 폴더에 복사

mkdir -p $HOME/bin && cp ./kubectl $HOME/bin/kubectl && export PATH=$PATH:$HOME/bin

 ㅇ path에 설정되어 있는 곳은 /usr/local/bin/kubectl에 위치하였다.

 

 

 ㅇ path의 위치로 kubectl을 옮겼다.

 

 

 ㅇ 어느 폴더에서나 kubectl 버젼 확인 시 1.21로 정상 작동됨을 확인하였다.

 

 

 

 

업그레이드


ㅁ 업그레이드

 ㅇ kubectl을 다운받기 위해 이곳으로 이동한다.

 ㅇ 실리콘 CPU를 사용하지 않는 인스턴스이기 때문에 amd64을 다운받는다.

 

 

# kubectl 1.22 다운로드
[ec2-user@ip-172-31-43-214 ~]$ curl -o kubectl https://s3.us-west-2.amazonaws.com/amazon-eks/1.22.6/2022-03-09/bin/linux/amd64/kubectl
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 44.7M  100 44.7M    0     0  9277k      0  0:00:04  0:00:04 --:--:--  9.8M

# 실행권한부여
[ec2-user@ip-172-31-43-214 ~]$ chmod +x ./kubectl

# path로 이동
[ec2-user@ip-172-31-43-214 ~]$ sudo mv kubectl /usr/local/bin/kubectl

# 버젼확인
[ec2-user@ip-172-31-43-214 ~]$ kubectl version --short --client
Client Version: v1.22.6-eks-7d68063

 ㅇ 다운그레이드 시 했던 작업을 한번 더 하는 것이라 짧게 정리함.

 

 

 

ㅁ 함께 보면 좋은 사이트

 

kubectl 설치 또는 업데이트 - Amazon EKS

Amazon EKS 클러스터 제어 영역과 마이너 버전이 하나 다른 kubectl 버전을 사용해야 합니다. 예를 들어 1.22 kubectl 클라이언트는 Kubernetes 1.21, 1.22, 1.23 클러스터와 함께 작동합니다.

docs.aws.amazon.com

반응형
Comments