Kubernetes(k8s) kubectl plugin常用命令

kubectl 在 $HOME/.kube 目录中查找一个名为 config 的配置文件。 可以通过设置 KUBECONFIG 环境变量或设置 --kubeconfig 参数来指定其它 kubeconfig 文件。本文主要介绍Kubernetes(K8s)中kubectl plugin常用命令。

1、kubectl plugin简介

kubectl plugin是提供与插件交互的实用程序。插件提供的扩展功能不是主要命令行发行版的一部分。有关如何编写自己的插件的更多信息,请参考文档和示例。发现和安装插件最简单的方法是通过kubernetes子项目krew。

安装krew参考文档:

https://krew.sigs.k8s.io/docs/user-guide/setup/install/

2、kubectl plugin语法

kubectl plugin [flags]
kubectl plugin list

kubectl plugin list列出用户PATH中所有可用的插件文件。

可用的插件文件是:-可执行文件-用户PATH上的任何位置-以 "kubectl-" 开头。

使用kubectl plugin list时 如果name-only标记为true,则只显示每个插件的二进制名称,而不是其完整路径。

3、kubectl kerw命令

1)更新本地插件索引

kubectl krew update

2)列出所有可用的插件

kubectl krew search

3)安装插件

kubectl krew install ice

4)卸载插件

kubectl krew uninstall ice

5)升级插件

kubectl krew upgrade

4、常用插件

1)ns 插件

ns是一个可以在kubernetes集群里面切换命名空间的插件。安装使用如下命令:

kubectl krew install ns

2)images 插件

images插件允许你查看当前命名空间(甚至整个集群)Workload中使用的镜像信息。当前支持几个功能:列出所有命名空间workload的镜像信息、指定字段展示镜像的关联k8s信息、指定单独的命名空间展示镜像。安装使用如下命令:

kubectl krew install images

3)view-secret 插件

view-secret 插件以方便的查看 Kubernetes 中的 Secret 内容,secret里面的信息是经过base64编码后存储。

需要从secret里面读取内容在做decode操作如下:

kubectl get secret  -o=jsonpath='{.data.password}' |base64 -d

安装使用如下命令:

kubectl krew install view-secret

4)view-allocations 插件

view-allocations当前能够根据resource,node和pod三个维度展示集群当前的资源分配状况。如kubernetes集群有GPU节点,采用view-allocations也可以快速查到你的GPU显卡分配状态。

5)access-matrix 插件

access-matrix 插件显示服务器资源的 RBAC 访问矩阵。

安装使用如下命令:

kubectl krew install access-matrix

6)ca-cert 插件

ca-cert 插件打印当前集群的 PEM CA 证书。

安装使用如下命令:

kubectl krew install ca-cert

7)cert-manager 插件

cert-manager 插件用来管理集群内的证书资源。需要配合在 K8S 集群中安装 cert-manager 来使用。

8)cost 插件

kubectl-cost 是一个 kubectl 插件,通过 kubeccost api 提供简单的 CLI 访问 Kubernetes 成本分配指标。它允许开发人员、devops 和其他人快速确定 Kubernetes 工作负载的成本和效率。

安装使用如下命令:

kubectl krew install cost

9)get-all 插件

kubectl get-all用来get 到 Kubernetes 的所有资源。

安装使用如下命令:

kubectl krew install get-all

10)images 插件

images 插件显示集群中使用的容器镜像。

安装使用如下命令:

kubectl krew install images

11)kubesec-scan 插件

kubesec-scan 插件可以使用 kubesec.io 扫描 Kubernetes 资源。

安装使用如下命令:

kubectl krew install kubesec-scan

推荐阅读
cjavapy编程之路首页