标签:prometheus Prometheus metrics job pushgateway 数据
Pushgateway 是 Prometheus 生态中一个重要工具,使用它的原因主要是:
Prometheus 采用 pull 模式,可能由于不在一个子网或者防火墙原因,导致 Prometheus 无法直接拉取各个 target 数据。
在监控业务数据的时候,需要将不同数据汇总, 由 Prometheus 统一收集。
由于以上原因,不得不使用 pushgateway,但在使用之前,有必要了解一下它的一些弊端:
将多个节点数据汇总到 pushgateway, 如果 pushgateway 挂了,受影响比多个 target 大。
Prometheus 拉取状态 up 只针对 pushgateway, 无法做到对每个节点有效。
Pushgateway 可以持久化推送给它的所有监控数据。
因此,即使你的监控已经下线,prometheus 还会拉取到旧的监控数据,需要手动清理 pushgateway 不要的数据。
服务端:
在prometheus服务端安装pushgateway后,在prometheus配置文件添加对pushgateway的引用,
- job_name: 'pushgateway' #任务名
honor_labels: true #避免收集数据本身的 job 和 instance 被覆盖
static_configs: #静态配置方式,因为目前就一个 PushGateway
- targets: ['127.0.0.1:9091'] #pushgateway的端口
这样prometheus主动拉取pushgateway的数据,pushgateway被动收取node节点推送过来的metrics。
客户端:
除了要安装node服务外,还要加一条
curl 127.0.0.1:9100/metrics | curl --data-binary @- http://1.1.1.1:9091/metrics/job/job-name/
的命令,具体含义是:将自身metrics的值通过后面的固定命令发送给pushgateway的主机,后面的job-name为自定义任务名字,后面可以再添加一个 instance/<INSTANCE_NAME> 实例名称标签,来方便区分各个指标。
标签:prometheus,Prometheus,metrics,job,pushgateway,数据 来源: https://blog.51cto.com/u_13377829/2776775
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。