分析不同kuberentes组件的度量标准的常用选项有哪些?

时间:2017-03-20 22:24:55

标签: kubernetes metrics grafana prometheus

1)在kubernetes中,许多组件(即节点)具有您希望按组查看的元数据。例子:

  • 监控CPU使用率
  • 使用GPU监控所有计算机上的CPU使用率
  • 监控内存使用情况
  • 监控标有特定区域的所有计算机(kubelet)上的内存使用量(即' ASIA-EAST-1')

依此类推:对于在节点上测量的任何指标,您可能希望通过所述节点上存在的任意标签或污点来查看/查询它。

在任何这些情况下,由于所有这些数据的标签都没有发出指标。

一个解决方案:许多prometheus大师

到目前为止,我已经想到了一个解决方案:针对不同逻辑节点组的单独的Prometheus主站。这将允许管理员创建通过任意标签汇总度量的主数据,即

  • 查询所有节点的集群w / label = SSD = 16GB,
  • 从该列表中创建CSV
  • 将它用作prometheus master的端点,
  • 将其用作特定数据源"。

2)这个问题还有更优雅的解决方案吗?

上面的解决方案充满了恐惧 - 你正在为" hack"做很多工作。 grafana"数据源"概念作为一种方法来削减您的指标。

3)更多,疯狂的想法......只是为了帮助推动更广泛的对话,讨论如何通过主机对kubernetes中的指标进行分类......

  • 也许grafana很聪明,可以添加自己的团队,不知何故?
  • 或者可以扩展grafana做prometheus主轮询/汇总本身?

1 个答案:

答案 0 :(得分:0)

通常,每个数据中心都有一个Prometheus,以便将事物保存在同一个故障域中。如果出现负载问题,您可能会在以后将其拆分出来,但仅限于不太可能出现的节点导出器统计信息。

https://www.robustperception.io/scaling-and-federating-prometheus/描述了一般的缩放方法。

https://www.robustperception.io/how-to-have-labels-for-machine-roles/解决了如何根据GPU存在等事项进行聚合。

我希望区域最终成为目标标签,因此不需要特别考虑。