news 2026/9/3 1:26:59

kubectl plugin:neat 的安装与使用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
kubectl plugin:neat 的安装与使用

前言

在使用kubectl get $KIND -o yaml查看 k8s 资源时,输出结果中包含大量由集群自动生成的元数据(如managedFieldsresourceVersionuid等)。这些信息在实际复用 yaml 清单时需要手动清理,增加了额外的工作量。

使用 kubectl-neat 插件,可以自动移除这些由集群生成的冗余字段,仅保留有意义的内容,使 yaml 更加简洁,方便复用。

安装

插件方式安装

/* by 01130.hk - online tools website : 01130.hk/zh/calcpressure.html */ kubectl krew install neat ## 作为 kubectl 插件安装,使用方式为: kubectl neat

二进制方式安装

/* by 01130.hk - online tools website : 01130.hk/zh/calcpressure.html */ ## 版本选择: ## https://github.com/itaysk/kubectl-neat/releases ## 当前环境为 ubuntu 2404 LTS wget https://github.com/itaysk/kubectl-neat/releases/download/v2.0.4/kubectl-neat_linux_amd64.tar.gz tar xf kubectl-neat_linux_amd64.tar.gz mv ./kubectl-neat /usr/local/bin/ ## 创建别名(这里看个人习惯) vim /root/.bashrc alias kneat='kubectl-neat'

使用

本次使用二进制方式部署,实际上参数是相同的,没区别

root@network-demo:~# kubectl-neat help Usage: kubectl-neat [flags] kubectl-neat [command] ## 示例是通过 kubectl plugin 方式安装,使用二进制安装改成 kubectl-neat 就好 Examples: kubectl get pod mypod -o yaml | kubectl neat kubectl get pod mypod -oyaml | kubectl neat -o json kubectl neat -f - <./my-pod.json kubectl neat -f ./my-pod.json kubectl neat -f ./my-pod.json --output yaml Available Commands: ## 自动补全命令用的 completion Generate the autocompletion script for the specified shell get help Help about any command version Print kubectl-neat version Flags: -f, --file string file path to neat, or - to read from stdin (default "-") -h, --help help for kubectl-neat -o, --output string output format: yaml or json (default "yaml")

命令补全

简单来说就是按两下 tab 后自动补充没拼完的参数

💡 注:其实没啥用...他只能补全命令本身的参数,并不能补全 k8s 相关信息

root@network-demo:~# kubectl-neat completion --help Generate the autocompletion script for kubectl-neat for the specified shell. See each sub-command's help for details on how to use the generated script. Usage: kubectl-neat completion [command] Available Commands: bash Generate the autocompletion script for bash fish Generate the autocompletion script for fish powershell Generate the autocompletion script for powershell zsh Generate the autocompletion script for zsh Flags: -h, --help help for completion Global Flags: -o, --output string output format: yaml or json (default "yaml")
## 当前环境使用 bash root@network-demo:~# hostnamectl Static hostname: network-demo Icon name: computer-vm Chassis: vm Virtualization: kvm Operating System: Ubuntu 24.04.3 LTS Kernel: Linux 6.8.0-88-generic Architecture: x86-64 ## 添加命令补全 echo "source <(kneat completion bash)" >> ~/.bashrc && source ~/.bashrc ## 查看效果 ## 上面说没啥用的地方就在这...实际上能用的参数只有 get(kubectl-neat 自己的参数) ## 当你补全 get 后就会发现他无法识别 k8s 资源 root@network-demo:~# kubectl-neat completion (Generate the autocompletion script for the specified shell) help (Help about any command) get version (Print kubectl-neat version)

使用方式

## 这里我直接将 kubectl get -o yaml 与 kubectl-neat get -o yaml 输出对比 kubectl-neat get -- pods -n deepflow deepflow-server-fc484c85-p67gl -o yaml > deepflow-kneat.yaml kubectl get pods -n deepflow deepflow-server-fc484c85-p67gl -o yaml > deepflow-kubectl.yaml
## 通过 icdiff 输出两个文件的对比结果,这里为了方便大家看,只把删除的内容放上来了 root@network-demo:~# icdiff deepflow-kubectl.yaml deepflow-kneat.yaml creationTimestamp: "2026-01-23T02:24:57Z" generateName: deepflow-server-fc484c85- generation: 1 ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: deepflow-server-fc484c85 uid: 528ab77f-67ba-4099-8771-bfe06ca9ce2f resourceVersion: "4864722" uid: 0d5ff97b-9c48-4abf-be8b-d2b76f7a14d2 nodeAffinity: {} apiVersion: v1 apiVersion: v1 apiVersion: v1 apiVersion: v1 apiVersion: v1 scheme: HTTP successThreshold: 1 timeoutSeconds: 1 protocol: TCP protocol: TCP protocol: TCP protocol: TCP scheme: HTTP periodSeconds: 10 successThreshold: 1 timeoutSeconds: 1 resources: {} securityContext: {} terminationMessagePath: /dev/termination-log terminationMessagePolicy: File dnsConfig: {} dnsPolicy: ClusterFirst enableServiceLinks: true nodeName: network-demo restartPolicy: Always schedulerName: default-scheduler securityContext: {} serviceAccount: deepflow-server terminationGracePeriodSeconds: 30 defaultMode: 420 defaultMode: 420 apiVersion: v1 status: ## 下面是所有 status 内容...
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/3 0:44:10

导师推荐9个AI论文平台,专科生轻松搞定毕业论文!

导师推荐9个AI论文平台&#xff0c;专科生轻松搞定毕业论文&#xff01; AI工具如何助力论文写作&#xff1f;专科生也能轻松应对 随着人工智能技术的不断进步&#xff0c;越来越多的学生开始借助AI工具来提升论文写作效率。尤其是对于专科生而言&#xff0c;面对毕业论文的压…

作者头像 李华
网站建设 2026/8/31 0:30:19

大型装配式建筑物料搬运优化算法【附代码】

✨ 本团队擅长数据搜集与处理、建模仿真、程序设计、仿真代码、论文写作与指导&#xff0c;毕业论文、期刊论文经验交流。✅ 专业定制毕设、代码✅ 成品或定制&#xff0c;查看文章底部微信二维码(1)装配式建筑工地物料搬运系统特征与成本构成分析装配式建筑作为建筑工业化的重…

作者头像 李华
网站建设 2026/8/27 20:03:13

继续教育毕业论文查重新规:知网查重降到多少才安全?

✨ 本团队擅长数据搜集与处理、建模仿真、程序设计、仿真代码、论文写作与指导&#xff0c;毕业论文、期刊论文经验交流。✅ 专业定制毕设、代码✅ 成品或定制&#xff0c;查看文章底部微信二维码继续教育本科论文&#xff0c;知网查重率控制在20%以内相对安全&#xff0c;部分…

作者头像 李华
网站建设 2026/9/3 0:49:07

深圳调研速腾聚创80后邱纯鑫成果-万祥军| 国研智库·中国国政研究

深圳调研速腾聚创80后邱纯鑫成果-万祥军| 国研智库中国国政研究2026年1月&#xff0c;深圳机器人谷迎来了一场意义深远的科技调研。“国家总理新年首站选择广东&#xff0c;在考察中特别关注了人工智能与机器人产业的前沿突破。”国际科学院组织代表兼国际科学院委员会执委万祥…

作者头像 李华
网站建设 2026/9/2 16:30:37

深度测评继续教育AI论文工具TOP10:选对工具轻松过关

深度测评继续教育AI论文工具TOP10&#xff1a;选对工具轻松过关 为什么需要一份权威的继续教育AI论文工具榜单 随着人工智能技术在学术领域的广泛应用&#xff0c;越来越多的继续教育学员开始依赖AI写作工具提升论文撰写效率。然而&#xff0c;市场上工具繁多&#xff0c;功能参…

作者头像 李华