搭建服务器性能监控面板(prometheus+grafana)

压测时,我们需要关注服务器的资源使用情况。多年前,同事推荐nmon给我,现在这个工具简直弱爆了;19年,我们在做某个国家项目时,用的是zabbix;这个工具其实也过时了。今天介绍个新的工具组合:prometheus+grafana

Prometheus 是开源的系统监控报警工具。

Grafana 是开源的可视化面板工具,有漂亮的图表和布局展示,功能齐全的度量仪表盘和图形编辑器,支持Graphite、zabbix、InfluxDB、Prometheus和OpenTSDB作为数据源。

工作原理:Prometheus 定期从配置好的 jobs 或者 exporters 中获取度量数据,并存储到本地;Grafana从Prometheus获取数据,并以图形化的方式进行展示。

部署prometheus

服务器上创建prometheus.yml,具体步骤如下:

浏览器打开链接:https://github.com/prometheus/prometheus/blob/master/documentation/examples/prometheus.yml,并复制文件内容
搭建服务器性能监控面板(prometheus+grafana)_第1张图片
服务器上创建prometheus.yml(vim prometheus.yml),复制粘贴以上内容
搭建服务器性能监控面板(prometheus+grafana)_第2张图片
运行容器

docker network create grafana
docker run -d --name prometheus --network grafana -p 9090:9090 -v ${PWD}/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus --config.file=/etc/prometheus/prometheus.yml

浏览器访问 http://xxx.xxx.xxx.xxx:9090
搭建服务器性能监控面板(prometheus+grafana)_第3张图片

部署node_exporter

浏览器访问 https://github.com/prometheus/node_exporter/releases,找到最新发行版并下载
搭建服务器性能监控面板(prometheus+grafana)_第4张图片
解压上传到服务器,执行 ./node_exporter --help查看帮助,其中--web.listen-address=":9101"可指定端口号,若不需要则直接执行nohup ./node_exporter &,默认端口9100
搭建服务器性能监控面板(prometheus+grafana)_第5张图片
浏览器访问 http://xxx.xxx.xxx.xxx:9100
搭建服务器性能监控面板(prometheus+grafana)_第6张图片
点击metrics,可以看到node exporter收集到性能参数(prometheus会定期抓取这些参数,存到数据库)
搭建服务器性能监控面板(prometheus+grafana)_第7张图片

配置prometheus.yml

添加一个job
搭建服务器性能监控面板(prometheus+grafana)_第8张图片
重启prometheus,使配置生效:docker restart prometheus

部署并配置grafana

docker run -d --name grafana --network grafana -p 3000:3000 grafana/grafana

浏览器访问grafana的登录页面:http://xxx.xxx.xxx:3000,用户名、密码都是admin
搭建服务器性能监控面板(prometheus+grafana)_第9张图片
配置数据源
搭建服务器性能监控面板(prometheus+grafana)_第10张图片
搭建服务器性能监控面板(prometheus+grafana)_第11张图片
搭建服务器性能监控面板(prometheus+grafana)_第12张图片
搭建服务器性能监控面板(prometheus+grafana)_第13张图片
导入面板:https://grafana.com/grafana/dashboards/8919
搭建服务器性能监控面板(prometheus+grafana)_第14张图片
搭建服务器性能监控面板(prometheus+grafana)_第15张图片

运行结果展示

搭建服务器性能监控面板(prometheus+grafana)_第16张图片
搭建服务器性能监控面板(prometheus+grafana)_第17张图片

你可能感兴趣的:(性能测试,其他)