我们正在使用kubelet/stats/summary
端点。
我们注意到,返回的度量并不总是存在,在某些情况下可能会丢失。
特别地,我们对minikube
中缺失但存在于其他环境中的Rootfs.UsedBytes
感兴趣。
从kubelet检索/stats/summary
的命令,注意端口可以在不同的k8s风格中变化
token=$(k get secrets <service-account-token-with-enough-privileges> -o json
| jq .data.token -r | base64 -d -)
k run curler --rm -i --restart=Never --image nginx --
curl -X GET https://<nodeIP>:10250/stats/summary --header "Authorization: Bearer $token" --insecure
"pods": [
{
...
"containers": [
{
...
"rootfs": {
...
"usedBytes": 36864,
...
}
- 为什么
- 有没有类似的指标更可靠
- 可以在Minikube中添加任何内容来启用它吗
编辑:
问题可能与minikube 的--driver=docker选项有关
为了澄清,我提出了社区wiki的答案。
通过将驱动程序更改为Hyperkit,解决了此处的问题。
根据文件:
HyperKit是macOS系统管理程序的开源系统管理程序,针对轻量级虚拟机和容器部署进行了优化。
有两种安装HyperKit的方法(如果你已经安装了Docker for Desktop,你什么都不需要做——你已经有了HyperKit(:
- 您可以从GitHub安装HyperKit
- 如果您有Brew Package Manager,请运行以下命令:
brew install hyperkit
另请参阅本参考资料。