Linux系统上安装Grafana+Prometheus+node_exporter、mysqld_exporter监控Linux服务器系统的基础性能指标和Linux服务器上Mysql的相关指标。

一、写在前面

1、系统:CentOS 7.2

2、监控报警工具:Prometheus,用来拉取数据的。Prometheus 所有采集的监控数据均以指标(metric)的形式保存在内置的时间序列数据库当中。

                               Exporter,是Prometheus的一类数据采集组件的总称。它负责从目标处搜集数据,并将其转化为Prometheus支持的格式。与传统的数据采集组件不同的是,它并不向中央服务器发送数据,而是等待中央服务器主动前来抓取。

3、可视化监控工具:Grafana,是一个跨平台的开源的度量分析和可视化工具,可以做数据监控和数据统计,带有告警功能。支持许多不同的时间序列数据(数据源)存储后端。每个数据源都有一个特定的查询编辑器。官方支持以下数据源:Graphite、infloxdb、opensdb、prometheus、elasticsearch、cloudwatch等。

二、搭建步骤

1、下载并安装Prometheus(Linux版本)

1.1、下载Prometheus地址:https://prometheus.io/download/

由于官网这里安装下载速度非常慢,因此可以选择使用命令下载的方式。

先进入目录/opt(因为我打算将prometheus下载到这个目录下,可以根据自己习惯自行决定安装在哪个目录),再使用wget命令进行下载。

命令:
# cd /opt

# wget https://github.com/prometheus/prometheus/releases/download/v2.23.0/prometheus-2.23.0.linux-amd64.tar.gz

1.2、解压Prometheus

命令:# tar -zxvf prometheus-2.23.0.linux-amd64.tar.gz

1.3、重命名Prometheus解压目录

命令:# mv prometheus-2.23.0.linux-amd64 /opt/prometheus

2、下载并运行mysqld_exporter、node_exporter(Linux版本)

说明:exporter是安装在需要被监控的服务器上的,这里需要监控Linux服务上的Mysql和Linux系统服务器的基础性能指标,因此安装Linux版本。mysqld_exporter是用来收集Mysql或者MariaDB数据库相关指标的Prometheus插件,node_exporter是用来收集机器系统相关指标的Prometheus插件。

2.1、下载mysqld_exporter、node_exporter地址:https://prometheus.io/download/

仍然是上面那个下载地址,同样,这里采用命令进行下载,仍然下载到/opt目录。
命令:
# cd /opt

# wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.12.1/mysqld_exporter-0.12.1.linux-amd64.tar.gz

# wget https://github.com/prometheus/node_exporter/releases/download/v1.0.1/node_exporter-1.0.1.linux-amd64.tar.gz

2.2、解压mysqld_exporter、node_exporter

命令:
# tar -zxvf mysqld_exporter-0.12.1.linux-amd64.tar.gz

# tar -zxvf node_exporter-1.0.1.linux-amd64.tar.gz

2.3、重命名mysqld_exporter、node_exporter解压目录

命令:
# mv mysqld_exporter-0.12.1.linux-amd64 /opt/mysqld_exporter

# mv node_exporter-1.0.1.linux-amd64 /opt/node_exporter

2.4、运行mysqld_exporter、node_exporter

运行mysqld_exporter需要连接到MYSQL,然后进行授权。

(1)运行mysql_exporter

1)登录mysql(这里要确保服务器已经安装了Mysql数据库,我之前安装过,因此跳过安装Mysql的步骤)

命令:# /home/mysql2/mysql/bin/mysql -u root -p -S /home/mysql2/mysql/mysql.sock(加粗部分为mysql的安装路径)

2)给新建账号mysql_monitor进行授权,密码设置为“XXX”(密码自行决定)

命令:
mysql> grant replication client, process on *.* to mysql_monitor@"localhost" identified by "XXX";

mysql> grant select on performance_schema.* to mysql_monitor@"localhost";

mysql>flush privileges;

3)授权后进入mysql_exporter安装目录,创建.my.cnf配置文件。

命令:
# cd /opt/mysqld_exporter

# vi .my.cnf

在.my.cnf配置文件中添加如下内容后保存退出:

[client]
user=mysql_monitor
password=XXX

4)运行mysql_exporter

命令:
# nohup ./mysqld_exporter --config.my-cnf=.my.cnf &

(2)进入node_exporter安装目录,运行node_exporter

命令:
# cd /opt/node_exporter

# nohup ./node_exporter &

(3)mysql_exporter占用9104端口,node_exporter占用9100端口

3、配置并运行Prometheus

3.1、进入Prometheus安装目录并修改配置文件

命令:
# cd /opt/prometheus

# vi prometheus.yml

在末尾添加如下内容后保存退出:

每个job_name标签指示一个监控的job,targets标签指示受监控的应用的ip和端口号。

注意:这个配置文件要特别注意格式缩进,严格按照他原来的格式进行修改,否则会导致prometheus运行不了。

3.2、运行prometheus

命令:

# nohup ./prometheus --config.file=./prometheus.yml &

运行后可以通过cat nohup.out查看运行日志。

3.3、浏览器访问ip:9090,可以访问prometheus的页面

进入status目录下的Targets页面:

可以看到,我们在配置文件prometheus.yml中配置的3个监控的job状态都是up:

如果状态不是up,则说明该job的配置有问题或者监控的应用没有运行起来,可以返回上述步骤去检查一下。

prometheus对于数据的展现并不直观和美观,所以,此处需要grafana。

4、下载并运行Grafana(Linux版本)

4.1、下载并解压Grafana

下载地址:https://grafana.com/grafana/download

根据上面的指导进行下载。即使用下面的命令进行下载:(此处为从二进制.tar.gz文件安装的方式进行安装)

命令:
# wget https://dl.grafana.com/oss/release/grafana-7.3.4.linux-amd64.tar.gz

# tar -zxvf grafana-7.3.4.linux-amd64.tar.gz

4.2、启动Grafana
命令:
# cd /opt/grafana-7.3.4

# ./bin/grafana-server web

4.3、浏览器访问grafana页面

浏览器中输入ip:3000,可以访问grafana的页面

4.4、浏览器登录grafana

初始登录账号和密码都是:admin

点击“Log in”后会自动让你修改密码。在这里输入新密码XXXX后点击“Submit”(我这里修改的是XXXX

4.5、添加data source

在选择data source type时选择Prometheus

配置好data source后,点击sava&test按钮,提示“data source is working”则为成功。

4.6、下载dashboard的json文件

配置好data sources后,需要去下载dashboard的json文件并导入,也可以自己去创建dashboard。

这里下载“mysql overview”和“1 Node Exporter 0.16 0.17 for Prometheus监控展示看板”。

dashboard的json文件下载地址:https://grafana.com/grafana/dashboards

 

选择后,可以预览这个dashbord展示的内容,点击dowload json,下载json文件。这里还需要注意Dependencies里的版本,因为有些版本不支持的问题可能会导致导入的dashboad不显示图标或者图表都是空的,如果下载的dashbord用不了,可以换一个试试。

“1 Node Exporter 0.16 0.17 for Prometheus监控展示看板”的下载方法和上面差不多。

4.6、导入dashboard的json文件

导入“1 Node Exporter 0.16 0.17 for Prometheus监控展示看板”

修改好name和Prometheus node后,点击import

然后这款node的信息就很直观且美观的展现出来了。但是这个dashbord的磁盘总空间,那一块位置提示警告信息“Panel plugin not found: grafana-piechart-panel”,因此接下来需要安装插件。

Grafana-piechart-panel插件是一个饼状图插件,grafana的插件安装很简单。在grafana安装的服务器环境执行下面的命令进行插件安装。

命令:
# cd /opt/grafana-7.3.4/bin

# ./grafana-cli plugins install grafana-piechart-panel

插件安装后重启grafana
命令:

# cd /opt/grafana-7.3.4

# ./bin/grafana-server web

刷新网页后,发现那个警告提示仍然存在。

原因是上述命名下载后的插件默认位置放到了/var/lib/grafana/plugins/下面,而我的grafana安装位置在/opt/grafana-7.3.4/data/plugins,所以使用下面的命令将下载的插件移动到/opt/grafana-7.3.4/data/plugins目录下

命令:# mv /var/lib/grafana/plugins/grafana-piechart-panel /opt/grafana-7.3.4/data/plugins/grafana-piechart-panel

再次重新启动grafna,可以看到红色的警告提示消失了。

------搭建的简单流程结束------

 

posted @ 2020-12-11 14:01  夏圈圈儿  阅读(1067)  评论(0编辑  收藏  举报