例如我本地有時候需要連接本地環境的k8s集羣,和線上、測試環境的集羣,但是每次都是修改config文件名,很不方便,但其實我們可以使用use-context來選擇連接的集羣
將多個config文件添加不同標示的作爲文件名
➜ .kube ll config*
-rw------- 1 jiangboyang staff 5.3K 11 9 19:12 config-local
-rw-r--r-- 1 jiangboyang staff 5.9K 11 7 18:57 config-test
合併兩個config,下面可以看到其實就是幫我們將兩個文件進行了合併
➜ .kube KUBECONFIG=config-test:config-local kubectl config view --flatten
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: xxxxx
server: https://xxxxxx:6443
name: docker-desktop ........省略將生成後的配置覆蓋config文件
➜ .kube KUBECONFIG=config-test:config-local kubectl config view --flatten >config
查看當前集羣
➜ .kube kubectl config current-context
docker-desktop查看config配置都有那些集羣
➜ .kube kubectl config view|grep name
name: docker-desktop
name: kubernetes-test切換默認集羣
➜ .kube kubectl config use-context kubernetes-test