切换k8s上下文有多快

描述

 

在多个集群环境中工作还是有挑战的。执行命令发现选择错了集群的情况很容易发生。如果你每天多次切换集群,会很方便快速。但是每次你想要切换集群时要执行kubectl config use-context 命令就会很低效。 今天介绍3个工具会让你在多k8s集群环境中工作的很轻松。我将从以下几个方面来评估工具实用性:

速度
如果你有多个k8s集群可选择,你切换k8s上下文有多快?你还记得所有的集群上下文?

灵活性
工具是否具备高级特性比如支持多config文件?

安全:
可以同时打开多个终端,每个终端都运行在自己集群上下文中?在一个终端切换集群上下文会影响其他终端,导致出错概率更大?

根据上面几个评估指标,下面我们来看看以下3个工具:

Kubectx

Kubectx是最流行的切换k8s集群工具,但是它功能比较少!可以显示你所有的kubeconfig列表供你选择。就这些! 远程系统 kubectx-demo

安装Kubectx

Kubectx 适用于所有主要平台,Linux、Windows 和 macOS。它可以使用helm 这样的本地包管理器来安装。你还可以使用 kubectl krew install ctx 将其安装为 Kubectl 插件。更多细节参考该链接[https://github.com/ahmetb/kubectx#installation]。

Kubectx缺点

更改 Kubernetes上下文时,kubectx 会为所有终端会话全局更改,因此多个终端不能独立管理不同的集群。

Kubie

Kubie 是kubectx 的替代品。它快速、灵活,并且不会影响你的Kubeconfig。 远程系统 kubie

使用kubie ctx切换当前shell的Kubernetes 上下文。

kubie exec 允许你在特定上下文中运行单个kubectl 命令。

可以管理多个kubeconfig文件并通过修改 ~/.kube/kubie.yaml 文件中的设置来自定义 Kubie 的行为。

安装Kubie

Kubie安装包适用于macOS 和Linux,不适用于 Windows。详细内容参考该链接[https://github.com/sbstp/kubie#installation]。

Kubeswitch

Kubeswitch具有Kubectx 和Kubie 的核心功能。它是明显的赢家,也是我们将在未来使用的工具。 远程系统 kubeswitch

使用Hooks(类似于 Git Hooks),可以在你选择的时间自动运行可执行文件/内联 shell 命令。

通过启用搜索索引功能,可以在数百个Kubernetes上下文中进行闪电般的快速搜索。这会索引跨多个本地和远程系统的所有上下文。请注意,你必须手动刷新索引以防止结果过时。

其他功能

更改历史记录 - 你之前切换到的所有上下文的列表。

上下文别名 - 给你的上下文一个别名,以帮助快速访问。

终端隔离——从不同的终端窗口访问多个集群。

安装Kubeswitch

如果你使用的不是 MacOS,从源代码或二进制文件下载和安装可能会有点复杂。但这绝对值得你花时间。详细说明参考这个链接[https://github.com/danielfoehrKn/kubeswitch/blob/master/docs/installation.md]。

kubectx vs kubie vs kubeswitch

  
      审核编辑:彭静
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分