使用prometheus + grafana + pushgateway搭建监控可视化系统

虽然prometheus提供了pull的方式来收集数据,可是运维成本比push方式高git

下面使用pushgateway快速搭建prometheus的监控可视化系统grafanagithub

安装prometheus + grafana + pushgateway

能够使用docker一键启动,参考:github.com/evnsio/prom…docker

启动过程以下:shell

git clone https://github.com/evnsio/prom-stack.git
cd prom-stack
docker-compose pull && docker-compose up -d
复制代码

能够看到docker-compose已经成功启动了浏览器

能够使用docker-compose ps命令查看各个服务使用的端口 服务器

grafana能够使用默认用户名密码 admin password 登录运维

使用curl生成测试数据

能够使用$RANDOM来生成随机数curl

while true; do
    echo "mymetric $RANDOM" | curl --data-binary @- http://localhost:9091/metrics/job/my-push-job
    sleep 1
done
复制代码

"mymetric"就是这个被监控的指标,这个监控指标推送到pushgateway比较简洁直观的测试

操做效果以下 url

在浏览器里打开pushgateway: "http://127.0.0.1:9091/"

能够看到测试的数据已经进入pushgateway了

在grafana配置可视化界面

配置从prometheus里获取监控数据

在浏览器里打开这个grafana地址:http://127.0.0.1:3000/datasources/new 配置好prometheus监控数据服务器的地址

查看操做结果

建立监控数据展现页面

选择graph类型的展现效果

点击"Panel Title"选择Edit

在查询参数处使用这个条件

mymetric{exported_job="my-push-job",instance="pushgateway:9091",job="prom-stack"}
复制代码

查询出这个第一步生成的用来测试的监控数据

而后点击保存按钮就能够生成图表了

一些注意的点

能够在New Dashboard页面的General处设置图表的标题

参考资料

  1. github.com/evnsio/prom…
相关文章
相关标签/搜索