Kubernetes/실전압축지식

[실.압.지]Kubeconfig란 무엇인가?

faru 2024. 8. 22. 11:11

[1.짧게 말해서]

kubeconfig는 클러스터에 대한 접근을 구성하는데 사용되는  파일을 일반적으로 kubeconfig 파일이라고 부른다. 'kubeconfig'라는 이름의 파일이 있다는 의미는 아니다.

 

kubeconfig 파일은 쿠버네티스 클러스터에 접근하기 위한 설정 정보를 담고 있는 파일이다. 이 파일에는 클러스터의 주소, 사용자 인증정보, 설정등이 포함되어 있다.

 

kubectl과 같은 쿠버네티스 클라이언트 도구는 이 kubeconfig 파일을 참조하여 클러스터에 접속하고, 클러스터 내의 리소스를 관리한다.

 

기본적으로 kubeconfig 파일은 사용자의 홈 디렉토리에 '.kube/config' 경로에 존재한다.

 

 

[2. 조금 더 자세하게]

기본적으로 cluster가 성공적으로 배포되었다면, kubeconfig 파일은 자동으로 생성되며, 위에서 언급한대로 '~/.kube/config' 경로에서 확인할 수 있다.

 

kubectl은 '$HOME/.kube' 디렉토리에서 config라는 이름의 파일을 찾아서 참조한다. KUBECONFIG 환경변수를 설정하거나, 아래와 같이 --kubeconfig 플래그를 지정해서 특정 config 파일을 사용해서 kubectl 명령어를 사용할 수 있다.

kubectl config view --kubeconfig=/root/CKA/faru.kubeconfig
--
kubectl get pods --kubeconfig=/root/CKA/faru.kubeconfig

 

KUBECONFIG 환경 변수를 통해서, 여러개의 config 파일을 병합해서 사용할 수 있다. 병합된 config내용은 아래 명령어를 통해 확인 가능하다.

kubectl config view

KUBECONFIG 파일이 없다면, 기본적으로 기본 경로를 참조한다.(/.kube/config)