Kubectl-ice 插件展示集群容器配置信息更强大

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: kubectl插件ice的使用讲解

本期介绍一个实用的Kubectl插件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安装,也可以通过下载二进制包进行安装,或者不嫌麻烦源码直接安装

  • 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
  • 可结合标签使用

  • 检查容器状态(以及之前的状态)

  • 使用选择器,同时可以使用--sort进行排序,注意!的使用,表示倒序

相关文章
|
Kubernetes API Docker
k8s教程(pod篇)-容器获取pod信息(Downward API)
k8s教程(pod篇)-容器获取pod信息(Downward API)
1489 0
|
弹性计算 Kubernetes Linux
容器服务Kubernetes版添加已有节点FAQ
容器服务Kubernetes版添加已有节点FAQ
|
Kubernetes Shell Perl
文档解读 | K8S中的Pod和容器配置(一)
如何给运行在Kubernetes(K8S) Pod中的容器定义环境变量、命令行和参数? 给运行在Kubernetes Pod中的容器定义环境变量 开始之前 必须有一个Kubernets集群,和一个能和集群沟通的kubectl命令行工具。
5731 0
|
应用服务中间件 nginx Perl
Kubernetes----Pod配置容器名称与镜像
Kubernetes----Pod配置容器名称与镜像
444 0
|
调度 数据中心 网络架构
阿里云注册集群—混合集群—安装和配置容器网络插件
混合集群中的容器网络插件包括本地数据中心中运行的容器网络插件和云上计算节点上运行的容器网络插件两部分。本文将介绍混合集群中的容器网络插件配置。
507 0
阿里云注册集群—混合集群—安装和配置容器网络插件
|
Kubernetes 安全 API
自建Kubernetes集群如何使用免密组件拉取容器镜像
aliyun-acr-credential-helper是一个可以在ACK集群中免密拉取ACR个人版或企业版私有镜像的组件。该组件会默认安装在所有ACK集群中。本文列举四个场景介绍如何使用免密组件拉取私有镜像。
1096 0
|
运维 Kubernetes Cloud Native
如何使用 “自定义镜像” 创建容器服务 Kubernetes 集群
在使用容器服务创建 Kubernetes 集群的时候,默认是没有用户选择镜像的地方的,只能是系统镜像。但是对于一些客户而言,出于运维管理的需要,都希望可以安装一些特点的软件包。虽然说,目前也有比较绕的方案去解决类似的问题,例如在集群部署好以后,通过云助手等工具来协助完成软件包的安装,但是这种方式却不是最佳的解决方案。本文将教大家如何使用 “自定义镜像” 快速创建容器服务 Kubernetes 集群。
4256 0
如何使用 “自定义镜像” 创建容器服务 Kubernetes 集群
|
Kubernetes 监控 Cloud Native
如何使用 Terraform 管理容器服务 Kubernetes 集群
Terraform 是一款 Infrastructure as Code 的工具,可以将云端资源代码化。本文将为大家讲解如何使用 Terraform 来管理容器服务 Kubernetes 集群。
1008 0
如何使用 Terraform 管理容器服务 Kubernetes 集群
|
容器 Kubernetes
如何使用“自定义镜像”创建容器服务Kubernetes集群
背景 在使用容器服务创建Kubernetes集群的时候,默认是没有用户选择镜像的地方的,只能是系统镜像。但是对于一些客户而言,出于运维管理的需要,都希望可以安装一些特点的软件包。虽然说,目前也有比较绕的方案去解决类似的问题,例如在集群部署好以后,通过云助手等工具来协助完成软件包的安装,但是这种方式却不是最佳的解决方案。
4447 0