在云原生环境中,Prometheus 常用于监控应用状态。应用程序是否自带 /metrics 接口决定了监控方式的不同。
情况一:应用自带 /metrics 接口
对于一些云原生应用(如 Kubernetes、etcd 等),通常自带 /metrics 接口,可以直接暴露监控数据。Prometheus 通过配置 ServiceMonitor,直接调用应用的 /metrics 接口来收集监控数据,配置过程简单,直接与应用对接即可。
情况二:应用没有 /metrics 接口
对于传统应用或不支持 Prometheus 的应用,需要借助 Exporter。Exporter 作为中间层,从应用中收集监控数据,转换为 Prometheus 能识别的格式,并通过自身的 /metrics 接口暴露数据。例如,node-exporter 用于监控系统资源,mysql-exporter 用于监控 MySQL 数据库。Prometheus 通过监控 Exporter 的 /metrics 接口,间接实现对这些应用的监控。
发表评论