找出 Kubernetes 节点的磁盘 space
Finding out disk space of Kubernetes node
这是一个完全菜鸟的 Kubernetes 问题。我已经搜索过这个,但似乎找不到确切的答案。但这可能只是因为没有完全了解 Kubernetes。我在三个节点上部署了一些 pods,我的问题很简单。
- 如何查看节点上的总磁盘 space?
- 我如何查看每个 pod 占用了多少 space?
我假设您使用的是 AKS,因为这就是问题的标签。
工作节点只是标准的 VM,带有整个负载的脚本到 bootstrap Kubernetes 集群。磁盘 space 非常重要,因为您下载的每个图像层都将缓存在服务器上,默认情况下,这些服务器的硬盘驱动器 space 可以非常小(30GB IIRC),除非在创建时进行调整。分区模式也没有针对容器交付进行特别调整。
您可以使用 OMS 和 Azure 中的容器监控解决方案来深入了解您的集群运行状况。 https://docs.microsoft.com/en-us/azure/azure-monitor/insights/containers 或如上所述 - 您可以使用 prometheus / Grafana 或只是 ssh in 和 df -h
看看发生了什么(尽管我不提倡 ssh 访问节点)。
节点上的磁盘 space 与容器安装的 PV 非常不同。
关于每个节点的最大数量 pods - 我认为默认值为 30,除非您专门使用更大的数量构建集群。
要计算总磁盘 space,您可以使用
kubectl describe nodes
从那里你可以 grep ephemeral-storage 这是虚拟磁盘大小这个分区也被 Pods 通过 emptyDir 卷、容器日志、映像共享和使用层和容器可写层
如果你使用的是 Prometheus,你可以用这个公式计算
sum(node_filesystem_size_bytes)
这是一个完全菜鸟的 Kubernetes 问题。我已经搜索过这个,但似乎找不到确切的答案。但这可能只是因为没有完全了解 Kubernetes。我在三个节点上部署了一些 pods,我的问题很简单。
- 如何查看节点上的总磁盘 space?
- 我如何查看每个 pod 占用了多少 space?
我假设您使用的是 AKS,因为这就是问题的标签。
工作节点只是标准的 VM,带有整个负载的脚本到 bootstrap Kubernetes 集群。磁盘 space 非常重要,因为您下载的每个图像层都将缓存在服务器上,默认情况下,这些服务器的硬盘驱动器 space 可以非常小(30GB IIRC),除非在创建时进行调整。分区模式也没有针对容器交付进行特别调整。
您可以使用 OMS 和 Azure 中的容器监控解决方案来深入了解您的集群运行状况。 https://docs.microsoft.com/en-us/azure/azure-monitor/insights/containers 或如上所述 - 您可以使用 prometheus / Grafana 或只是 ssh in 和 df -h
看看发生了什么(尽管我不提倡 ssh 访问节点)。
节点上的磁盘 space 与容器安装的 PV 非常不同。
关于每个节点的最大数量 pods - 我认为默认值为 30,除非您专门使用更大的数量构建集群。
要计算总磁盘 space,您可以使用
kubectl describe nodes
从那里你可以 grep ephemeral-storage 这是虚拟磁盘大小这个分区也被 Pods 通过 emptyDir 卷、容器日志、映像共享和使用层和容器可写层
如果你使用的是 Prometheus,你可以用这个公式计算
sum(node_filesystem_size_bytes)