Prometheus的安装及使用(初探)

一、安装概览

  • 安装go 语言环境
  • 在监控服务器上安装prometheus
  • 在被监控环境上安装export
  • 安装grafana

二、安装go语言环境

golang的官方下载和安装介绍: https://golang.org/doc/install
备用下载地址:go1.16.linux-amd64.tar.gz

wget https://dl.google.com/go/go1.16.linux-amd64.tar.gz
tar -C /opt/app -xzf go1.16.linux-amd64.tar.gz

配置环境变量

echo 'export PATH=$PATH:/opt/app/go/bin' >> /etc/profile.d/go.sh
source /etc/profile

验证一下是否成功,用go version 来验证

三、在监控服务器上安装prometheus

下载对应系统版本:https://prometheus.io/download/
备用下载地址:prometheus-2.25.0.linux-amd64.tar.gz
下载后上传到部署服务器,在服务器上执行解压命令。

tar zxvf prometheus-2.25.0.linux-amd64.tar.gz -C /opt/app/
#为了以后方便,做一个软连接(也可以直接重命名)
ln -s /opt/app/prometheus-2.25.0.linux-amd64 /opt/app/Prometheus

配置监控的配置文件:prometheus.yml 因为是初探prometheus 所以此处暂时未修改,下面增加监控会修改此文件。

启动

storage.tsdb.path=”/opt/data/prometheus” 指定存储的根路径
–web.listen-address=0.0.0.0:9190 指定监听端口 (默认端口9090)
–config.file=/opt/app/Prometheus/prometheus.yml 指定配置文件

直接启动命令:nohup /opt/app/Prometheus/prometheus --config.file=/opt/app/Prometheus/prometheus.yml &

systemd启动脚本编写:

#编写启动脚本
vim /opt/app/Prometheus/start.sh
#添加以下代码

#!/bin/bash
source /etc/profile
/opt/app/Prometheus/prometheus --config.file=/opt/app/Prometheus/prometheus.yml --web.listen-address=0.0.0.0:9190 > /opt/app/Prometheus/prometheus.log 2>&1

#保存后赋予执行权限
chmod +x /opt/app/Prometheus/start.sh

#编辑systemd启动脚本
vim /usr/lib/systemd/system/prometheus.service

#添加以下代码
[Unit]
Description=Prometheus.service
After=network.service
[Service]
Type=simple
ExecStart=/opt/app/Prometheus/start.sh

KillMode=mixed
Restart=on-failure
RestartSec=10s

[Install]
WantedBy=multi-user.target

验证:
浏览器打开IP:9190端口即可打开普罗米修斯自带的监控页面

四、安装常用监控exporter

下载地址:https://github.com/prometheus/node_exporter/releases/download/v1.1.1/node_exporter-1.1.1.linux-amd64.tar.gz
备用下载地址:node_exporter-1.1.1.linux-amd64.tar.gz

解压并创建软连接

tar zxvf /opt/app/node_exporter-1.1.1.linux-amd64.tar.gz -C /opt/app/
ln -s /opt/app/node_exporter-1.1.1.linux-amd64 /opt/app/node_exporter

直接启动方式

cd /opt/app/node_exporter-1.1.1.linux-amd64
nohup /opt/app/node_exporter-1.1.1.linux-amd64/node_exporter &

systemd脚本启动

#编写启动脚本
vim /opt/app/node_exporter/start.sh
#添加以下代码 --web.listen-address 指定端口 默认为9100 本文档修改为9101

#!/bin/bash
source /etc/profile
/opt/app/node_exporter/node_exporter  --web.listen-address=0.0.0.0:9101 > /opt/app/node_exporter/node_exporter.log 2>&1


#保存后赋予执行权限
chmod +x /opt/app/node_exporter/start.sh

#编辑systemd启动脚本
vim /usr/lib/systemd/system/node_exporter.service

#添加以下代码
[Unit]
Description=node_exporter.service
After=network.service
[Service]
Type=simple
ExecStart=/opt/app/node_exporter/start.sh

KillMode=mixed
Restart=on-failure
RestartSec=10s

[Install]
WantedBy=multi-user.target

修改prometheus配置文件添加监控项,默认node_exporter端口为9100 本文档已修改为9101

 vim /opt/app/Prometheus/prometheus.yml
文章最后添加以下代码
  - job_name: "linux"
    static_configs:
    - targets: ['172.15.35.23:9101']
      labels:
        instance: node1

重启prometheus验证效果

pkill prometheus
cd /opt/app/Prometheus/
nohup /opt/app/Prometheus/prometheus --config.file=/opt/app/Prometheus/prometheus.yml &
#使用systemd启动使用以下方式
systemctl restart prometheus.service 

打开prometheus自带的监控页面,Status -> Targets 查看:

五、监控mysql(mysqld-exporter)

下载链接:https://github.com/prometheus/mysqld_exporter/releases/download/v0.12.1/mysqld_exporter-0.12.1.linux-amd64.tar.gz

解压

tar zxvf mysqld_exporter-0.12.1.linux-amd64.tar.gz -C /opt/app/

创建配置文件 (port= 数据库端口,user=数据库用户,password=数据库登录密码)

vim /opt/app/mysqld_exporter-0.12.1.linux-amd64/.my.cnf
添加以下代码
[client]
port=3306
user=root
password=qwe123

启动

nohup /opt/app/mysqld_exporter-0.12.1.linux-amd64/mysqld_exporter --config.my-cnf=/opt/app/mysqld_exporter-0.12.1.linux-amd64/.my.conf &

修改prometheus配置文件添加监控项,默认msyqld_exporter端口为9104

vim /opt/app/Prometheus/prometheus.yml
文章最后添加以下代码
  - job_name: "mysql"
    static_configs:
    - targets: ['172.15.35.23:9104']

重启prometheus验证效果

pkill prometheus
cd /opt/app/Prometheus/
nohup /opt/app/Prometheus/prometheus --config.file=/opt/app/Prometheus/prometheus.yml &

六、安装grafana

prometheus默认的页面可能没有那么直观,我们可以安装grafana使监控看起来更直观

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

wget https://dl.grafana.com/oss/release/grafana-7.4.3-1.x86_64.rpm
rpm -ivh grafana-7.4.3-1.x86_64.rpm

把grafana加入到系统服务,将服务启动

/sbin/chkconfig --add grafana-server
service grafana-server start

修改默认端口

vim  /etc/grafana/grafana.ini
#去掉 http_port 前的;(分号)并将端口修改
;http_port = 3000
http_port = 3003

添加Prometheus数据源

Configuration -> Data Sources ->add data source -> Prometheus

新增Dashboard
离线8919Dashboard 下载地址:node-exporter-for-prometheus-dashboard-cn-8919-v20201010_rev24.json
离线可以选择上传Dashboard json文件
请不要使用 Import via panel json 会导致中文乱码,慎用
Create -> import

从 https://grafana.com/grafana/dashboards 搜索 相应 dashboards的id如8919,然后load。
选择 Prometheus数据源,最后import

查看Dashboard
Dashboards ->Manage

mysql展示图表 建议选择7362

© 版权声明
THE END
喜欢就支持一下吧
点赞0赞赏
分享
评论 抢沙发