我有一个Kubernetes集群,想知道我的容器使用多少磁盘空间。我说的不是挂载的卷。
我可以通过使用docker system df -v
或docker ps -s
之类的docker命令来获取此信息,但是我不想连接到每个工作节点。
是否有一种方法可以通过kubectl
获取容器的磁盘使用率,或者有kubelet指标可以从中获取此信息?
答案 0 :(得分:5)
是的,但是目前还没有使用kubectl,您可以通过kubelet通过kube-apiserver(代理)或直接调用kubelet HTTP服务器端点(默认端口{{1} }。磁盘指标通常在10250
端点上可用,并且您还可以在/stats/summary
端点上找到一些cAdvisor指标。
例如,要获取通过kube-apiserver返回的第一个容器中的第一个容器的“ usedBytes”:
/metrics/cavisor
不记名令牌可以是绑定到ClusterRole的服务帐户令牌,如下所示:
$ curl -k -s -H 'Authorization: Bearer <REDACTED>' \
https://kube-apiserver:6443/api/v1/nodes/<node-name>/proxy/stats/summary \
| jq '.pods[0].containers[0].rootfs.usedBytes'