Pushgateway安装和部署,以及对应Prometheus调整
目录
- Pushgateway简介
- 安装
- 验证
- Prometheus的配置:
- 其它命令
Pushgateway简介
Pushgateway 是 Prometheus 生态系统中的一个组件。主要特点是推送而非拉取:Prometheus 默认采用拉取(pull)模式收集指标,但 Pushgateway 允许客户端主动推送指标。
架构和工作方式:
应用程序/脚本 -> 推送指标到 Pushgateway -> Prometheus 从 Pushgateway 拉取指标
安装
环境: linux docker
下载:
https://github.com/prometheus/pushgateway/releases/download/v1.11.1/pushgateway-1.11.1.linux-amd64.tar.gz(releases列表)
解压:
tar xvfz pushgateway-*.linux-amd64.tar.gz
以后台模式把它运行在指定端口(这里是7920),并进行数据持久化:
cd pushgateway-*.linux-amd64
mkdir data
mkdir logssudo nohup ./pushgateway \--web.listen-address=:7920 \--persistence.file=/home/genserv/pushgateway-1.11.1.linux-amd64/data/metrics.db \> /home/genserv/pushgateway-1.11.1.linux-amd64/logs/pushgateway.log 2>&1 &
验证
可以使用 echo "test_metric 3.14" | curl --data-binary @- http://localhost:7920/metrics/job/test_job
命令向 Pushgateway 推送一个测试指标,这会将一个名为 test_metric 的指标推送到 job 名为 test_job 的组中。
然后就可以查看当前所有指标(下面的25609就是容器映射后的7920端口),其中应该包含刚刚推送的test_metric :
Prometheus的配置:
prometheus.yml:
global:scrape_interval: 15sscrape_configs:- job_name: 'pushgateway'metrics_path: '/metrics'static_configs:- targets: [ '192.17.18.7:25609' ]honor_labels: true # 保留 PushGateway 推送的原始标签,包括job
其它命令
./pushgateway --help