我们有几个 K8S 集群需要从 监控一 运营商集群(集群A)
我们在每个集群上使用 Prometheus 来监控集群本身,现在另外我们想从应用程序的特定 api 进行监控,这将告诉我们我们的集群(根据我们的特定服务)是否正常,我不是在谈论监控集群,我们希望运算符(operator)将监控每个集群上的 3 个应用程序(所有 3 个应用程序都部署在所有被监控的集群上)
Cluster A (operator) should monitor service/apps on cluster B,C,D etc
例如运营商集群将调用集群A中部署的应用程序,如
host://app1/status
如果为 0 或 1,则获取状态,并将状态保存在某个数据库中。 (可能是 prometehusDB)并在集群外报告它们。目前经过一些搜索,我找到了这个选项,但也许还有更多我不知道的
https://github.com/prometheus/client_golang
我的意思是运行一个休息调用并使用 Prometheus api 将状态存储在 Prometheus 中
tsdb
通过“github.com/prometheus/client_golang/prometheus/promhttp”代码。但不确定如何..此外,如果我能够将集群中的所有数据收集到运算符(operator)集群中,我应该如何以及在哪里保存它?在普罗米修斯数据库 tsdb 中?另一种方式 ?
支持我们的案例的最佳实践应该是什么? 我们应该怎么做?
最佳答案
我已经看到您虽然使用 Thanos,但它不错,我们已经在生产中运行了一段时间。但它不符合我们的要求,你的看起来对我们很熟悉,所以我建议你看看 VictoriaMetrics
你有一篇不错的文章就在这里:https://medium.com/faun/comparing-thanos-to-victoriametrics-cluster-b193bea1683
他们对 Slack 的支持也很重要!
祝你好运!
关于kubernetes - 从 "operator"集群监控 k8s 应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62750085/