性能测试监控平台搭建-node_exporter(三)
3. 安装node_exporter
3.1 下载node_exporter的tar包(合理上网)
官网下载地址:https://prometheus.io/download/

3.2 安装node_exporter(不需要监控linux的计算机不安装需要的安装)
创建存放安装包的目录(环境已经创建的可以跳过)
[root@master ~]# mkdir -p /opt/tgz
创建安装目录(环境已经创建的可以跳过)
[root@master ~]# mkdir -p /opt/app
node_exporter的tar包上传到tgz目录下
[root@master ~]# cd /opt/tgz/
[root@master tgz]# ll
总用量 297756
-r--------. 1 root root 10676343 10月 11 11:01 node_exporter-1.8.2.linux-amd64.tar.gz
解压node_exporter-1.8.2.linux-amd64.tar.gz
[root@master tgz]# tar zxvf node_exporter-1.8.2.linux-amd64.tar.gz
node_exporter-1.8.2.linux-amd64/
node_exporter-1.8.2.linux-amd64/NOTICE
node_exporter-1.8.2.linux-amd64/node_exporter
node_exporter-1.8.2.linux-amd64/LICENSE
将解压后端文件移动到/opt/app的目录下,并且修改目录下所以文件的权限给当前用户,我这里是root用户
[root@master tgz]# mv node_exporter-1.8.2.linux-amd64 /opt/app/node_exporter-1.8.2
[root@master tgz]# cd /opt/app
[root@master app]# chown -R root:root node_exporter-1.8.2
创建node_exporter的系统启动文件
[root@master ~]# vim /usr/lib/systemd/system/node_exporter.service
在node_exporter.service文件中输入如下内容,这里需要注意路径为本地的node_exporter的目录位置
[Unit]
Description=prometheus node_exporter Daemon
Documentation=https://github.com/prometheus/node_exporter
Requires=network.target
After=network.target
[Service]
Type=simple
User=root
Group=root
WorkingDirectory=/opt/app/node_exporter-1.8.2
ExecStart=/opt/app/node_exporter-1.8.2/node_exporter --log.level=info
TimeoutSec=30
Restart=always
[Install]
WantedBy=multi-user.target
启动node_exporter的服务
# 更新系统服务的daemon
[root@master ~]# systemctl daemon-reload
# 启动服务
[root@master ~]# systemctl start node_exporter
# 设置服务为开机自动启动
[root@master ~]# systemctl enable node_exporter
# 检查服务的启动状态
[root@master ~]# systemctl status node_exporter
● node_exporter.service - prometheus node_exporter Daemon
Loaded: loaded (/usr/lib/systemd/system/node_exporter.service; enabled; vendor preset: disabled)
Active: active (running) since 五 2024-10-11 19:43:32 CST; 58min ago
Docs: https://github.com/prometheus/node_exporter
Main PID: 1327 (node_exporter)
CGroup: /system.slice/node_exporter.service
└─1327 /opt/app/node_exporter-1.8.2/node_exporter --log.level=info
10月 11 19:43:34 centos7 node_exporter[1327]: ts=2024-10-11T11:43:34.394Z caller=node_exporter.go:118 level=info collector=time
10月 11 19:43:34 centos7 node_exporter[1327]: ts=2024-10-11T11:43:34.394Z caller=node_exporter.go:118 level=info collector=timex
10月 11 19:43:34 centos7 node_exporter[1327]: ts=2024-10-11T11:43:34.394Z caller=node_exporter.go:118 level=info collector=udp_queues
10月 11 19:43:34 centos7 node_exporter[1327]: ts=2024-10-11T11:43:34.394Z caller=node_exporter.go:118 level=info collector=uname
10月 11 19:43:34 centos7 node_exporter[1327]: ts=2024-10-11T11:43:34.394Z caller=node_exporter.go:118 level=info collector=vmstat
10月 11 19:43:34 centos7 node_exporter[1327]: ts=2024-10-11T11:43:34.394Z caller=node_exporter.go:118 level=info collector=watchdog
10月 11 19:43:34 centos7 node_exporter[1327]: ts=2024-10-11T11:43:34.394Z caller=node_exporter.go:118 level=info collector=xfs
10月 11 19:43:34 centos7 node_exporter[1327]: ts=2024-10-11T11:43:34.394Z caller=node_exporter.go:118 level=info collector=zfs
10月 11 19:43:34 centos7 node_exporter[1327]: ts=2024-10-11T11:43:34.480Z caller=tls_config.go:313 level=info msg="Listening on" address=[::]:9100
10月 11 19:43:34 centos7 node_exporter[1327]: ts=2024-10-11T11:43:34.501Z caller=tls_config.go:316 level=info msg="TLS is disabled." http2=false address=[::]:9100
通过浏览器地址访问 http://10.0.0.100:9100/metrics 的地址访问(ip地址使用实际的地址)显示如下内容代表安装成功

修改prometheus的配置文件,用于添加对node_exporter的数据收集,在安装prometheus的目录下找到prometheus.yml的配置文件
[root@master ~]# cd /opt/app/prometheus-2.53.2/
[root@master prometheus-2.53.2]# ll
总用量 261328
drwxr-xr-x. 2 root root 38 8月 9 23:13 console_libraries
drwxr-xr-x. 2 root root 173 8月 9 23:13 consoles
drwxr-xr-x. 6 root root 138 10月 11 19:43 data
-rw-r--r--. 1 root root 11357 8月 9 23:13 LICENSE
-rw-r--r--. 1 root root 3773 8月 9 23:13 NOTICE
-rwxr-xr-x. 1 root root 137838575 8月 9 22:56 prometheus
-rw-r--r--. 1 root root 950 10月 11 16:14 prometheus.yml
-rwxr-xr-x. 1 root root 129735160 8月 9 22:56 promtool
-rw-r--r--. 1 root root 45 10月 11 16:11 reload-prometheus.sh
# 修改配置文件添加node_exporter的数据收集信息
[root@master prometheus-2.53.2]# vim prometheus.yml
在prometheus.yml文件中进行修改
# my global config
global:
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
# scrape_timeout is set to the global default (10s).
# Alertmanager configuration
alerting:
alertmanagers:
- static_configs:
- targets:
# - alertmanager:9093
# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
# - "first_rules.yml"
# - "second_rules.yml"
# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
- job_name: "prometheus"
static_configs:
- targets: ["10.0.0.100:9090"]
# 添加node_exporter的配置信息
- job_name: "node_exporter"
static_configs:
- targets: ["10.0.0.100:9100"]
对prometheus进行热加载修改的配置
[root@master prometheus-2.53.2]# curl -X POST http://10.0.0.100:9090/-/reload
通过浏览器地址访问 http://10.0.0.100:9090 的地址访问(ip地址使用实际的地址),在Status->Targets 下 看到 node_exporter启动成功的记录


浙公网安备 33010602011771号