我有一个在同一个 k8s 集群下创建的命名空间列表,我想找出每个命名空间的资源(CPU、内存)使用情况。有什么我可以使用的命令吗?
最佳答案
是的。您可以使用
$ kubectl -n <nampespace> top pod
例如:
$ kubectl top pod -n kube-system
NAME CPU(cores) MEMORY(bytes)
calico-node-xxxxx 17m 166Mi
coredns-xxxxxxxxxx-xxxxx 2m 11Mi
coredns-xxxxxxxxxx-xxxxx 3m 11Mi
etcd-ip-x-x-x-x.us-west-2.compute.internal 19m 149Mi
kube-apiserver-ip-x-x-x-x.us-west-2.compute.internal 39m 754Mi
kube-controller-manager-ip-x-x-x-x.us-west-2.compute.internal 20m 138Mi
kube-proxy-xxxxx 5m 12Mi
kube-scheduler-ip-x-x-x-x.us-west-2.compute.internal 6m 17Mi
metrics-server-xxxxxxxxxx-xxxxx 0m 15Mi
如果需要总数,则需要将 CPU 和 MEMORY 列上的所有条目相加。
请注意,对于
kubectl top
要工作,您需要拥有 metrics-server适本地设置和配置。 (较旧的集群使用 heapster )
关于kubernetes - 如何在 k8s 中转储每个命名空间的资源(CPU、内存)使用情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54356588/