如何在 Rocky Linux 上安装 Prometheus 和 Node Exporter如何在 Rocky Linux 上安装 Prometheus 和 Node Exporter如何在 Rocky Linux 上安装 Prometheus 和 Node Exporter如何在 Rocky Linux 上安装 Prometheus 和 Node Exporter
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在 Rocky Linux 上安装 Prometheus 和 Node Exporter

在此页

  1. 你必须知道的基本概念
  2. 先决条件
  3. 添加新用户和目录
  4. 在 Rocky Linux 上安装 Prometheus
  5. 设置 Prometheus 服务文件
  6. 在 Rocky Linux 上安装 Node Exporter
  7. 将 Node_exporter 设置为服务
  8. 将 node_exporter 添加到 Prometheus
  9. 验证 Prometheus 和 Node Exporter 安装
  10. 结论

Prometheus 是一个开源监控和警报平台。

最初,Prometheus 是由 Soundcloud 于 2012 年创建的。此后 Prometheus 项目被一些知名公司 abe 采用,成为一个更大的项目,拥有非常活跃的开发人员和社区。 2016 年,Prometheus 项目毕业于云原生计算基金会(CNCF)。

你必须知道的基本概念

基本上,Prometheus 通过 HTTP 端点从目标服务器收集数据和指标,然后将所有数据存储为时间序列。在 Prometheus 中,时间序列数据由指标名称和键/值对标识。

Prometheus 通过 Prometheus 查询语言 (PromQL) 提供灵活性。您可以使用 PromQL 查询 Prometheus 时间序列数据库。

在目标服务器上,您必须安装向 Prometheus 公开所有数据和指标的导出器应用程序。 Node Exporter 是监控 Linux 机器的常用导出器。

节点导出器公开来自 Linux 机器的硬件和内核相关矩阵。它以单个二进制文件的形式出现,将数据端指标公开给 Prometheus 服务器。

先决条件

在本文中,您将学习如何在 Rocky Linux 8 系统上安装 Prometheus 监控工具和 Node Exporter。

在开始之前,请确保您已满足以下要求:

  • 操作系统:Rocky Linux 8.5(绿黑曜石)
  • 根权限

对于此示例,我们使用 IP 地址为 192.168.1.10 的 Rocky Linux 系统。

现在让我们开始吧。

添加新用户和目录

首先,您将创建一个新的系统用户 prometheus,然后为 Prometheus 安装创建一个新的配置目录和数据目录。

1. 执行以下命令创建一个新用户prometheus。

sudo adduser -M -r -s /sbin/nologin prometheus

2. 之后,使用以下命令创建新的配置目录/etc/prometheus 和数据目录/var/lib/prometheus。

sudo mkdir /etc/prometheus
sudo mkdir /var/lib/prometheus

所有 Prometheus 配置都将在 /etc/prometheus 目录中可用,所有 Prometheus 数据将自动保存到目录 /var/lib/prometheus 中。

在 Rocky Linux 上安装 Prometheus

在此步骤中,您将从 tarball 或 tar.gz 文件手动安装 Prometheus 监控系统。

从此链接中选择 Prometheus 版本。对于这个例子,我们要安装 Prometheuss 最新版本。

1. 将工作目录更改为 /usr/src 并使用以下命令下载 Prometheus 二进制文件。

cd /usr/src
wget https://github.com/prometheus/prometheus/releases/download/v2.31.1/prometheus-2.31.1.linux-amd64.tar.gz

下载过程完成后,解压缩 Prometheus 文件。

tar -xf prometheus-2.31.1.linux-amd64.tar.gz

现在您将看到一个新目录 prometheus-VERSION.OS。

2.接下来,将所有Prometheus配置复制到目录/etc/prometheus和二进制文件prometheus到/usr/local/bin目录.

将环境变量 PROM_SRC 设置到目录 /usr/src/prometheus-*。

export PROM_SRC=/usr/src/prometheus-*

将 prometheus 配置 prometheus.yml 复制到目录 /etc/prometheus。

sudo cp $PROM_SRC/prometheus.yml /etc/prometheus/

将二进制文件 prometheus 和 promtool 复制到目录 /usr/local/bin/。

sudo cp $PROM_SRC/prometheus /usr/local/bin/
sudo cp $PROM_SRC/promtool /usr/local/bin/

将 Prometheus 控制台模板和库复制到 /etc/prometheus 目录。

sudo cp -r $PROM_SRC/consoles /etc/prometheus
sudo cp -r $PROM_SRC/console_libraries /etc/prometheus

3. 接下来,使用 nano 编辑器编辑 Prometheus 配置 /etc/prometheus/prometheus.yml。

nano /etc/prometheus/prometheus.yml

在 scrape_configs 选项上,您可能需要添加监控作业以及如何从目标中抓取所有数据。

默认配置带有默认监控作业名称 prometheus 和目标服务器 localhost 通过 static_configs 选项。

将目标从 localhost:9090 更改为服务器 IP 地址192.168.1.10:9090,如下所示。

# 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"

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
      - targets: ["192.168.1.10:9090"]

保存配置并退出。

4. 现在执行以下命令将配置和数据目录更改为用户promethues。

sudo chown prometheus:prometheus /etc/prometheus
sudo chown prometheus:prometheus /var/lib/prometheus

现在您已经完成了基本的 prometheus 安装。

设置普罗米修斯服务文件

在此步骤中,您将把 Prometheus 设置为系统服务。

1. 使用 nano 编辑器创建一个新的 systemd 服务文件 /etc/systemd/system/prometheus.service。

sudo nano /etc/systemd/system/prometheus.service

复制并粘贴以下配置。

[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target

[Service]
User=prometheus
Group=prometheus
Type=simple
ExecStart=/usr/local/bin/prometheus \
    --config.file /etc/prometheus/prometheus.yml \
    --storage.tsdb.path /var/lib/prometheus/ \
    --web.console.templates=/etc/prometheus/consoles \
    --web.console.libraries=/etc/prometheus/console_libraries

[Install]
WantedBy=multi-user.target

保存配置并退出。

2. 接下来,重新加载 systemd 管理器以应用新配置。

sudo systemctl daemon-reload

3.现在执行以下命令启动并启用Prometheus服务,然后检查它的当前状态。

sudo systemctl enable --now prometheus
sudo systemctl status prometheus

如果安装成功,您将看到 prometheus 服务处于活动状态并正在运行,如下所示。

现在可以在 TCP 端口 9090 上访问 Prometheus 监控工具。

4. 打开您的 Web 浏览器并在地址栏中输入端口为 9090 的服务器 IP 地址。

http://192.168.1.10:9090/

您将在下面看到普罗米修斯仪表板查询。

现在你已经完成了 prometheus 的安装。转到安装 Node Exporter 的下一步。

在 Rocky Linux 上安装 Node Exporter

节点导出器是普罗米修斯项目的一部分。您可以使用节点导出器将 Linux 服务器的指标导出到 Prometheus 服务器。

在此步骤中,您将从 tar.gz 文件在 Rocky Linux 系统上安装节点导出器。

检查此链接以获取最新版本的节点导出器。在此示例中,我们将安装节点导出器版本 1.3.0。

1. 将工作目录更改为 /usr/src 并使用以下命令下载节点导出器二进制文件。

cd /usr/src/
wget https://github.com/prometheus/node_exporter/releases/download/v1.3.0/node_exporter-1.3.0.linux-amd64.tar.gz

如果下载过程完成,请解压缩节点导出器文件。

tar -xf node_exporter-1.3.0.linux-amd64.tar.gz

现在您将获得一个新目录 node_exporter-VERSION.OS。

2. 接下来,使用以下命令将节点导出器二进制文件移动到目录 /usr/local/bin。

mv node_exporter-*/node_exporter /usr/local/bin

转到下一步,将节点导出器设置为 systemd 服务。

将 Node_exporter 设置为服务

在创建节点导出器服务文件之前,创建一个新的系统用户 node_exporter。

1.执行以下命令创建一个新的系统用户。

sudo adduser -M -r -s /sbin/nologin node_exporter

2. 接下来,使用 nano 编辑器为节点导出器 /etc/systemd/system/node_exporter.service 创建一个新的服务文件。

sudo nano /etc/systemd/system/node_exporter.service

复制并粘贴以下配置。

[Unit]
Description=Node Exporter
After=network.target

[Service]
User=node_exporter
Group=node_exporter
Type=simple
ExecStart=/usr/local/bin/node_exporter

[Install]
WantedBy=multi-user.target

保存配置并退出。

3. 现在重新加载 systemd 管理器以应用新配置。

sudo systemctl daemon-reload

4. 使用以下命令启动并启用服务 node_exporter。

sudo systemctl enable --now node_exporter

之后,检查服务 node_exporter 的当前状态。

sudo systemctl status node_exporter

确保 node_exporter 服务处于活动状态并正在运行。

5. 节点导出器在默认端口 9100 上运行。使用下面的 ss 命令进行验证。

ss -aplnt | grep node

您将看到类似如下的输出。

State    Recv-Q   Send-Q     Local Address:Port     Peer Address:Port   Process
LISTEN   0        128              0.0.0.0:22            0.0.0.0:*       users:(("sshd",pid=683,fd=4))
LISTEN   0        128                    *:9090                *:*       users:(("prometheus",pid=709,fd=8))
LISTEN   0        128                    *:9100                *:*       users:(("node_exporter",pid=5786,fd=3))
LISTEN   0        128                 [::]:22               [::]:*       users:(("sshd",pid=683,fd=6))

至此,你已经在 Rocky Linux 系统上完成了 node exporter 的安装。

将 node_exporter 添加到 Prometheus

完成 Prometheus 和节点导出器安装后,将节点导出器添加到 Prometheus 服务器。

1. 使用 nano 编辑器编辑 Prometheus 配置。

sudo nano /etc/prometheus/prometheus.yml

在 scrape_config 部分下,使用以下配置添加一个新的 Prometheus 作业。并确保更改目标服务器的服务器 IP 地址。

  - job_name: 'node_exporter_metrics'
    scrape_interval: 5s
    static_configs:
      - targets: ['SERVER-IP:9100']

保存配置并退出。

2. 现在重新启动 Prometheus 服务以应用新配置。

sudo systemctl restart prometheus

并且您已将节点导出器添加到 Prometheus 服务器。

验证 Prometheus 和 Node Exporter 安装

1. 返回 Prometheus 仪表板,单击菜单Status 并选择Targets。

您将看到两个不同的端点,prometheus 和 node_exporter_metrics。

2. 接下来,移动到菜单 graph 并在搜索栏中键入 PromQL 查询。对于此示例,使用查询 node_os_info 检查详细的操作系统。

您将看到有关当前操作系统的详细信息。

3. 另一个例子,使用查询node_network_speed_bytes 检查网络速度,然后移动到选项卡Graph。你会看到类似下面的输出。

现在你已经成功地在 Rocky Linux 系统上安装了 Prometheus 和 node exporter。

结论

恭喜!您已经了解了 Rocky Linux 系统上 Prometheus 监控系统和节点导出器的基本安装和配置。

对于下一步,您可以探索其他应用程序的另一个 Prometheus 导出器和作为监控仪表板的 Grafana。

©2015-2025 艾丽卡 support@alaica.com