[Kubernetes] kubectl context
kubernetes 클러스트의 접근 구성을 위해서는 kubeconfig 파일을 통해 구성한다.
kubeconfig 파일은 kubectl 설치 시, ~/.kube/config
내에 위치하게 된다.
일반적으로 클라우드 환경에서 kubernetes 관리를 위해 제공되는 인스턴스는 kubernetes가 구성된 클러스터가 아닌, 기본 인스턴스에 kubeconfig 파일 구성을 통해 kubernetes 클러스터와 통신할 수 있게 되는 구조이다.
설정
context 는 kubectl 설치 시 생성되는 파일인 ~/.kube/config
파일에서 설정할 수 있다.
clusters:
- cluster:
certificate-authority-data:
server: https://xxx.xxx.xx.xxx
name: kubernetes_asia-northeast3-a_cluster-1
- cluster:
certificate-authority-data:
server: https://xxx.xxx.xxx.xxx
name: aws-cluster-asia-1
users:
name: aws-user
user:
name: gcp-user
user:
contexts:
context:
cluster: kubernetes_asia-northeast3-a_cluster-1
user: gcp-user
name: gcp-context
context:
cluster: aws-cluster-asia-1
user: aws-user
name: aws-context
current-context: kubernetes_asia-northeast3-a_cluster-1
kind: Config
preferences: {}
- clusters
kubernetes 클러스터를 명시 GCP kubernetes 클러스터 및 AWS 클러스터가 등록되어 있음
- users
클러스터에 접근할 유저 정보
- context
kubeconfig에서 컨텍스트 요소는 편리한 이름으로 접속 매개 변수를 묶는데 사용한다. 각 컨텍스트는 클러스터, 네임스페이스와 사용자라는 세 가지 매개 변수를 가진다. 기본적으로
kubectl
커맨드라인 툴은 현재 컨텍스트 의 매개 변수를 사용하여 클러스터와 통신한다.
- current-context
현재 통신하는 context 현재 컨택스트를 선택하려면 다음을 실행한다. kubectl config use-context
context 조회 및 변경
~/.kube/config
파일을 조회 및 수정하거나, kubectl config
명령을 이용하는 방법이 있다.
#GCP로 변경
$ kubectl config use-context kubernetes_asia-northeast3-a_cluster-1
#context 조회
$ kubectl config get-contexts
CURRENT NAME CLUSTER AUTHINFO NAMESPACE
gcp-context kubernetes_asia-northeast3-a_cluster-1 gcp-user
aws-context aws-cluster-asia-1 aws-user
댓글남기기