性能测试监控平台搭建-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启动成功的记录

posted @ 2024-12-15 15:13  tigerMao  阅读(508)  评论(0)    收藏  举报