39

Kubernetes 客户端工具概览

 4 years ago
source link: http://dockone.io/article/9849
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

我们都知道 kubectl ,但是随着过去几年 Kubernetes 的广泛使用,出现了许多新兴的客户端工具,这些工具能够改善您对 Kubernetes 集群的日常交互。

本文将简单介绍这类客户端应用,了解它是如何帮到你的。

k9s

k9s 提供了一个基于终端的 UI 与 Kubernetes 集群进行交互。这个 UI 看上去像是持续运行的 Linux 命令,例如 topk9s 持续监控 Kubernetes 集群的变化,并允许您与 Kubernetes 资源进行交互。

  • 类型:独立运行(后台使用 kubectl
  • 安装:在 发行页 提供适用于 Linux, Windows 和 Mac 安装的二进制 tar 压缩包。
  • Kubernetes 版本:目前 k9s 要求 Kubernetes 的版本不低于 1.13。
  • 社区: k9s 非常受欢迎,并且有一个很棒的社区共同努力以进一步优化它。加入 Slack 社区就在 K9ersSlack
  • 特点:支持 插件 ,可让您定义自己的集群命令。
eaIB3uu.png!web

tubectl

Tubectl 是对 kubectl 的简单但强大的封装,它降低了使用上下文、命名空间和智能匹配资源的复杂性。Tubectl 允许在上下文和命名空间之前无缝切换,例如对于命令 kubectl --context stagingkubectl --context production ,现在只需要输入 tubectl @sttubectl @prod 。同样,在命令 kubectl get pods -n kube-systemkube-system 也可以被替换,您只需输入命令 tubectl get pods +sys

  • 类型:独立运行(后台使用 kubectl
  • 安装:在 发行页 提供适用于 Linux, Windows 和 Mac 安装的二进制 tar 压缩包。
  • Kubernetes 版本:目前 tubectl 要求 Kubernetes的版本不低于 1.13。
  • 社区: tubecctl 社区挂在 slack.reconquest.io

<iframe height=498 width=510 src=" https://asciinema.org/a/233185" ;>

webkubectl

Web Kubectl 可以帮助您管理 kubernetes 证书并在 web 浏览器中运行 kubectl 命令,从而不必在本地 PC 或其他服务器上安装 kubectl ,而且 Web Kubectl 可用于团队。

  • 类型:独立运行(后台使用 kubectl
  • 安装:使用 Docker 镜像,安装简单。
    $ docker run --name=&quot;webkubectl&quot; -p 8080:8080 -d --privileged kubeoperator/webkubectl
  • Kubernetes 版本:与支持 kubectl 的 Kubernetes 集群兼容。
  • 社区: webkubectl 的讨论目前在 GitHub Repo 上进行。
  • 特点:单个 webkubectl 部署的多会话支持,以及完全的会话隔离。
yAfU3aZ.gif

kube-prompt

Kube-prompt 是一个具有自动完成功能的交互式 kubernetes 客户端。它使用与 kubectl 相同的命令,但是不需要输入 kubectl 前缀。因此,使用这个客户端不需要额外的学习成本。

  • 类型:独立运行(后台使用 kubectl
  • 安装:在 发行页 提供适用于 Linux, Windows 和 Mac 安装的二进制 tar 压缩包。
  • Kubernetes 版本:与支持 kubectl 的 Kubernetes 集群兼容。
  • 社区: kube-prompt 的讨论目前在 GitHub Repo 上进行。
uyemMju.gif

kubectl-tree

这是一个 kubectl 插件,可让您以普遍使用的树状图浏览 Kubernetes 对象之间的关系。树状图可以很好地直观地展示 Kubernetes 集群上存在的各种资源及其关系。

  • 类型: kubectl 插件
  • 安装:使用 krew 插件管理器将 kubectl-tree 安装到 kubectl 上,参考 文档
  • Kubernetes 版本:与支持 kubectl 的 Kubernetes 集群兼容。
  • 社区:GitHub 标星近1.5k的 kubectl-tree 非常受大家欢迎,关于它的讨论都在 GitHub Repo
bqQVBb2.png!web

其他有趣的 kubectl 插件

kubectx

kubectx 是管理kubectl并在其上下文之间切换的实用程序。参考:

https://github.com/ahmetb/kubectx

kubens

kubens 是在 Kubernetes 命名空间之间切换的实用程序。参考:

https://github.com/ahmetb/kubectx/#kubens1

kubectl trace

kubectl trace是一个 kubectl 插件,可让您在 Kubernetes 集群中调度 bpftrace 程序的执行。参考: https://github.com/iovisor/kubectl-trace

ksniff

一个 kubectl 插件,利用 tcpdump 和 Wireshark 在 Kubernetes 集群中的任何 pod 上启动远程捕获。参考: https://github.com/eldadru/ksniff

kubectl-unbound-pvc

一个小插件,用于列出未处于 Bound 状态的持久卷声明。参考:

原文链接:(翻译:解博)


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK