dbaplus社群

Zabbix对接Prometheus实操教程:基于Prometheus pattern方式

得益于对云原生和容器监控的优势,Prometheus受到越来越多企业的青睐。对于已经部署Zabbix监控系统又想尝试Prometheus的企业,如果完全替换Prometheus存在困难或者没有必要,可以在保留Zabbix的同时引入Prometheus。(注:需Zabbix4.2及上版本)

Prometheus通过Exporters组件来收集数据。Exporters是一类数据采集组件的总称,它负责从目标处搜集数据,并将其转化为Prometheus支持的格式,并且暴露出一个HTTP API地址,等待Prometheus Server拉取数据并进行数据处理。Zabbix通过HTTP代理与Prometheus进行对接,拉取Exporters提供的大量Prometheus指标数据,然后通过内置的Prometheus pattern进行数据的处理和筛选,从而获取监控值。

本文将介绍如何使用Zabbix的Prometheus pattern项来对接Prometheus数据源。以Prometheus官方提供的Node_exporter采集器为例。

一、Node_exporter部署

1、下载Node_exporter部署包

Node_exporter部署包可以从Prometheus官网进行下载。地址如下:

https://prometheus.io/download/

Image

选择所需的版本,然后复制相关链接在服务器上面使用wget或curl进行下载,抑或直接下载后再上传到服务器。

2、解压安装
  • 下载好后,直接进行解压:

Image
  • 编写systemd启动服务

vim /usr/lib/systemd/system/node_exporter.service

将以下内容复制到文件中:

[Unit]Description=node-exporter serviceAfter=network.target[Service]User=prometheusGroup=prometheusKillMode=control-groupRestart=on-failureRestartSec=60ExecStart=/data/test/prometheus/node_exporter-1.5.0.linux-amd64/node_exporter \          --web.listen-address=:9100 \          --collector.systemd \          --collector.systemd.unit-whitelist=(sshd|nginx).service \          --collector.processes \          --collector.tcpstat[Install]WantedBy=multi-user.target

注意,启动命令的路径要根据实际的路径进行修改。

  • 创建普通用户Prometheus

useradd prometheus
  • 启动Node_exporter服务

systemctl daemon-reloadsystemctl start node_exporter.servicesystemctl status node_exporter.service
Image
3、访问测试

访问IP:9100端口。如图,部署成功且成功采集到数据。

Image
4、Node_exporter相关指标说明

Node_exporter是Prometheus用于监控服务器的采集器,其相关的采集指标说明可以参考以下地址,然后按需进行监控:

参考指标地址:

https://blog.csdn.net/qq_33326449/article/details/126663517

二、Zabbix对接Node_exporter

1、创建监控模板
Image

添加一个宏值:用以灵活监控多个主机

Image
2、创建HTTP代理监控项,获取Prometheus指标

使用HTTP代理监控项,获取Prometheus的指标数据

Image
3、创建相关项目监控项,使用Prometheus pattern获取监控值

这里以监控服务器的内存大小为例:

Image

添加处理步骤:

Image
4、添加监控主机

添加主机进行测试:

Image

修改宏值:

Image
5、查看指标数据

如图所示,成功对接,并且获取到监控数据。

Image
作者丨乐维社区
来源丨公众号:乐维社区(ID:lwops_cn)
dbaplus社群欢迎广大技术人员投稿,投稿邮箱:[email protected]
Image
Image