kubectl 多环境切换

Posted catoop

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kubectl 多环境切换相关的知识,希望对你有一定的参考价值。

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"

在配置文件中定义了4个 context 环境,分别为 myk8smyk8s-middleware2myk8s-server04myk8s-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)

以上是关于kubectl 多环境切换的主要内容,如果未能解决你的问题,请参考以下文章

k8s 使用新增user配置kubectl在各个节点都可运行

pytest + yaml 框架 -13.多环境配置切换

pytest + yaml 框架 -13.多环境配置切换

单页面应用和多页面应用的区别对比

Android中切换标签片段之间的延迟

在Android Studio片段之间切换时地图片段不隐藏