是否可以在分布式环境中部署 Prometheus Operator?

Is there an ability to deploy Prometheus Operator on a distributed environment?

我有: Prometheus Operator Helm 图表部署在单个 Kubernetes 集群上,同样也是 application 集群。因此,所有与应用程序相关的 pods、prometheus exporter pods、Grafana pod 和 Prometheus 本身都位于同一个集群中。

我想要的: 我想拆分上面的配置是这样的,我有所有应用程序相关的以及导出器 pods 存在于应用程序集群中,同时将 Prometheus 和 Grafana pods 部署到单独的一个(在为了没有单点故障)

有没有办法使用 Prometheus Operator 实现此目的?

从技术上讲,也许有点。使用 kubefed,您可以在集群之间同步对象状态。您需要有一个相互平坦的网络,以便一个集群中的 Prom pod 可以直接与另一个集群中的目标 pods 对话。

总的来说,这可能不是一个好主意。在每个应用程序集群中设置 prom,然后使用 prom-to-prom 联合而不是进行单一整体安装。

这与您的要求不完全相同,但您可以 运行 在同一个集群中使用节点选择器或污点在不同节点上处理这些工作负载。

它将 monitoring/observability 工作负载与应用程序工作负载分开,而无需 re-architect 集群网络或处理联合。