Kubernetes-使用Kubectl显示当前Pod与容量

时间:2019-10-02 12:47:36

标签: kubernetes kubectl

Kubernetes仪表板能够显示每个节点的“当前正在运行的Pod / Pod容量”。但是,当我尝试使用kubectl获取相同的信息时,我必须运行两个命令:

kubectl describe node | grep -E (^Name:|^Non-terminated)

其中列出了“节点上当前正在运行的容器”,并且

kubectl get nodes -o=custom-columns=NAME:.metadata.name,CAPACITY:.status.capacity.pods

显示节点的容量

有人知道我仅使用一个命令就能获得类似于以下的输出吗?

NAME     CURRENT   CAPACITY
node_1   7         15
node_2   8         15
node_3   15        15

谢谢!

1 个答案:

答案 0 :(得分:0)

没有一个命令

可以通过结合这两个命令来编写脚本来实现这一目的。

请注意,使用Pod数量等基于整数的指标可能会产生误导,因为Pod消耗的空间和cpus会有所不同。在达到节点容器计数容量之前,您可能会用完CPU和内存。

您可以使用以下命令检查可用资源:kubectl top nodes

  

节点容量

     

节点的容量(CPU数量和内存量)是一部分   节点对象。通常,节点注册自己并报告   它们在创建节点对象时的容量。如果你在做   manual node administration,   那么添加节点时需要设置节点容量。

     

Kubernetes调度程序确保有足够的资源用于   节点上的所有Pod。它检查以下请求的总和   节点上的容器不大于节点容量。它   包括所有由kubelet启动的容器,但不包括容器   由container runtime直接开始   也不在容器外部运行任何进程。

P.S。

在Debian上,第一个命令必须稍作修改才能起作用:

kubectl describe node | grep -E "(^Name:|^Non-terminated)"