搭建Prometheus+Grafana统一监控平台

Posted 潇潇雨歇_

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了搭建Prometheus+Grafana统一监控平台相关的知识,希望对你有一定的参考价值。

在分布式项目的运维当中,经常会遇到服务器负载过高的问题,由于没有监控,一直没发现,直到业务方反馈系统操作速度慢,才发现问题,这样显得十分被动,于是打算搭建一套用于监控系统服务器的统一监控平台。

一.实现的监控目标

二.搭建所需的安装包及配置文件

链接:https://pan.baidu.com/s/1famtf4e9J4VJXlzGDUSB6Q 
提取码:q0wj 

三.Prometheus服务端安装

以下操作皆在监控主机(172.10.0.1)上执行

3.1 关闭防火墙

# systemctl stop firewalld
# systemctl disable firewalld

3.2 安装 go 环境

由于Prometheus是由go语言开发的,所以在安装Prometheus之前需要先在监控主机上安装go环境

安装包下载以后,上传至监控主机的 /usr/local 目录下。

3.2.1 解压安装包

tar -xvf go1.15.4.linux-amd64.tar.gz

3.2.2 配置环境变量

添加/usr/loacl/go/bin目录到PATH变量中

# vim /etc/profile
// 在最后一行添加
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin
// wq保存退出后source一下
# source /etc/profile

执行go version,如果显示版本号,则Go环境安装成功。

3.3 安装Prometheus

3.3.1 安装

将下载后安装包,上传至  /usr/local 目录下

解压安装包:

#  tar -xvf prometheus-2.22.1.linux-amd64.tar.gz
#  mv prometheus-2.22.1.linux-amd64 prometheus

 3.3.2 以服务的方式启动

创建Prometheus服务,让Prometheus以服务的方式,开机自启。

添加系统服务

#  vim /etc/systemd/system/prometheus.service

将以下内容写入文件中

[Unit]
Description=Prometheus Monitoring System
Documentation=Prometheus Monitoring System
 
[Service]
ExecStart=/usr/local/prometheus/prometheus \\
  --config.file=/usr/local/prometheus/prometheus.yml \\
  --web.listen-address=:9090
Restart=on-failure
[Install]
WantedBy=multi-user.target

启动服务,设置开机自启,并检查服务开启状态

#  systemctl daemon-reload
#  systemctl enable prometheus
#  systemctl start prometheus
#  systemctl status prometheus

3.3.3 验证

浏览器打开http://172.10.0.1:9090(IP:9090端口)即可打开普罗米修斯自带的监控页面

四.安装Grafana

4.1 安装grafana

上传grafana-7.3.1-1.x86_64.rpm和安装grafana依赖的包.zip到监控主机(172.10.0.1)/usr/local 目录下。先安装grafana依赖的包

unzip 安装grafana依赖的包.zip
cd grafana/
rpm -Uvh --force --nodeps *rpm

 再安装grafana

cd ../
rpm -ivh grafana-7.3.1-1.x86_64.rpm 

4.2 启动grafana

设置grafana服务开机自启,并启动服务

#  systemctl daemon-reload
#  systemctl enable grafana-server.service
#  systemctl start grafana-server.service
#  systemctl daemon-reload
#  systemctl start grafana-server
#  systemctl stop grafana-server
#  systemctl restart grafana-server
#  systemctl status grafana-server

4.3 访问grafana

启动服务,打开浏览器,输入IP+端口,3000为Grafana的默认侦听端口。系统默认用户名和密码为admin/admin,第一次登陆系统会要求修改密码。

4.4 添加Prometheus数据源

(1)URL处填写Prometheus服务所在的IP地址,此处我们将Prometheus服务与Grafana安装在同一台机器上,直接填写localhost (http://localhost:9090)即可

(2)点击Dashboards选项卡,选择Prometheus 2.0 Stats

(3)点击Grafana图标,切换到Grafana主页面,然后点击Search,选择我们刚才添加的Prometheus 2.0 Stats,即可看到监控数据 

至此Prometheus服务端及Grafana配置完成。

五. 安装 node-exporter

以下操作皆在被linux监控主机(172.10.0.2)上操作。

5.1 关闭防火墙

# systemctl stop firewalld
# systemctl disable firewalld

5.2 安装 node-exporter

将下载的安装包上传至被监控主机(172.10.0.2)的 /usr/local 目录下, 解压安装包

#  tar -zvxf node_exporter-1.0.1.linux-amd64.tar.gz
#  mv node_exporter-1.0.1.linux-amd64 node_exporter

 5.3 启动node-exporter

进入解压后的node_exporter文件夹下,启动node_exporter

#  cd node_exporter
# ./node_exporter

5.4 验证

在浏览器访问 http://172.10.0.2:9100/metrics ,若出现数据则服务开启成功

5.5 设置node_exporter 以服务的方式启动并设置开机自启

Ctrl+C 结束掉node_exporter进程,创建node_exporter服务,让node_exporter以服务的方式,开机自启。

添加系统服务

#  vim /etc/systemd/system/node_exporter.service

将以下内容写入文件中

[Unit]
Description=node_exporter
After=network.target 

[Service]
ExecStart=/usr/local/node_exporter/node_exporter
Restart=on-failure

[Install]
WantedBy=multi-user.target

启动服务,设置开机自启,并检查服务开启状态

#  systemctl daemon-reload
#  systemctl enable node_exporter
#  systemctl start node_exporter
#  systemctl status node_exporter

至此node_exporter配置完成。

六.修改Prometheus 配置,监控3台Linux机器

以下操作皆在监控主机(172.10.0.1)上进行。

6.1 修改Prometheus配置

进入Prometheus的安装文件夹,打开Prometheus配置文件

#  cd /usr/local/prometheus
#  vim prometheus.yml

在scrape_configs标签下,添加以下内容,配置监控

- job_name: '172.10.0.2'
    static_configs:
    - targets: ['172.10.0.2:9100']
      labels:
        instance: Linux

保存退出,重启Prometheus服务

#  systemctl restart prometheus

浏览器访问 http://172.10.0.1:9090/targets  查看监控信息,可以看到监控的主机ip信息

6.2 配置Grafana

(1)打开我们的Grafana监控页面,打开dashboard的管理页面

(2)点击【import】按钮

 (3)上传node-exporter-for-prometheus-dashboard-cn-v20201010_rev24.json文件

 选择我们之前创建的数据源Prometheus,最后点击【Import】按钮,即可完成导入。

 以此步骤,反复配置被监控节点机器即可

 

以上是关于搭建Prometheus+Grafana统一监控平台的主要内容,如果未能解决你的问题,请参考以下文章

五分钟搭建基于 Prometheus + Grafana 实时监控系统

Prometheus+grafana搭建jenkins监控

Prometheus+Grafana监控系统搭建

搭建Prometheus+Grafana的云平台监控系统

prometheus+grafana+consul+supervisor搭建监控系统之supervisor搭建

springboot2+exporter+prometheus+grafana搭建监控体系