Kubectl-Ice: 一款超强大的 Kubernetes Pod 资源终端管理工具
kubectl-ice
,可以让你快速地查看POD
中容器正在运行的配置信息,例如你可以查看所有POD内容器镜像的拉取策略、挂载卷、端口以及可执行配置等信息,同时结合metrics server
你也可以查看容器运行的CPU和内存等相关指标信息。功能
仅使用读取权限,不会调用写操作 默认会列举出当前集群下命名空间内所有pod中的容器相关配置, kubectl-ice
基本支持所有kubectl的选项参数;例如指定-A
指定所有命令空间下的pod中的所有容器。支持选择器,与在kubectl中的使用方式类似 支持对输出的内容进行排序 用match标志从输出中排除行,这对于排除内存或cpu使用率低的容器很有用。 Exclude rows from output using the match flag, useful to exclude containers with low memory or cpu usage
使用oddity标志只列出不在范围内的cpu和内存结果。 List only cpu and memory results that dont fall within range using the oddities flag
安装
安装比较简单,可以通过kubectl插件管理器krew[1]安装,也可以通过下载二进制[2]包进行安装,或者不嫌麻烦源码直接安装
krew安装
$ kubectl krew install ice
源码安装
$ git clone https://github.com/NimbleArchitect/kubectl-ice.git
$ cd kubectl-ice
$ make bin
使用帮助
kubectl-ice command # 检索在容器级别指定的命令行和任何参数
kubectl-ice cpu # 返回CPU请求的大小,限制和每个容器的使用
kubectl-ice help # 显示帮助信息
kubectl-ice image # 列出每个容器的镜像以及镜像的拉取策略
kubectl-ice ip # 列出名称空间中所有pods的IP地址
kubectl-ice memory # 返回每个容器的内存请求大小、限制和使用情况
kubectl-ice ports # 显示pod内容器暴露的端口
kubectl-ice probes # 显示每个容器配置的启动、就绪和活动探针的详细信息
kubectl-ice restarts # 显示pod中每个容器的重启计数
kubectl-ice status # 列出pod中每个容器的状态
kubectl-ice volumes # 列出所有具有挂载点的容器卷
使用案例
基础
显示指定pod内容器的内存指标信息(T: type,其值有I/init容器,S/standard标准容器)
$ kubectl-ice memory resource-test-6c6f556b4f-lmngp
T CONTAINER USED REQUEST LIMIT %REQ %LIMIT
S resource 101.18Mi 500Mi 1Gi 20.24 9.88
可结合标签使用
检查容器状态(以及之前的状态)
显示pod内容器镜像的拉取策略
显示pod内容器暴露的端口以及挂载卷信息
使用选择器,同时可以使用 --sort
进行排序,注意!
的使用,表示倒序
更多使用帮助信息可以参考官方说明[3] 更多使用案例可以参考官方说明[4]
END
看完本文有收获?请转发分享给更多人
参考资料
END
看完本文有收获?请转发分享给更多人
krew: https://github.com/kubernetes-sigs/krew
[2]kubectl-ice: https://github.com/NimbleArchitect/kubectl-ice/releases
[3]kubectl-ice usage: https://github.com/NimbleArchitect/kubectl-ice/blob/main/docs/usage.md
[4]example: https://github.com/NimbleArchitect/kubectl-ice/blob/main/docs/examples.md
本文转载自:「云原生生态圈」,原文:https://url.hi-linux.com/jouOm,版权归原作者所有。