0
点赞
收藏
分享

微信扫一扫

zabbix对接Prometheus实操——基于Prometheus pattern监控

一叶随风_c94d 2023-03-09 阅读 65

概述

得益于对云原生和容器监控的友好支持,如今,Prometheus监控受到越来越多企业的青睐。然而,对于已经部署了Zabbix监控系统的企业,想要用Prometheus完全替换Zabbbix,可能既无必要,短期也不现实。实际上,Zabbix 4.2及后续版本增加了对Prometheus数据源的接入,已经能够实现用Zabbix来对接Prometheus监控。

Prometheus通过Exporters组件来收集数据。Exporters是一类数据采集组件的总称,它负责从目标处搜集数据,并将其转化为Prometheus支持的格式,并且暴露出一个HTTP API地址,等待Prometheus Server拉取数据并进行数据处理。

zabbix对接Prometheus实操——基于Prometheus pattern监控_prometheus

Zabbix对接Prometheus也是通过HTTP代理,拉取Exporters提供的大量Prometheus指标数据,然后通过内置的Prometheus pattern进行数据的处理和筛选,从而获取监控值。

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

1. Node_exporter部署

1.1. 下载Node_exporter部署包

Node_exporter部署包可以从Prometheus官网进行下载。

地址:https://prometheus.io/download/

zabbix对接Prometheus实操——基于Prometheus pattern监控_prometheus_02

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

1.2. 解压安装

1.2.1.下载好后,直接进行解压:

zabbix对接Prometheus实操——基于Prometheus pattern监控_zabbix_03

1.2.2. 编写systemd启动服务

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

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

[Unit]

Description=node-exporter service

After=network.target

[Service]

User=prometheus

Group=prometheus

KillMode=control-group

Restart=on-failure

RestartSec=60

ExecStart=/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

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

1.2.3. 创建普通用户prometheus

useradd prometheus

1.2.4. 启动Node_exporter服务

systemctl daemon-reload

systemctl start node_exporter.service

systemctl status node_exporter.service

zabbix对接Prometheus实操——基于Prometheus pattern监控_prometheus_04

1.3.访问测试

然后访问IP:9100端口

zabbix对接Prometheus实操——基于Prometheus pattern监控_prometheus_05

如图所示表示部署成功,并且成功采集到数据。

1.4. Node_exporter相关指标说明

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

2. Zabbix对接Node_exporter

2.1. 创建监控模板

zabbix对接Prometheus实操——基于Prometheus pattern监控_prometheus_06

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

zabbix对接Prometheus实操——基于Prometheus pattern监控_prometheus_07

2.2.创建HTTP代理监控项,获取大量Prometheus指标

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

zabbix对接Prometheus实操——基于Prometheus pattern监控_prometheus_08

2.3. 创建相关项目监控项,使用Prometheus pattern获取监控值

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

zabbix对接Prometheus实操——基于Prometheus pattern监控_zabbix_09

然后添加处理步骤:

zabbix对接Prometheus实操——基于Prometheus pattern监控_prometheus_10

2.4. 添加监控主机

然后添加主机进行测试

zabbix对接Prometheus实操——基于Prometheus pattern监控_zabbix_11

修改宏值

zabbix对接Prometheus实操——基于Prometheus pattern监控_zabbix_12

2.5. 查看指标数据

zabbix对接Prometheus实操——基于Prometheus pattern监控_zabbix_13

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

以上就是这一期的内容。大家好,我是乐乐,专注运维技术研究与分享,关注我,了解更多运维知识。更多Zabbix、Prometheus等技术知识,还可关注​​乐维社区​​,如有问题也可以到社区进行留言提问,与广大运维技术爱好者一起探讨

举报

相关推荐

0 条评论