Prometheus + Grafana 监控系统搭建使用指南-Node Exporter 安装

Node Exporter 安装指南

在完成了 Prometheus + Grafana 的搭建后,我们就可以安装部署各类需要的Exporter 用于向 Prometheus 暴露监控数据。

系列文章目录

  1. Prometheus 的安装部署
  2. Grafana的安装部署
  3. Linux服务器接入Prometheus监控-Node Exporter 安装指南
  4. Prometheus 接入SpringBoot微服务监控
  5. Mysql 接入 Prometheus
  6. RocketMQ 接入Prometheus 监控
  7. ElasticSearch 接入 Prometheus
  8. Nacos 接入 Prometheus 监控
  9. Redis 接入 Prometheus 监控系统
  10. Prometheus + Grafana 监控系统-告警规则配置
  11. Prometheus + Grafana 监控系统-PrometheusAlert安装与配置指南

关于 Exporters

在这里插入图片描述

安装并配置各种Exporters,如Node Exporter、MySQL Exporter等,以便Prometheus可以收集各种类型的监控数据。

  • Prometheus社区提供了丰富的Exporter实现,涵盖了从基础设施,中间件以及网络等各个方面的监控功能。
  • 各种数据采集实践参考:
    • https://cloud.tencent.com/developer/article/1492442
    • https://monaive.gitbook.io/prometheus/part-ii-prometheus-shu-ju-cai-ji-yu-gao-jing/exporter

Node Exporter 安装部署

Node Exporter 是一个用于收集 Linux 系统监控数据的工具。

Node Exporter 它可以收集主机的各种硬件和操作系统指标,如CPU、内存、磁盘、网络等。你需要在ECS服务器上安装并运行Node Exporter,然后配置Prometheus去抓取这些指标。
ECS自定义指标:除了Node Exporter提供的通用指标外,你还可以根据ECS的特性自定义一些监控指标,比如ECS的CPU配额、内存配额等。这些可能需要通过ECS的API或其他手段来获取。、
当在生产环境中使用Node Exporter时,您需要确保安全性和可靠性。以下是一个基本的示例,演示如何在生产环境中搭建Node Exporter。

1. 安装

  1. 下载和安装 Node Exporter
    - 下载链接:Node Exporter Releases

    wget https://github.com/prometheus/node_exporter/releases/download/v1.8.1/node_exporter-1.8.1.linux-amd64.tar.gz
    tar -xvf node_exporter-*.tar.gz
    
  2. 创建 Node Exporter 服务
    创建一个systemd服务单元文件,以便Node Exporter可以作为服务在后台运行。
    - 服务单元文件示例(/etc/systemd/system/node_exporter.service):

    [Unit]
    Description=Node Exporter
    After=network.target
    
    [Service]
    ExecStart=/usr/local/bin/node_exporter
    Restart=on-failure
    
    [Install]
    WantedBy=multi-user.target
    
    • node_exporter 默认监听 9100 ,如果需要修改web监听端口,则增加启动参数: --web.listen-address=“127.0.0.1:9190”

      • 如果我们希望 Node Exporter 只监听本机的 IPv4 地址 127.0.0.1,并使用端口号 9111,则可以使用以下命令来启动 Node Exporter: node_exporter -web.listen-address=“127.0.0.1:9111”

      • 注意: 需要注意的是,在配置 Node Exporter 监听地址时,需要确保选择的地址能够被 Prometheus 或其他监控系统访问到。如果是在本机上运行的 Prometheus,则可以选择监听本机的地址;如果是在其他机器上运行的 Prometheus,则需要将 Node Exporter 的地址设置为能够被 Prometheus 访问到的地址。

  3. 启动Node Exporter服务并设置开机自启:

    sudo systemctl start node_exporter
    sudo systemctl enable node_exporter
    
    • 如果 service 文件有变更,需要生效: systemctl daemon-reload , 然后才能执行 systemctl restart node_exporter

2. 配置,部署

  1. 步骤 3: 配置防火墙和安全组

    1. 如果您的生产环境使用防火墙或安全组,请确保允许Node Exporter的端口(默认为9100)通过防火墙或安全组。
  2. 步骤 4: 验证 Node Exporter

    1. 在浏览器中访问Node Exporter的地址和端口(例如:http://your_server_ip:9100/metrics ),确保可以访问到Node Exporter的指标数据。
  3. 步骤 5: 集成到 Prometheus

    1. 编辑prometheus.yml文件: 在scrape_configs部分添加新的监控目标以便Prometheus可以收集Node Exporter的指标数据。
      scrape_configs:
        - job_name: 'node'
          static_configs:
            - targets: ['node1:9100', 'node2:9100']  # 现有的监控目标
            - targets: ['new_node:9100']  # 新增的监控目标
      
    2. 让新增的配置生效
      1. 方案一:重启服务
        sudo systemctl reload prometheus
        
      2. 方案二: 发信号,大多数情况下,您可以通过重新加载配置而不是重启Prometheus服务来使新添加的Node Exporter生效。
        # 向prometheus进行发信号: kill -HUP  <pid>
        sudo kill -HUP $(pidof prometheus)
        
        这将向Prometheus进程发送SIGHUP信号,提示它重新加载配置文件。在接收到SIGHUP信号后,Prometheus将重新加载配置文件并开始监控新添加的Node Exporter。
        请注意,重新加载配置可能会导致一些瞬时的性能波动,因此建议在低峰期执行配置重载操作。此外,确保您的prometheus.yml文件中的语法正确,以避免配置重载失败。
      3. 方案三: 向prometheus发送HTTP请求
        # /-/reload只接收POST请求,并且需要在启动prometheus进程时,指定 --web.enable-lifecycle
        #例如: curl -X POST 127.0.0.1:9090/-/reload
        curl -XPOST http://your-prometheus.com/-/reload
        
    3. 在Grafana 上给 Node Exporter 配置一个仪表盘(dashboard)
      1. 选择你需要的仪表盘
        在这里插入图片描述

      2. 导入仪表盘到Grafana
        在这里插入图片描述

    4. 示例效果在这里插入图片描述
  • 27
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值