文章目录
-
- 1、PushGateway 介绍
- 2、环境、软件准备
- 3、PushGateway 安装配置
-
- 3.1、二进制包安装
- 3.2、Docker 安装
- 4、API 方式 Push 数据到 PushGateway
- 5、用 Client SDK Push 数据到 Pushgateway 示例
- 6、使用 PushGateway 注意事项
1、PushGateway 介绍
Prometheus 是一套开源的系统监控、 警、时间序列数据库的组合,最初有 SoundCloud 开发的,后来随着越来越多公司使用,于是便独立成开源项目。Prometheus 基本原理是通过 Http 协议周期性抓取被监控组件的状态,而输出这些被监控的组件的 Http 接口为 Exporter。PushGateway 作为 Prometheus 生态中的一个重要一员,它允许任何客户端向其 Push 符合规范的自定义监控指标,在结合 Prometheus 统一收集监控。
PushGateway 使用场景:
- Prometheus 采用定时 Pull 模式,可能由于子 络或者防火墙的原因,不能直接拉取各个 Target 的指标数据,此时可以采用各个 Target 往 PushGateway 上 Push 数据,然后 Prometheus 去 PushGateway 上定时 pull。
- 其次在监控各个业务数据时,需要将各个不同的业务数据进行统一汇总,此时也可以采用 PushGateway 来统一收集,然后 Prometheus 来统一拉取。
2、环境、软件准备
本次演示环境,我是在虚拟机上安装 Linux 系统来执行操作,以下是安装的软件及版本:
- Oracle VirtualBox: 5.1.20 r114628 (Qt5.6.2)
- System: CentOS Linux release 7.3.1611 (Core)
- Docker: 18.06.1-ce
- Prometheus: v2.11.1
- PushGateway: 1.0.0
注意:这里为了快速方便启动 Prometheus、PushGateway 服务,我使用 Docker 方式启动,所以本机需要安装好 Docker 环境,这里忽略 Docker 的安装过程。其中 Prometheus 安装配置,可以参照之前文章 Prometheus 监控 警系统 AlertManager 之邮件告警,这里着重介绍一下如何启动并配置 PushGateway 并配置数据上 到 Prometheus。
3、PushGateway 安装配置
PushGateway 安装很简单,可以使用二进制包解压安装服务,也可以使用 Docker 启动服务。
3.1、二进制包安装
二进制包安装方式,直接从 官方 Github 下载最新二进制安装包,解压即可。
使用命令 命令即可启动服务,此时浏览器访问 即可访问 UI 页面,只不过默认 Metrics 上没有任何数据展示,那是因为我们还没有往 PushGateway 上推送任何数据。
3.2、Docker 安装
使用 Docker 方式安装启动就更简单了,直接获取最新版官方镜像 启动命令如下:
启动完毕后,同上方法验证是否启动成功。这里为了方便演示,我采用 Docker 方式启动 PushGateway。
OK,现在 PushGateway 服务已经启动完毕,但是还没有跟 Prometheus 关联起来,我们需要的是通过 PushGateway 来上传自定义监控数据,然后通过 Prometheus 采集这些数据来进行监控。那么就需要将 PushGateway 添加到 Prometheus 目标任务中去,增加 配置如下:
说明一下,这里采用 静态配置方式,因为目前就一个 PushGateway,如果有多个可以考虑其他服务发现方式,来方便动态加载,具体可以参考 这里。配置完毕后,重启 Prometheus 服务,此时可以通过 Prometheus UI 页面的 Targets 下查看是否配置成功。
上边我们 Push 指标数据是通过命令行追加方式,少量数据还凑合,如果需要 Push 的数据比较大时,就不太方便了,这里我们也可以通过将指标数据写入到文件,然后将文件内容提交,也可以正常添加到 PushGateway。新建一个指标数据文件 如下:
然后执行如下命令,将数据 Push 上去。
执行完毕,在 PushGateway UI 页面同样能够查询的到。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!