安利下下自己写的 macOS 下的 kubernetes 客户端

2020-08-24 15:32:23 +08:00
 loulan1996

1. 介绍

https://github.com/kubedoctor/kubedoctor

在前些日子的日常开发中,萌生了写一个自定义脚本 Action 的 macOS kubernetes 客户端想法。比如在对多集群时,通过鼠标右键操作预先定义的脚本,减少对资源重复动作的操作,提高一点效率,还不容易眼花。

目前只有自定义脚本 Action,和 YAML 预览,编辑还不太成熟,对频繁编辑需求可以自定义 Action 比如打开 vim 、VSCode 。

2. 特点:

  1. 面向资源脚本 Action 菜单;
  2. 原生语言编写,占用内存低。

3. 使用

  1. 创建 vim ~/.kube/kd.yml 配置文件
  2. 定义相关 Action,例如下面的例子:
version: 1
resourcesKind:
  # 模式,这个暂时未实现,是根据过滤模式列出关心的资源
  mode: ""
  list: ["pods", "deployments.app"]
rightMenus:
  common:
    - name: "概述"
      script: "kubectl describe {{ data.kind }} {{ data.metadata.name }} -n {{ data.metadata.namespace }} --context {{ context }}"
      # action 支持复制到剪切板和直接运行
      #   clipboard: 复制到剪切板
      #   shell: 直接运行
      action: clipboard
    - name: "编辑"
      script: "{{ kubectl }} get {{ data.kind }} {{ data.metadata.name }} -o yaml -n {{ data.metadata.namespace }} --context {{ context }} > ${TMPDIR}/{{ data.metadata.name }}.yaml && /usr/local/bin/code ${TMPDIR}/{{ data.metadata.name }}.yaml"
      action: shell
    - name: "删除"
      script: "kubectl delete {{ data.kind }} {{ data.metadata.name }} -n {{ data.metadata.namespace }} --context {{ context }}"
      action: clipboard
  Kind:
  - name: pods
    group:
      - - name: "日志"
          script: "kubectl logs {{ data.metadata.name }} -n {{ data.metadata.namespace }} --context {{ context }} -f --tail 300"
          action: clipboard

4. 想发:

发在 V2EX 论坛,如果大家喜欢,点个 Start。 后续会加一些功能比如 Watch 资源刷新和 Helm Isito 相关的支持。

1584 次点击
所在节点    Kubernetes
1 条回复
ErwinCheung
2020-08-24 15:38:35 +08:00
非常炫酷 占个沙发

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/700972

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX