Grafana和Prometheus搭建监控
程序员文章站
2024-03-21 12:57:28
...
Prometheus
-
Prometheus是一套基于应用的metrics来进行监控&报警的开源工具。
-
原理:通过HTTP接口周期性的抓取被监控应用的状态,只需要应用提供HTTP接口就可以接入监控,非常适合虚拟化环境比如VM或者Docker。
-
参考:https://www.cnblogs.com/xiao987334176/p/9930517.html
Prometheus的docker安装
- 拉取镜像:docker pull prom/prometheus
- 创建配置文件:vi ~/prometheus/opt/prometheus.yml
- 添加监控的exporter(node-exporter):
- job_name: linux-status
static_configs:
- targets: ['192.168.99.100:9100']
labels:
instance: linux-status
- 创建启动脚本:注意–net="host"的设置使得docker容器内部和宿主机公用了网络,这样使得docker容器之间可以互相访问。
su -c "setenforce 0";
docker stop prometheus-monitor;
docker rm prometheus-monitor;
docker run -d --name prometheus-monitor -p 9090:9090 --net="host" -v /home/dengh/prometheus/opt/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus:latest;
- 添加一个node-exporter,用来输出linux主机信息:也需要–net=“host”
docker pull prom/node-exporter;
docker run -d --name node-exporter -p 9100:9100 --net="host" -v /home/dengh/node-exporter/proc:/host/proc:ro -v /home/dengh/node-exporter/sys:/host/sys:ro -v /home/dengh/node-exporter/:/rootfs:ro prom/node-exporter:latest;
- 访问prometheus的监控页面:http://192.168.99.100:9090/targets和/graph来查找各个endpoint的监控值
- 极有可能出现,windows中的web页面无法访问虚拟机端口的情况,导致6中的页面不显示,在虚拟机中是可以通过curl访问的,此时很可能是防火墙的问题,简单的关闭防火墙(systemctl stop firewalld.service)不推荐,且可能造成其他应用无法启动,可以通过配置暴露防火墙端口来解决:https://blog.csdn.net/xiunai78/article/details/84981281
firewall-cmd --zone=public --add-port=9090/tcp --permanent
firewall-cmd --reload
Grafana
- 开源的度量分析和可视化工具,将采集的数据查询然后可视化的展示,并及时通知和告警。
- 数据源有:Graphite,InfluxDB,OpenTSDB,Prometheus,Elasticsearch,CloudWatch和KairosDB等
Grafana的docker安装
- 查找镜像:docker search grafana。官方镜像查找:docker.hub,搜索grafana
- 拉取镜像:docker pull grafana/grafana
- 启动容器:docker run -d --name grafana-monitor -p 3000:3000 -e “GF_SERVER_ROOT_URL=http://grafana.server.name” -e “GF_SECURITY_ADMIN_PASSWORD=dengh” -v /home/dengh/grafana/data:/var/lib/grafana grafana/grafana:latest;
- 启动容器时如果要挂载配置,可能提示无权限,待解决:-v /home/dengh/grafana/etc:/etc/grafana
- 查看端口,浏览器访问:http://192.168.99.100:3000/
- 参考:https://www.jianshu.com/p/fc6a85d830ab
Grafana聚合Prometheus
- 访问grafana:http://192.168.99.100:3000/
- 添加数据源:add data source,url 输入Prometheus的ip+端口:
http://192.168.99.100:9090/ - 添加dashboard:new dashboard,点击graph,对panel进行edit,添加对应的metrics,save后即可看到对mertics的监控
- 参考:https://www.cnblogs.com/xiao987334176/p/9930517.html
上一篇: 不带头结点单链表
推荐阅读
-
Grafana和Prometheus搭建监控
-
借助Docker搭建JMeter+Grafana+Influxdb监控平台的详细教程
-
搭建普罗米修斯Prometheus监控系统
-
利用Prometheus与Grafana对Mysql服务器的性能监控详解
-
利用Prometheus与Grafana对Mysql服务器的性能监控详解
-
基于Prometheus和Grafana的监控平台 - 环境搭建
-
通过 Telegraf + InfluxDB + Grafana 快速搭建监控体系的详细步骤
-
机房ping监控 smokeping+prometheus+grafana
-
docker环境搭建JMeter+Grafana+influxdb可视化性能监控平台的教程
-
使用Grafana+Prometheus监控mysql服务性能