kube-prometheus-stack 跨多个集群的冗余

kube-prometheus-stack 跨多个集群的冗余

我目前使用 kube-prometheus-stack 来监控多个 kubernetes 集群。每个集群都有自己的 kube-prometheus-stack 部署,但目前只有一个集群 (a) 启用了 alertmanager。集群 (a) 还在抓取所有其他集群 /federate 端点以获取一些健康指标并根据这些指标发出警报。

为了消除集群(a)崩溃时的单点故障,我希望拥有第二个集群(b),并启用警报功能,与集群(a)一起以高可用性模式运行。

实现这一目标的最佳方法是什么?

关于普罗米修斯:

使 (a) 和 (b) Prometheus 的配置完全相同,除了可能带有一个用于识别的标签。它们应该包含相同的数据,并向 (a) 和 (b) 警报管理器发出相同的警报。

关于 Alertmanagers:

使 (a) 和 (b) Alertmanager 相互通信以删除重复警报。这可以通过设置来实现

alertmanagerSpec:
  additionalPeers: []

关于 Grafana:

在这种部署中,Grafana 是否能实现高可用性?我从这里您可以通过让两个实例使用同一个数据库来设置 Grafana 实现 HA,但是如何在我的设置中做到这一点?

如果有人能对这个想法提供反馈,我会很高兴...

相关内容