kubectl 多集群环境切换
kubectl 在一个配置文件中配置多个环境信息,然后可以切换操作:先看如下配置文件apiVersion: v1kind: Configclusters:- name: "myk8s"cluster:server: "https://rancher.shanhy.com/k8s/clusters/c-97hgz"certificate-authority-data: "LS0tLS1CRUdJTi
·
kubectl 在一个配置文件中配置多个环境信息,然后可以切换操作:
先看如下配置文件
apiVersion: v1
kind: Config
clusters:
- name: "myk8s"
cluster:
server: "https://rancher.shanhy.com/k8s/clusters/c-97hgz"
certificate-authority-data: "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJpRENDQ\
VM2Z0F3SUJBZ0lCQURBS0JnZ3Foa2pPUFFRREFqQTdNUnd3R2dZRFZRUUtFeE5rZVc1aGJXbGoKY\
…………………省略…………………
jRHMDNJV0Ixb1NTaWJDNHNwd0xXQkorQUloQU9NRngrRFJYZVlONTZpVDRSR2JzUElXMzQ2Vwo4Y\
ndDb0IvK2Zvd2JNQXRYCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0="
- name: "myk8s-middleware2"
cluster:
server: "https://192.168.1.122:6443"
certificate-authority-data: "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUN3akNDQ\
WFxZ0F3SUJBZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREFTTVJBd0RnWURWUVFERXdkcmRXSmwKT\
…………………省略…………………
XFJUmRnaXBLMElmUDBoYnlFMUZlN0swMTJsaUlyYzlSWkVYYVpUUEE9Ci0tLS0tRU5EIENFUlRJR\
klDQVRFLS0tLS0K"
- name: "myk8s-server04"
cluster:
server: "https://192.168.1.142:6443"
certificate-authority-data: "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUN3akNDQ\
WFxZ0F3SUJBZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREFTTVJBd0RnWURWUVFERXdkcmRXSmwKT\
…………………省略…………………
XFJUmRnaXBLMElmUDBoYnlFMUZlN0swMTJsaUlyYzlSWkVYYVpUUEE9Ci0tLS0tRU5EIENFUlRJR\
klDQVRFLS0tLS0K"
- name: "myk8s-middleware3"
cluster:
server: "https://192.168.1.129:6443"
certificate-authority-data: "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUN3akNDQ\
WFxZ0F3SUJBZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREFTTVJBd0RnWURWUVFERXdkcmRXSmwKT\
…………………省略…………………
XFJUmRnaXBLMElmUDBoYnlFMUZlN0swMTJsaUlyYzlSWkVYYVpUUEE9Ci0tLS0tRU5EIENFUlRJR\
klDQVRFLS0tLS0K"
users:
- name: "myk8s"
user:
token: "kubeconfig-user-rmz6q.c-97hgz:29z89ns8whhgq8zptgbtkgg8rnq86hcxnb75rm5t4ptt7l57cfvwlv"
contexts:
- name: "myk8s"
context:
user: "myk8s"
cluster: "myk8s"
- name: "myk8s-middleware2"
context:
user: "myk8s"
cluster: "myk8s-middleware2"
- name: "myk8s-server04"
context:
user: "myk8s"
cluster: "myk8s-server04"
- name: "myk8s-middleware3"
context:
user: "myk8s"
cluster: "myk8s-middleware3"
current-context: "myk8s"
以上配置文件中的证书通过字符串的方式配置在 config 文件中,如果不想写具体的字符串,本地有证书文件,则可以通过 client-certificate 和 client-key 来设置证书路径的方式使用,如下所示:
- name: "myk8s-middleware3"
cluster:
server: "https://192.168.1.129:6443"
client-certificate: /etc/kubernetes/ssl/kube-controller-manager.pem
client-key: /etc/kubernetes/ssl/kube-controller-manager-key.pem
在配置文件中定义了4个 context 环境,分别为 myk8s、myk8s-middleware2、myk8s-server04、myk8s-middleware3,下面为切换环境的命令示例:
[root@middleware3 .kube]# kubectl config use-context myk8s-middleware2
Switched to context "myk8s-middleware2".
[root@middleware3 .kube]# kubectl get nodes
NAME STATUS ROLES AGE VERSION
middleware Ready <none> 3h9m v1.19.4
middleware2 Ready controlplane,etcd,worker 547d v1.19.4
middleware3 Ready controlplane,etcd,worker 547d v1.19.4
server01 Ready worker 547d v1.19.4
server02 Ready worker 547d v1.19.4
server03 Ready worker 547d v1.19.4
server04 Ready controlplane,etcd,worker 172d v1.19.4
[root@middleware3 .kube]#
(END)
更多推荐



所有评论(0)