오늘도 한 뼘 더

[k8s] kubectl 버전을 낮췄는데 적용되지 않는다. 본문

DevOps & Infra/K8S(Kubernetes)

[k8s] kubectl 버전을 낮췄는데 적용되지 않는다.

나른한댕댕이🐶 2023. 2. 16. 09:13
728x90
반응형

  # 배경  

kubectl 명령어를 사용하려고 kubectl을 설치하다가 다음과 같은 에러가 발생했다. 

 $ kubectl version
   error: exec plugin: invalid apiVersion "client.authentication.k8s.io/v1alpha1"

이전에 해당 문제를 경험한 적이 있었는데 eks와 kubectl의 버전이 많이 차이가 나면 이와 같은 에러가 발생할 수 있다고 한다. 그래서 버전을 내리면 된다는 것을 알게 되었다. 

 

[k8s] error: exec plugin: invalid apiVersion "client.authentication.k8s.io/v1alpha1"

# 문제 내용 eks로 만든 cluster를 kubectl을 통해서 접근하려고 하니 다음과 같은 에러가 발생 > kubectl get pods error: exec plugin: invalid apiVersion "client.authentication.k8s.io/v1alpha1" # 원인 kubectl 12.4.x 이상의 버

baekji919.tistory.com

 

  # 문제  

kubectl의 더 낮은 버전을 다운로드하여서 설치를 했는데 이전에 설치한 더 높은 버전을 사용하고 있어 낮은 버전을 실행시키지 못하는 문제가 발생하였다. 

 

  # 해결 방법  

먼저 해당 문제를 해결하기 위해서 어떠한 kubectl을 사용하고 있는지 확인이 필요하다. 

 $ which kubectl

'which'를 사용하여서 어느 kubectl을 사용하는지 확인한다. 

해당 위치에 있는 kubectl 파일을 삭제하고 해당 위치에 올바른 버전의 kubectl 파일을 넣어주니 잘 실행되었다.

 $ kubectl version
 Client Version: version.Info{Major:"1", Minor:"23", GitVersion:"v1.23.6", 
 GitCommit:"ad3338546da947756e8a88aa6822e9c11e7eac22", GitTreeState:"clean", BuildDate:"2022-04-14T08:49:13Z", GoVersion:"go1.17.9", Compiler:"gc", Platform:"linux/amd64"}
 Server Version: version.Info{Major:"1", Minor:"23+", GitVersion:"v1.23.14-eks-ffeb93d", 
 GitCommit:"96e7d52c98a32f2b296ca7f19dc9346cf79915ba", GitTreeState:"clean", BuildDate:"2022-11-29T18:43:31Z", GoVersion:"go1.17.13", Compiler:"gc", Platform:"linux/amd64"}
728x90
반응형
Comments