【问题标题】:Docker stats for docker containers in kubernetes returning empty valuesKubernetes 中 Docker 容器的 Docker 统计信息返回空值
【发布时间】:2016-09-27 14:06:22
【问题描述】:

我正在尝试通过 docker stats 命令获取在 kubernetes 节点内运行的容器的统计信息。但不幸的是,我将所有 pod 容器的所有值都设为“0”。

CONTAINER     CPU %   MEM USAGE / LIMIT   MEM %   NET I/O     BLOCK I/O   PIDS
7dc5af9923b2  0.00%         0 B / 0 B     0.00%   0 B / 0 B   0 B / 0 B    0

我对通过同一节点中的 docker run 命令手动调出的容器做了同样的事情,我得到了这些容器的正确值。

CONTAINER     CPU %    MEM USAGE / LIMIT     MEM %    NET I/O       BLOCK I/O       PIDS
8be93c039a25  0.12%   133.3 MB / 3.892 GB    3.43%   0 B / 648 B  2.208 MB / 0 B     0

除此之外,还有什么特定方法可以获取 pod 容器的统计信息吗?

注意:docker 版本是 1.11.2,kube 版本是 1.3.7

【问题讨论】:

  • 是的,我提到了,感谢您的建议。我可以获得整个节点的指标以及子容器列表。但我找不到 API 来获取每个容器的指标。是否有相关 API 的文档?这对我很有帮助。
  • 我明白了。我提到了那个帖子中提到的文件。现在我也可以获得容器的指标。非常感谢。

标签: docker monitoring kubernetes


【解决方案1】:

我解决了这个问题。我使用 kubelet API 来获取节点和单个容器的指标。以下 API 将返回 pod 容器的指标。

http://<nodeIP>:10255/stats/<podName>/<containerName> - POST

在 cmets 中建议的This post 很有帮助。

This 文档有更多的 API 来收集指标。

【讨论】:

  • 我得到了值,但仍然无法计算使用百分比。我找不到与计算部分相关的任何文档。如果有人帮助我,那就太好了。我需要计算每个容器的 CPU 百分比和内存使用率。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-20
  • 1970-01-01
  • 1970-01-01
  • 2017-02-21
  • 1970-01-01
相关资源
最近更新 更多