摘要
当面对一个复杂的系统时,我们往往需要监控工具来帮助我们解决一些性能问题。比如之前我们使用SpringBoot Admin
来监控应用,从而获取到SpringBoot Actuator
暴露的指标信息。今天给大家介绍一个功能强大的监控工具Grafana,只要需要用到监控的地方,用它做可视化就对了!
Grafana简介
Grafana是一款开源的数据可视化和分析工具,不管你的指标信息存储在哪里,你都可以用它来可视化这些数据。同时它还具有告警功能,当指标超出指定范围时会提醒你。
Prometheus简介
Prometheus是一款时序数据库,可以简单理解为带时间的MySQL数据库。由于Grafana只能将数据转换成可视化图表,并没有存储功能,所以我们需要结合Prometheus这类时序数据库一起使用。
安装
使用Docker安装Grafana和Prometheus无疑是最简单的,我们接下来将采用此种方式。
- 首先下载Grafana的Docker镜像;
docker pull grafana/grafana
- 下载完成后运行Grafana;
docker run -p 3000:3000 --name grafana \
-d grafana/grafana
- 接下来下载Prometheus的Docker镜像;
docker pull prom/prometheus
- 在
/mydata/prometheus/
目录下创建Prometheus的配置文件prometheus.yml
:
global:
scrape_interval: 5s
- 运行Prometheus,把宿主机中的配置文件
prometheus.yml
挂载到容器中去;
docker run -p 9090:9090 --name prometheus \
-v /mydata/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml \
-d prom/prometheus
- 至此安装完成,是不是很简单!可以通过如下地址访问Grafana,登录账号密码为
admin:admin
,访问地址:http://192.168.5.78:3000/
- 登录Grafana后显示界面如下;
- 其实Prometheus也是有可视化界面的,就是有点简陋,访问地址:http://192.168.5.78:9090/
使用
Grafana已经安装完后,是时候来波实践了,接下来我们来介绍下使用Grafana来监控Linux系统和SpringBoot应用。
监控系统信息
使用
node_explorer
可以暴露Linux系统的指标信息,然后Prometheus就可以通过定时扫描的方式获取并存储指标信息了。
- 下载
node_explorer
的安装包,下载地址:prometheus.io/download/#n…
- 这次我们直接把
node_explorer
安装到Linux服务器上(如果使用Docker容器安装,监控的会是Docker容器的指标信息),将下载的安装包解压到指定目录,并修改文件夹名称:
cd /mydata
tar -zxvf node_exporter-1.1.2.linux-amd64.tar.gz
mv node_exporter-1.1.2.linux-amd64 node_exporter
- 进入解压目录,使用如下命令运行
node_explorer
,服务将运行在9100
端口上;
cd node_exporter
./node_exporter >log.file 2>