关于kubeconfig多集群切换
时间:2022-07-23
本文章向大家介绍关于kubeconfig多集群切换,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
多集群的切换是K8s运维中比不可少的问题,常见的基于多个集群进行切换的方法有三种:
- 切换config文件
- 通过context进行集群切换
- 用kubectl-plugins进行集群切换
切换config文件
我们先看看放在.kube
下默认的config集群:
$ kubectl config view
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: DATA+OMITTED
server:
name: kubernetes
contexts:
- context:
cluster: kubernetes
user: "212785087522004927"
name: 212785087522004927-c02e82b6adaf044bd94d251fea1279648
current-context: 212785087522004927-c02e82b6adaf044bd94d251fea1279648
kind: Config
preferences: {}
users:
- name: "212785087522004927"
user:
client-certificate-data:
client-key-data:
通过export
更改默认集群配置:
$ export KUBECONFIG=$HOME/.kube/rancher-config
查看:
$ kubectl config view
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: DATA+OMITTED
server:
name: stage
contexts:
- context:
cluster: stage
user: stage
name: stage
current-context: stage
kind: Config
preferences: {}
users:
- name: stage
user:
token:
这种方法就是特别麻烦,每次切换都要通过export设置,非常麻烦,同时也不方便。
通过context进行集群切换
把要切换的所有config文件添加到KUBECONFIG
环境变量中
$ export KUBECONFIG=$HOME/.kube/config:$HOME/.kube/rancher-config
或者可以将命令直接写到.bashrc
文件中,这样就不需要每次手动设置。
通过kubectl config view
可以看到这两个文件已经合并到一起了:
$ kubectl config view
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: DATA+OMITTED
server:
name: kubernetes
- cluster:
certificate-authority-data: DATA+OMITTED
server:
name: stage
contexts:
- context:
cluster: kubernetes
user: "212785087522004927"
name: 212785087522004927-c02e82b6adaf044bd94d251fea1279648
- context:
cluster: stage
user: stage
name: stage
current-context: 212785087522004927-c02e82b6adaf044bd94d251fea1279648
kind: Config
preferences: {}
users:
- name: "212785087522004927"
user:
client-certificate-data:
client-key-data:
- name: stage
user:
token:
合并一起后就可以通过use-context
切换上下文来切换集群:
# 切换stage集群
$ kubectl config use-context stage
Switched to context "stage".
切换到第二个集群:
$ kubectl config use-context 212785087522004927-c02e82b6adaf044bd94d251fea1279648
Switched to context "212785087522004927-c02e82b6adaf044bd94d251fea1279648".
但这种方法不方便的地方就在如果context很多的时候,不方便查看。
通过kubectl-plugins切换集群
针对不方便查看我们可以永kubectl-plugins
来解决。kubectl-plugins 是一个对kubectl
的增强插件。
kubectl-glugins
安装:
git clone https://github.com/jordanwilson230/kubectl-plugins.git
cd kubectl-plugins
./install-plugins.sh
source ~/.bash_profile
通过switch cluster
切换集群:
$ kubectl switch cluster stage
CURRENT NAME CLUSTER AUTHINFO NAMESPACE
212785087522004927-c02e82b6adaf044bd94d251fea1279648 kubernetes 212785087522004927 stage
* stage stage stage
- 【设计模式】—— 享元模式Flyweight
- 【设计模式】—— 外观模式Facade
- 【设计模式】—— 装饰模式Decorator
- 【设计模式】—— 组合模式Composite
- 【设计模式】—— 桥接模式Bridge
- 【插件开发】—— 1 Eclipse插件开发导盲
- 【插件开发】—— 4 SWT编程须知
- 【插件开发】—— 5 SWT控件以及布局使用
- 【插件开发】—— 6 SWT 复杂控件使用以及布局
- 【插件开发】—— 7 SWT布局详解,不能再详细了!
- 【插件开发】—— 8 IPreferenceStore,插件的键/值存储!
- 【插件开发】—— 9 编辑器代码分块着色-高亮显示!
- 【插件开发】—— 10 JFace开发详解
- 【插件开发】—— 12 GEF入门
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- LeetCode120|二维数组中的查找
- LeetCode129|不用加减乘除做加法
- LeetCode128|二叉树的最大深度
- LeetCode127|检查平衡性
- 详解Android端与JavaWeb传输加密(DES+RSA)
- Android编程实现下载时主界面与详细界面一致更新的方法
- 详解Android Studio 3.0的新特性与适配
- Android开发实现Launcher3应用列表修改透明背景的方法
- Android开发中方向传感器定义与用法详解【附指南针实现方法】
- Android利用ViewDragHelper轻松实现拼图游戏的示例
- ListView实现聊天列表之处理不同数据项
- 运算符
- ViewPager实现带引导小圆点与自动跳转的引导界面
- Android开发中Launcher3常见默认配置修改方法总结
- Android辅助功能实现自动抢红包(附源码)