반응형
※참고 : https://kubernetes.io/ko/docs/tasks/access-application-cluster/configure-access-multiple-clusters/
하나의 jumphost에서 여러 kubernetes 클러스터를 관리하는 경우, 클러스터를 바꿔가면서 kubectl 명령어를 사용해야 할 필요가 있다.
혹은 namespace에 따라 사용자를 바꿔가며 접근해야 할 경우가 있을 수 있다. 이럴 경우 kubectl config를 통해 접근하려는 클러스터와 사용자를 관리할 수 있다.
1. kubeconfig 파일 작성 혹은 수정.
(기본적으로 kubeconfig 파일은 ~/.kube/config 이며, 추가적인 config 파일을 자유롭게 작성할 수 있다.)
Sample
apiVersion: v1
clusters:
- cluster:
certificate-authority: fake-ca-file
server: https://1.2.3.4
name: development
- cluster:
insecure-skip-tls-verify: true
server: https://5.6.7.8
name: scratch
contexts:
- context:
cluster: development
namespace: frontend
user: developer
name: dev-frontend
- context:
cluster: development
namespace: storage
user: developer
name: dev-storage
- context:
cluster: scratch
namespace: default
user: experimenter
name: exp-scratch
current-context: ""
kind: Config
preferences: {}
users:
- name: developer
user:
client-certificate: fake-cert-file
client-key: fake-key-file
- name: experimenter
user:
password: some-password
username: exp
2. 사용하려는 컨텍스트로 변경하기
kubectl config (--kubeconfig=[kubeconfig]) use-context [context name]
반응형