如果我需要使用Prometheus,我必须始终公开端点以使其废弃我的服务以收集指标。如果我运行的是后端服务,为什么我要公开一个仅用于统计信息收集的端点。
我正在寻找一种替代方法或一种非常理想的方式来处理此问题。有人对实施有任何想法吗?
我认为备选方案之一是让通用指标收集器通过消息传递从所有应用程序收集统计信息,然后收集器将指标写入Prometheus。
答案 0 :(得分:0)
通常Prometheus开箱即用地刮擦目标,因此您将重新创建Prometheus本身的主要功能。通常,您会在第二个端口上拥有通用NodeExporter和一个特定于应用程序的导出器(例如DB或JMX)。 Prometheus UI以非常漂亮的视图显示不健康的刮擦目标。
当然,您应该投资在/metrics
端点上添加身份验证。
如果您有许多要刮除的目标,我强烈建议您结合使用Prometheus自动发现功能和自动基础架构配置(例如Ansible),这样就不必手动维护刮除的目标。为此,您的Prometheus必须位于同一网段中。