跳到正文
Crazy0x70 的头像随笔随想
目录

准备工作

本次使用的操作系统为:Debian12

Terminal window
apt-get update && apt-get dist-upgrade -y
apt install screen unzip wget curl net-tools git ntpdate apt-transport-https software-properties-common -y

安装Prometheus

Prometheus 项目主页:https://github.com/prometheus/prometheus/ 下载prometheus安装包

Terminal window
wget https://github.com/prometheus/prometheus/releases/download/v2.55.0-rc.0/prometheus-2.55.0-rc.0.linux-amd64.tar.gz
tar zxf prometheus-2.55.0-rc.0.linux-amd64.tar.gz -C /opt
mv /opt/prometheus-2.55.0-rc.0.linux-amd64.tar.gz /opt/prometheus

添加为系统服务

Terminal window
vim /lib/systemd/system/prometheus.service

编辑服务

[Unit]
Description=prometheus service
[Service]
User=root
ExecStart=/opt/prometheus/prometheus --config.file=/opt/prometheus/prometheus.yml --storage.tsdb.path=/opt/prometheus/data
TimeoutStopSec=10
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target

赋权

Terminal window
chmod +x /lib/systemd/system/prometheus.service

启动prometheus服务

Terminal window
systemctl daemon-reload
systemctl start prometheus
systemctl enable prometheus #设置开机自启

检查prometheus运行状态

Terminal window
systemctl status prometheus
netstat -tunlp | grep 9090 #查看 prometheus 9090端口是否起来

浏览器里访问 http://ip:9090 查看是否正常

安装Grafana

设置官方源

Terminal window
wget -q -O - https://packages.grafana.com/gpg.key | apt-key add -
echo "deb https://packages.grafana.com/oss/deb stable main" | tee /etc/apt/sources.list.d/grafana.list

安装Grafana

Terminal window
apt update -y && apt install grafana -y
systemctl daemon-reload
systemctl start grafana-server #启动 grafana 服务
systemctl enable grafana-server #设置开机启动

检查Grafana运行状态

Terminal window
netstat -tunlp | grep 3000

浏览器里访问 http://ip:3000 查看是否正常,初始账号密码为admin/admin

安装配置 node_exporter

项目主页:https://github.com/prometheus/node_exporter

Terminal window
wget https://github.com/prometheus/node_exporter/releases/download/v1.8.2/node_exporter-1.8.2.linux-amd64.tar.gz
tar zxf node_exporter-1.8.2.linux-amd64.tar.gz -C /opt/
mv /opt/node_exporter-1.8.2.linux-amd64/ /opt/node_exporter

添加为系统服务

Terminal window
vim /lib/systemd/system/node_exporter.service

编辑服务

[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target
[Service]
User=root
ExecStart=/opt/node_exporter/node_exporter
[Install]
WantedBy=default.target

启动服务

Terminal window
systemctl daemon-reload
systemctl start node_exporter #启动 node_exporter
systemctl enable node_exporter #设置开机启动

服务端安装 node_exporter 几个插件

Terminal window
grafana-cli plugins install grafana-piechart-panel
grafana-cli plugins install digiapulssi-breadcrumb-panel
grafana-cli plugins install grafana-polystat-panel

重启 node_exporter 服务

Terminal window
systemctl restart grafana-server

浏览器里访问 http://ip:9100/metrics 测试 node_exporter 是否获取到节点的监控指标

回到Grafana的主界面,添加 prometheus 主服务器数据源

点第一个 prometheus ,Connection 填写 http://127.0.0.1:9090 然后网页最下面点 Save&test 然后点 Dashboards ,选择 Prometheus 点 Import 这一步必须要做,要不然后面的导入第三方仪表盘文件会没有监控数据。 导入在 https://github.com/starsliao/Prometheus/tree/master/node_exporter 这里下载的仪表盘,上传仪表板 JSON 文件 选择默认数据源,点 Import

添加被监控的服务器

在被监控的服务器上面安装 node_exporter

Terminal window
wget https://github.com/prometheus/node_exporter/releases/download/v1.8.2/node_exporter-1.8.2.linux-amd64.tar.gz
tar zxf node_exporter-1.8.2.linux-amd64.tar.gz -C /opt/
mv /opt/node_exporter-1.8.2.linux-amd64/ /opt/node_exporter

添加为系统服务

Terminal window
vim /lib/systemd/system/node_exporter.service

编辑服务

[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target
[Service]
User=root
ExecStart=/opt/node_exporter/node_exporter
[Install]
WantedBy=default.target

启动服务

Terminal window
systemctl daemon-reload
systemctl start node_exporter #启动 node_exporter
systemctl enable node_exporter #设置开机启动

安装完 node_exporter ,记得在被监控的服务器上面检查 9100 端口有没有起来

配置Prometheus

编辑服务端上Prometheus配置文件:

Terminal window
vim /opt/prometheus/prometheus.yml

注意格式,多少个空格就是多少个空格,不然会报错。
job_name 不能重复,targets 填写被监控的服务器 IP。

- job_name: "Windows"
static_configs:
- targets: ["10.198.10.2:9182"]

最好是复制自带的9090模板,然后再自己改动一下。 重启 prometheus 服务。每次添加服务器编辑后都要重启 prometheus 服务。

Terminal window
systemctl restart prometheus.service

返回Grafana面版即可查看数据