如何使用 Prometheus 监控 Linux 服务器性能

如何使用 Prometheus 监控 Linux 服务器性能如何使用 Prometheus 监控 Linux 服务器性能使用 Prometheus 监控 Linux 服务器性能 是一套强大且灵活的解决方案 可以帮助你实时监控服务器的 CPU 内存 磁盘 网络等性能指标

大家好,欢迎来到IT知识分享网。

如何使用 Prometheus 监控 Linux 服务器性能

如何使用 Prometheus 监控 Linux 服务器性能

使用 Prometheus 监控 Linux 服务器性能 是一套强大且灵活的解决方案,可以帮助你实时监控服务器的 CPU、内存、磁盘、网络等性能指标。以下是从安装到配置的完整指南,包括如何使用 PrometheusNode Exporter 进行监控。


1. Prometheus 和 Node Exporter 简介

  • Prometheus
    • 一个开源的监控工具,用于收集和存储时间序列数据(如服务器性能)。
    • 提供强大的查询语言(PromQL)以及内置的警报功能。
  • Node Exporter
    • 一个 Prometheus 的官方导出器,用于收集 Linux 系统的性能指标,如 CPU 使用率、内存使用、磁盘 I/O、网络等。
    • 运行在每个需要监控的 Linux 服务器上。

2. 环境准备

在安装和配置之前,请确保以下条件满足:

  1. Linux 服务器: 一台用于安装 Prometheus 的服务器(监控主机)。 一台或多台需要被监控的 Linux 服务器。
  2. Root 权限:安装过程中需要 root 或 sudo 权限。
  3. 网络连通性:监控主机需能访问被监控服务器的指定端口(默认 9100)。

3. 安装和配置步骤

3.1 安装 Prometheus(监控主机)

步骤 1:下载 Prometheus

  1. 前往 Prometheus 官方下载页面:https://prometheus.io/download/。
  2. 或使用以下命令下载最新版本(以 v2.47.0 为例):
  3. bash
  4. 复制
  5. wget https://github.com/prometheus/prometheus/releases/download/v2.47.0/prometheus-2.47.0.linux-amd64.tar.gz

步骤 2:解压 Prometheus

bash

复制

tar -xvzf prometheus-2.47.0.linux-amd64.tar.gz cd prometheus-2.47.0.linux-amd64 

步骤 3:运行 Prometheus

  • 使用默认配置启动 Prometheus:
  • bash
  • 复制
  • ./prometheus –config.file=prometheus.yml
  • 默认 Prometheus 会监听在 http://<监控主机IP>:9090。

3.2 安装 Node Exporter(被监控服务器)

步骤 1:下载 Node Exporter

  1. 前往 Node Exporter 官方页面:https://prometheus.io/download/。
  2. 或使用以下命令下载最新版本(以 v1.6.1 为例):
  3. bash
  4. 复制
  5. wget https://github.com/prometheus/node_exporter/releases/download/v1.6.1/node_exporter-1.6.1.linux-amd64.tar.gz

步骤 2:解压并运行

bash

复制

tar -xvzf node_exporter-1.6.1.linux-amd64.tar.gz cd node_exporter-1.6.1.linux-amd64 ./node_exporter 
  • 默认 Node Exporter 会监听在 http://<服务器IP>:9100。

步骤 3:设置为系统服务(可选,确保自动启动)

  1. 创建 Systemd 服务文件:
  2. bash
  3. 复制
  4. sudo nano /etc/systemd/system/node_exporter.service
  5. 添加以下内容:
  6. ini
  7. 复制
  8. [Unit] Description=Node Exporter After=network.target [Service] User=nobody ExecStart=/path/to/node_exporter [Install] WantedBy=default.target
  9. 替换 /path/to/node_exporter 为 Node Exporter 的实际路径。
  10. 启用并启动服务:
  11. bash
  12. 复制
  13. sudo systemctl daemon-reload sudo systemctl enable node_exporter sudo systemctl start node_exporter

3.3 配置 Prometheus

步骤 1:修改 Prometheus 配置文件

  1. 编辑 prometheus.yml 文件:
  2. bash
  3. 复制
  4. nano prometheus.yml
  5. 添加被监控服务器节点信息:
  6. yaml
  7. 复制
  8. scrape_configs: job_name: ‘node_exporter’ static_configs: targets: ‘<被监控服务器IP>:9100’ ‘<其他被监控服务器IP>:9100’
  9. 示例:
  10. yaml
  11. 复制
  12. scrape_configs: job_name: ‘node_exporter’ static_configs: targets: ‘192.168.1.101:9100’ ‘192.168.1.102:9100’

步骤 2:重启 Prometheus

bash

复制

./prometheus --config.file=prometheus.yml 

3.4 验证安装

  1. 检查 Prometheus 状态
  2. 打开浏览器,访问 http://<Prometheus主机IP>:9090。
  3. 在页面顶部输入查询 up,查看 Node Exporter 是否已成功连接。
  4. 检查指标数据
  5. 在 Prometheus 的查询界面输入以下指标: node_cpu_seconds_total:查看 CPU 使用情况。 node_memory_MemAvailable_bytes:查看可用内存。 node_network_transmit_bytes_total:查看网络传输数据。

4. 配置 Grafana 可视化(可选)

4.1 安装 Grafana

  1. 下载并安装 Grafana:
  2. bash
  3. 复制
  4. sudo apt-get install -y grafana # Debian/Ubuntu sudo yum install -y grafana # CentOS/RHEL
  5. 启动服务:
  6. bash
  7. 复制
  8. sudo systemctl start grafana-server sudo systemctl enable grafana-server
  9. 默认访问地址:http://<服务器IP>:3000(默认账户:admin/admin)。

4.2 配置 Prometheus 数据源

  1. 登录 Grafana。
  2. 在左侧菜单中选择 Configuration > Data Sources
  3. 添加一个新的数据源,选择 Prometheus,并配置 URL 为 http://<Prometheus主机IP>:9090。

4.3 使用现成的 Grafana Dashboard

  1. 前往 Grafana Dashboard 共享库。
  2. 搜索并下载 Node Exporter Full Dashboard(常用 ID:1860)。
  3. 在 Grafana 导入该 Dashboard,并选择 Prometheus 数据源。

5. Prometheus 监控的关键指标

以下是 Prometheus 监控 Linux 服务器时常用的指标:

指标

用途

node_cpu_seconds_total

CPU 使用率(以秒为单位)。

node_memory_MemAvailable_bytes

可用内存总量(字节)。

node_memory_MemTotal_bytes

系统总内存(字节)。

node_filesystem_avail_bytes

磁盘可用空间(字节)。

node_network_transmit_bytes_total

网络发送的总字节数。

node_network_receive_bytes_total

网络接收的总字节数。

node_load1

过去 1 分钟的系统平均负载。


6. 警报配置(可选)

Prometheus 支持通过 Alertmanager 配置警报。以下是简单的警报配置示例:

  1. 在 prometheus.yml 中添加警报规则:
  2. yaml
  3. 复制
  4. rule_files: “alert.rules”
  5. 创建 alert.rules 文件:
  6. yaml
  7. 复制
  8. groups: name: example_alerts rules: alert: HighCPUUsage expr: avg(rate(node_cpu_seconds_total[1m])) > 0.9 for: 1m labels: severity: warning annotations: description: “CPU usage is above 90% for the past 1 minute.”
  9. 重启 Prometheus。

7. 总结

通过 PrometheusNode Exporter,你可以轻松实现对 Linux 服务器性能的全面监控。以下是关键步骤:

  1. 安装 Prometheus 并配置监控主机。
  2. 在每台被监控服务器上安装 Node Exporter。
  3. 配置 Prometheus 采集指标数据,并通过 PromQL 查询关键性能指标。
  4. (可选)结合 Grafana 实现数据可视化和警报。

这种监控方案灵活、可靠且开源,非常适合企业和个人使用。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/184502.html

(0)
上一篇 2025-07-30 10:33
下一篇 2025-07-30 11:10

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信