Kube-Capacity: 一款超实用的 Kubernetes 资源使用量终端管理工具

Kube-Capacity: 一款超实用的 Kubernetes 资源使用量终端管理工具

来源:admin 发布时间:2022-08-15 11:03:12 点击数:


长治网络安全等级保护,长治等保,长治网安备案,网站制作,网站建站,网站运维,Linux系统运维,Windows系统运维,服务器运维,环境部署,环境搭建,私有云存储

使用 Kube-capacity CLI 查看 Kubernetes 资源请求、限制和利用率

Kube-capacity 是一个简单而强大的 CLI,它提供了Kubernetes集群中资源请求、限制和利用率的概览。它将输出的最佳部分结合kubectl topkubectl describe一个易于使用的集中于集群资源的 CLI 中。

长治网络安全等级保护,长治等保,长治网安备案,网站制作,网站建站,网站运维,Linux系统运维,Windows系统运维,服务器运维,环境部署,环境搭建,私有云存储

不过像这样的工具确实好用一些,比如我想看这个kube-system下有哪些pod有没有设置requestlimit的时候,实际上,我需要输入一段很长的命令才能列出,而且需要一些调试,这看起来不是特别方便

# kubectl get pod -n kube-system  -o=custom-columns=NAME:.metadata.name,NAMESPACE:.metadata.namespace,PHASE:.status.phase,Request-cpu:.spec.containers\[0\].resources.requests.cpu,Request-memory:.spec.containers\[0\].resources.requests.memory,Limit-cpu:.spec.containers\[0\].resources.limits.cpu,Limit-memory:.spec.containers\[0\].resources.limits.memory
NAME                                      NAMESPACE    PHASE    Request-cpu  Request-memory  Limit-cpu  Limit-memory
calico-kube-controllers-7d4c6544cc-g6x6q  kube-system  Running  <none>        <none>          <none>      <none>
calico-node-4fjn8                          kube-system  Running  250m          <none>          <none>      <none>
calico-node-7nbpj                          kube-system  Running  250m          <none>          <none>      <none>
calico-node-qvdlr                          kube-system  Running  250m          <none>          <none>      <none>
coredns-7977f69688-4nz9q                  kube-system  Running  100m          70Mi            <none>      170Mi
coredns-7977f69688-frkt5                  kube-system  Running  100m          70Mi            <none>      170Mi
etcd-k8s-master1                          kube-system  Running  100m          100Mi            <none>      <none>
etcd-k8s-master2                          kube-system  Running  100m          100Mi            <none>      <none>
etcd-k8s-master3                          kube-system  Running  100m          100Mi            <none>      <none>
kube-apiserver-k8s-master1                kube-system  Running  250m          <none>          <none>      <none>

那么这个工具实际上解决的问题就是帮助我们快速查看概览整个集群和pod的资源配置情况

安装

Go 二进制文件由GoReleaser随每个版本自动构建。这些可以在此项目的 GitHub发布页面上访问。

https://github.com/goreleaser/goreleaser

https://github.com/robscott/kube-capacity/releases

Homebrew

这个项目可以用Homebrew安装:

brew tap robscott/tap
brew install robscott/tap/kube-capacity

Krew

这个项目可以用Krew安装:

kubectl krew install resource-capacity

用法

默认情况下,kube-capacity 将输出一个节点列表,其中包含 CPU 和内存资源请求的总数以及在它们上运行的所有 pod 的限制。对于具有多个节点的集群,第一行还将包括集群范围的总数。该输出将如下所示:

长治网络安全等级保护,长治等保,长治网安备案,网站制作,网站建站,网站运维,Linux系统运维,Windows系统运维,服务器运维,环境部署,环境搭建,私有云存储

包括 Pod

对于更详细的输出,kube-capacity 可以在输出中包含 pod。当-p--pods被传递给 kube-capacity 时,它将包含如下所示的特定于 pod 的输出

长治网络安全等级保护,长治等保,长治网安备案,网站制作,网站建站,网站运维,Linux系统运维,Windows系统运维,服务器运维,环境部署,环境搭建,私有云存储

包括利用率

为了帮助了解资源利用率与配置的请求和限制的比较,kube-capacity 可以在输出中包含利用率指标。请务必注意,此输出依赖于集群中的metrics-server正常运行。当-u--util被传递给 kube-capacity 时,它将包含如下所示的资源利用率信息:

长治网络安全等级保护,长治等保,长治网安备案,网站制作,网站建站,网站运维,Linux系统运维,Windows系统运维,服务器运维,环境部署,环境搭建,私有云存储

包括 Pod 和利用率

对于更详细的输出,kube-capacity 可以在输出中包含 pod 和资源利用率。当--util--pods传递给 kube-capacity 时,它将产生如下所示的宽输出:

长治网络安全等级保护,长治等保,长治网安备案,网站制作,网站建站,网站运维,Linux系统运维,Windows系统运维,服务器运维,环境部署,环境搭建,私有云存储

值得注意的是,来自 pod 的利用率数字可能不会与总节点利用率相加。与节点和集群级别数字代表 pod 值总和的请求和限制数字不同,节点指标直接来自指标服务器,并且可能包括其他形式的资源利用率。

排序

要突出显示具有最高指标的节点、pod 和容器,您可以按各种列进行排序:

长治网络安全等级保护,长治等保,长治网安备案,网站制作,网站建站,网站运维,Linux系统运维,Windows系统运维,服务器运维,环境部署,环境搭建,私有云存储

显示 Pod 计数

要显示每个节点和整个集群的 pod 数量,可以通过--pod-count参数:

长治网络安全等级保护,长治等保,长治网安备案,网站制作,网站建站,网站运维,Linux系统运维,Windows系统运维,服务器运维,环境部署,环境搭建,私有云存储

按标签过滤

对于更高级的使用,kube-capacity 还支持按 pod、命名空间和/或节点标签进行过滤。以下示例展示了如何使用这些过滤器:

kube-capacity --pod-labels app=nginx 
kube-capacity --namespace 默认
kube-capacity --namespace-labels team=api
kube-capacity --node-labels kubernetes.io/role=node

JSON 和 YAML 输出

默认情况下,kube-capacity 将以表格格式提供输出。要以 JSON YAML 格式查看此数据,可以使用输出标志。以下是一些示例命令:

kube-capacity --pods --output json
kube-capacity --pods --containers --util --output yaml

支持的标志

长治网络安全等级保护,长治等保,长治网安备案,网站制作,网站建站,网站运维,Linux系统运维,Windows系统运维,服务器运维,环境部署,环境搭建,私有云存储

先决条件

任何请求集群利用率的命令都依赖于集群上运行的metrics-server。如果尚未安装,您可以使用官方helm chart进行安装。

https://github.com/helm/charts/tree/master/stable/metrics-server

https://github.com/kubernetes-incubator/metrics-server


本文转载自:「云原生CTO」,原文:https://url.hi-linux.com/rntZO,版权归原作者所有。


长治等保,等保,网络安全,网络等保,等级保护,网络安全等保,网络安全等级保护,长治网络安全等级保护,等保公司,等保测评,等级保护2.0,定级,定级备案,等保备案,长治等保备案,山西等保备案,系统测评,系统备案,网安备案,等保备案服务,等保咨询,公安局备案,二级等保,三级等保,三级测评,系统整改,做等保的公司,网站建设,企业网站建设,企业网站开发,企业网站运维,Linux系统运维,Windows系统运维,服务器运维,环境部署,环境搭建,私有云存储

Powered by 园鉴科技 ©2021-2024  www.anycastyun.com

首 页
产 品
方 案
客 服