머신에서 여러 kubeconfig 구성

Kubernetes로 작업하는 동안 Kubernetes 클러스터에 액세스하는 가장 좋은 방법은 클라우드 공급자가 제공하는 kubeconfig 파일을 사용하는 것입니다.

kubeconfig 파일은 Kubernetes 클러스터의 구성을 저장하는 선언적 YAML 파일입니다. 기본적으로 클라우드에서 Kubernetes 클러스터를 설정할 때 클라우드 공급자는 클러스터에 액세스하는 데 도움이 되는 kubeconfig 파일을 제공합니다.

kubeconfig 파일은 bash_profile에 KUBECONFIG로 저장하거나 Linux를 사용하는 경우 ~./kube/config 폴더에 저장해야 합니다. 이렇게 하면 kubectl get nodes 또는 다른 명령을 실행할 때 구성된 Kubernetes 클러스터에서 터미널로 바로 출력을 얻을 수 있습니다.

또 다른 접근 방식은 실행하는 모든 kubectl 스크립트에 kubeconfig 경로를 제공하는 것입니다. 예를 들어:

kubectl get nodes --kubeconfig={kubeconfig_path}


그러나 클라우드에서 여러 Kubernetes 클러스터를 실행하는 경우 실행하는 모든 kubectl 스크립트에 kubecofig 플래그를 제공하는 것이 서투르고 혼란스럽고 유지 관리하기 어려울 수 있으므로 해당 kubeconfig 파일을 관리하기가 약간 어려울 수 있습니다.

따라서 이 문제를 해결하기 위해 Kubernetes 컨텍스트를 사용할 수 있습니다.

클라우드에서 여러 개의 Kubernetes 클러스터가 실행 중이고 서로 다른 kubeconfig 파일이 있는 경우 아래와 같이 모든 kubeconfig 파일을 동일한 KUBECONFIG 변수로 내보낼 수 있다고 가정합니다.

export KUBECONFIG=/home/aabishkar/Documents/kubernetes/kubeconfig/civo-google-microservice-kubeconfig:/home/aabishkar/Documents/kubernetes/kubeconfig/civo-kubernetes-practise-kubeconfig



여기서는 두 클러스터 이름 google-microservice 및 kubernetes-practice의 kubeconfig 파일을 동일한 KUBECONFIG 변수로 내보냈습니다.

이제 다음 명령을 실행할 때:

kubectl config get-contexts



이것은 개발 및 프로덕션 환경 모두에 대한 컨텍스트를 제공합니다.
이제 다른 Kubernetes 클러스터 간에 전환하려면 단일 명령만 사용하면 됩니다. 예를 들어 개발 클러스터로 전환하려면 다음을 수행하세요.

kubectl config use-context google-microservice


이 명령은 내 클러스터를 전환하며 이제 모든 kubectl 스크립트에 kubeconfig 옵션을 제공하지 않고도 google-microservice 클러스터에 액세스할 수 있습니다.

이것이 누군가를 돕기를 바랍니다.
읽어 주셔서 감사합니다.

좋은 웹페이지 즐겨찾기