news 2026/10/17 1:52:05

使用 Zabbix 模板 Mikrotik RB750-RB1100 通过 SNMP 监控 MikroTik 路由器的 CPU、温度、内存与接口流量

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
使用 Zabbix 模板 Mikrotik RB750-RB1100 通过 SNMP 监控 MikroTik 路由器的 CPU、温度、内存与接口流量

【免费下载链接】community-templates

Zabbix Community Templates repository

项目地址:https://gitcode.com/gh_mirrors/co/community-templates
点击查看免费下载

本指南基于 Zabbix Community Templates 仓库中的官方模板Mikrotik RB750-RB1100(作者 Danilo Barros de Medeiros,模板版本 1.1),面向需要在 Zabbix 中通过 SNMP 监控 MikroTik RouterBoard RB750 / RB1100 系列设备的运维人员。读完本文,你将掌握该模板的完整监控项清单、底层 OID 与预处理逻辑、接口自动发现(LLD)机制、告警触发器策略,以及如何将其导入 Zabbix 并正确部署到真实环境。

模板概述与适用场景

Mikrotik RB750-RB1100是 Zabbix Community Templates 仓库中专门为 MikroTik RB750 与 RB1100 两款 RouterBoard 设备设计的监控模板。模板文件位于 Network_Devices/Mikrotik/template_mikrotik_rb750-rb1100/ 目录,按 Zabbix 版本划分了三个子目录:

  • 5.0/:提供 Zabbix 5.0 格式的 XML 导出文件 template_mikrotik_rb750-rb1100.xml;
  • 5.4/:提供 Zabbix 5.4 格式的 YAML 导出文件 template_mikrotik_rb750-rb1100.yaml(本指南以该文件为实现依据);
  • 6.0/:提供 Zabbix 6.0 格式的 YAML 导出文件 template_mikrotik_rb750-rb1100.yaml。

模板的原始设计目标版本为 Zabbix 3.0(README 中标注 "Versão Zabbix: 3.0"),后来被移植并导出为 5.x / 6.x 格式,因此在较新版本的 Zabbix 中仍可直接导入使用。从 5.4 版 YAML 导出文件 的头部信息可以看到:

  • 模板所属主机组(groups):Router Mikroitk;
  • 导出日期:2021-11-21T21:20:06Z;
  • 监控数据全部通过SNMP agent与Simple check(ICMP)采集,不依赖 Zabbix Agent,也不依赖任何外部脚本。

模板本身未定义任何宏("There are no macros links in this template."),也未链接其他模板,是一个开箱即用、零依赖的独立模板,非常适合中小型网络场景下快速纳管 MikroTik 路由器。

导入模板与关联主机

导入步骤

  1. 根据你的 Zabbix Server 版本选择对应格式的导出文件:Zabbix 5.0 使用 5.0 目录下的 XML 文件,Zabbix 5.4 / 6.0 使用对应目录下的 YAML 文件;
  2. 在 Zabbix Web 界面中依次进入Configuration → Templates → Import;
  3. 选择本地下载的 XML / YAML 文件,勾选需要的导入选项(模板、监控项、触发器、图等),点击Import;
  4. 导入成功后,在Configuration → Hosts中创建(或编辑)目标路由器主机;
  5. 为该主机配置 SNMP 接口(IP / DNS、端口 161、SNMP version、Community,如public或自定义只读团体名),并将模板Mikrotik RB750-RB1100链接到主机上。

前置条件:在 MikroTik 上启用 SNMP

模板的绝大多数监控项依赖 SNMP 采集,因此必须在 RouterOS 上开启 SNMP 服务并配置只读团体名。可在 WinBox 或命令行执行类似命令:

/ snmp set enabled=yes contact="zabbix" location="rack-01" / snmp community set [ find default=yes ] name=public read-only=yes

需要说明的是:RB750 / RB1100 属于较早期的 RouterBoard 型号,部分硬件健康类 OID(如温度、电压)只有在设备硬件与固件支持时才会返回数据,部署后若个别监控项显示 "Not supported",通常即表示该型号/固件不提供对应传感器读数(详见下文监控项分析)。

监控项全景:从 OID 到 Zabbix Key

模板共采集 14 个固定监控项(非 LLD),全部通过 SNMP agent 或 ICMP Simple check 获取,关键 OID、Key、更新间隔与单位如下表所示(依据 5.4 版 YAML):

监控项名称采集类型SNMP OID / 检查方式Zabbix Key更新间隔单位预处理
PingSimple checkICMP pingicmpping120s--
PinglossSimple checkICMP 丢包率icmppingloss[,,,,]60s%-
PingLatencySimple checkICMP 往返时延icmppingsec120smsMULTIPLIER × 1000
System nameSNMP agent.1.3.6.1.2.1.1.5.0mikrotik.identity.name3600s--
System uptimeSNMP agent.1.3.6.1.2.1.1.3.0mikrotik.uptime30suptimeMULTIPLIER × 0.01
System version and hwSNMP agentiso.3.6.1.2.1.47.1.1.1.1.2.65536mikrotik.version.and.hw3600s--
CPU loadSNMP agent.1.3.6.1.2.1.25.3.3.1.2.1mikrotik.cpu.load30s--
CPU temperatureSNMP agent.1.3.6.1.4.1.14988.1.1.3.11.0mikrotik.processor.temperature30s°CMULTIPLIER × 0.1
System temperatureSNMP agent.1.3.6.1.4.1.14988.1.1.3.10.0mikrotik.system.temperature30s°CMULTIPLIER × 0.1
VoltageSNMP agent.1.3.6.1.4.1.14988.1.1.3.8.0mikrotik.voltage30sVMULTIPLIER × 0.1
Total memorySNMP agent.1.3.6.1.2.1.25.2.3.1.5.65536mikrotik.total.memory30sBMULTIPLIER × 1024
Used memorySNMP agent.1.3.6.1.2.1.25.2.3.1.6.65536mikrotik.used.memory30sBMULTIPLIER × 1024
Total disk spaceSNMP agent.1.3.6.1.2.1.25.2.3.1.5.131073mikrotik.total.disk.space30sBMULTIPLIER × 1024
Used disk spaceSNMP agent.1.3.6.1.2.1.25.2.3.1.6.131073mikrotik.used.disk.space30sBMULTIPLIER × 1024

注:.1.3.6.1.4.1.14988是 MikroTik 的企业私有 MIB 前缀(enterprise number 14988),温度、电压监控项均来自该私有 MIB 段;其余系统级指标(sysName、sysUpTime、hrProcessorLoad、hrStorage)来自标准 MIB。

系统基础信息

System name(.1.3.6.1.2.1.1.5.0,即sysName)与System version and hw(iso.3.6.1.2.1.47.1.1.1.1.2.65536,即实体表entPhysicalDescr)以 3600 秒(1 小时)的间隔低频采集,用于记录设备的身份、RouterOS 版本与硬件型号信息,属于字符型(CHAR)数据,不保留趋势(trends: 0)。System uptime(.1.3.6.1.2.1.1.3.0,即sysUpTime)则每 30 秒采集一次,单位设置为uptime,Zabbix 会将其自动换算为可读的运行时长格式。

硬件健康:CPU、温度与电压

  • CPU load:OID.1.3.6.1.2.1.25.3.3.1.2.1(hrProcessorLoad)直接返回 CPU 使用率百分比,每 30 秒刷新;
  • CPU temperature / System temperature:分别对应私有 MIB.1.3.6.1.4.1.14988.1.1.3.11.0与.1.3.6.1.4.1.14988.1.1.3.10.0。RouterOS 以十分之一摄氏度(deci-degree)为单位返回整数值,因此模板配置了MULTIPLIER预处理,参数为0.1,把原始值换算成标准摄氏度后以°C展示;
  • Voltage:私有 MIB.1.3.6.1.4.1.14988.1.1.3.8.0,同样以 0.1 伏为单位返回,模板同样通过MULTIPLIER × 0.1换算为伏特(V)。

这三个健康类监控项的历史数据保留 365 天、趋势保留 1825 天,适合长期观察设备老化趋势。需要再次强调:若设备固件不支持温度/电压传感器,这些监控项在主机上会呈现为 "Not supported"(不支持)状态,这是正常现象,不代表模板故障。

内存与磁盘

内存与磁盘通过HOST-RESOURCES-MIB的存储表(hrStorage)采集,均以字节(B)为单位:

  • 总内存/已用内存:hrStorageAllocationUnits与hrStorageUsed对应索引65536,OID 分别为.1.3.6.1.2.1.25.2.3.1.5.65536与.1.3.6.1.2.1.25.2.3.1.6.65536;
  • 总磁盘/已用磁盘:同一存储表的索引131073,OID 分别为.1.3.6.1.2.1.25.2.3.1.5.131073与.1.3.6.1.2.1.25.2.3.1.6.131073。

MikroTik 存储表的分配单元(Allocation Units)为 1024 字节的倍数,因此模板统一配置了MULTIPLIER × 1024预处理,将原始分配单元数换算为实际字节数,避免在图上出现"容量数值偏小 1024 倍"的常见错误。

连通性:Ping 三件套

  • Ping:icmpping,每 120 秒探测一次,返回 1(可达)或 0(不可达),并挂接了值映射Service state(0 → Down,1 → Up);
  • Pingloss:icmppingloss[,,,,],每 60 秒统计一次丢包百分比,单位为 %;
  • PingLatency:icmppingsec,每 120 秒采集往返时延。Zabbix 的icmppingsec原生以秒为单位返回,模板通过MULTIPLIER × 1000预处理将其转换为毫秒(ms)展示,数值类型为 FLOAT。

接口自动发现(LLD):批量监控所有物理/逻辑接口

模板的核心亮点在于通过一条 LLD 规则自动发现设备上的全部接口,并为每个接口动态生成流量、错误与状态监控项,无需为每个端口手工创建监控项。

发现规则定义

从 5.4 版 YAML 可以看到:

discovery_rules: - name: 'LLD Interfaces' type: SNMP_AGENT snmp_oid: 'discovery[{#IFDESCR},IF-MIB::ifDescr]' key: ifDescr delay: '30'

该规则每 30 秒执行一次,通过 Zabbix 内置的discovery[{#MACRO},OID]语法遍历IF-MIB::ifDescr(ifDescr表),为每个接口生成宏{#IFDESCR}(接口描述,如ether1、bridge-local等)以及{#SNMPINDEX}(SNMP 表索引)。后续原型监控项通过{#SNMPINDEX}拼接出对应的ifAlias、ifInOctets、ifOutOctets、ifInErrors、ifOutErrors、ifOperStatus等 OID。

六个接口原型监控项

原型名称OID 模板Key单位预处理
Alias Interface $1IF-MIB::ifAlias.{#SNMPINDEX}ifAlias[{#IFDESCR}]--
Inbound Interface $1IF-MIB::ifInOctets.{#SNMPINDEX}ifInOctets[{#IFDESCR}]bpsCHANGE_PER_SECOND → MULTIPLIER × 8
Outbound Interface $1IF-MIB::ifOutOctets.{#SNMPINDEX}ifOutOctets[{#IFDESCR}]bpsCHANGE_PER_SECOND → MULTIPLIER × 8
In-Erros Interface $1IF-MIB::ifInErrors.{#SNMPINDEX}ifInErrors[{#IFDESCR}]-CHANGE_PER_SECOND
Out-Erros Interface $1IF-MIB::ifOutErrors.{#SNMPINDEX}ifOutErrors[{#IFDESCR}]-CHANGE_PER_SECOND
Operacional Status Interface $1IF-MIB::ifOperStatus.{#SNMPINDEX}ifOperStatus[{#IFDESCR}]-CHANGE_PER_SECOND

其中流量监控项的预处理链值得特别说明:

- type: CHANGE_PER_SECOND # 把计数器增量换算为每秒变化量(byte/s) - type: MULTIPLIER # × 8,把 byte/s 换算为 bit/s(bps)

ifInOctets/ifOutOctets是 32 位计数器(counter32),累计值本身没有展示意义,必须经过CHANGE_PER_SECOND求差值/秒后才能得到实时速率;再乘以 8 将字节/秒转换为比特/秒,配合bps单位即可得到符合网络工程师阅读习惯的接口带宽数值。ifInErrors/ifOutErrors同样经过CHANGE_PER_SECOND,展示每秒的收/发错误增量。

接口流量图原型

模板还内置了一张图原型Inbound/Outbound - {#IFDESCR},将每个接口的四个指标绘制在同一张图上,便于直观对比:

  • ifInErrors[{#IFDESCR}]:粗线(BOLD_LINE),颜色EEEE00(黄);
  • ifInOctets[{#IFDESCR}]:渐变线(GRADIENT_LINE),颜色00DD00(绿);
  • ifOutErrors[{#IFDESCR}]:粗线,颜色CC0000(红);
  • ifOutOctets[{#IFDESCR}]:渐变线,颜色0000EE(蓝)。

告警触发器与依赖关系

模板内置了 4 类触发器(其中 1 个为 LLD 触发器原型),覆盖了"设备失联 → 链路质量下降 → 接口状态变化"的完整告警链路。

设备失联告警(Ping 触发)

Ping 监控项挂载了两个触发器,构成分级告警:

触发器名称表达式优先级含义
{HOSTNAME} fora de alcance (3min)sum(/Mikrotik RB750-RB1100/icmpping,180s)=0information连续 3 分钟无响应
{HOSTNAME} fora de alcance (5min)sum(/Mikrotik RB750-RB1100/icmpping,280s)=0disaster连续 5 分钟无响应

表达式sum(icmpping,180s)=0的含义是:在最近 180 秒窗口内所有 ICMP 探测结果之和为 0,即全部探测失败。5 分钟的触发器优先级为disaster(灾难),用于最终确认设备完全离线。3 分钟的触发器设置了依赖(dependencies)指向 5 分钟触发器——当 5 分钟失联告警已触发时,3 分钟告警将自动抑制,避免告警风暴,这正是 Zabbix 触发器依赖关系的典型用法。

丢包告警(Pingloss 触发)

触发器名称表达式优先级
{HOSTNAME} com perda de pacoteavg(/Mikrotik RB750-RB1100/icmppingloss[,,,,],#3)>35warning

表达式avg(icmppingloss[,,,,],#3)>35表示最近 3 次采样的平均丢包率超过 35% 时告警(warning 级别)。该触发器同样依赖"设备失联(5min)"触发器:如果设备已完全失联,丢包告警不再重复上报。模板原始描述中提到告警阈值与"50%"相关("Perda de Pacotes acima de 50%"),但 YAML 中实际阈值取 35%,部署后可按实际网络质量调整。

接口状态变化告警(LLD 触发器原型)

触发器原型名称表达式优先级
Status Operacional Alterado {HOST.NAME} Interface {#IFDESCR}(last(ifOperStatus[{#IFDESCR}],#1)<>last(ifOperStatus[{#IFDESCR}],#2))=1information

该原型为每个被发现的接口生成一条告警,比较接口ifOperStatus最近两次采集值:若最新值(#1)与上一值(#2)不同,说明接口运行状态发生变化(up ↔ down),触发 information 级别告警,监控人员可据此感知端口闪断或链路切换。

值映射与标签体系

Service state 值映射

Ping 监控项(0/1 数值)挂接了Service state值映射,定义于 5.4 版 YAML:

原始值映射文本
0Down
1Up

这样在最新数据与告警信息中会直接显示 "Up / Down" 而非原始 0/1,可读性更好。

标签(Tags)组织

模板为所有监控项与原型打上了Application标签,便于在 Zabbix 中按业务维度筛选和分组:

  • Conexão(连接):Ping、Pingloss、PingLatency;
  • CPU:CPU load;
  • Health:CPU temperature、System temperature、Voltage;
  • Disk:Total/Used disk space;
  • Memoria:Total/Used memory;
  • Geral(通用):System name、System uptime、System version and hw;
  • Discovery Network:LLD 接口原型下的全部监控项。

使用前提与注意事项

  1. SNMP 必须开启:模板以 SNMP 采集为主,MikroTik 侧需开启 SNMP 并配置只读团体名,否则除 ICMP 类监控项外的所有指标都会不可用;
  2. 模板无宏、无模板链接:README 明确标注 "There are no macros links in this template." 与 "There are no template links in this template.",因此部署时无需也无法通过宏覆盖来调整 OID 或间隔,如需改动可直接在 Zabbix 界面中编辑监控项;
  3. 硬件健康 OID 的型号差异:温度、电压来自 MikroTik 私有 MIB,RB750 / RB1100 部分型号或固件可能不暴露这些传感器,表现为 "Not supported",属正常现象;
  4. 版本兼容性:README 标注模板面向 Zabbix 3.0 设计,仓库按 5.0 / 5.4 / 6.0 分别提供导出文件,请务必选择与你的 Zabbix Server 主版本匹配的文件导入;
  5. 接口计数器的精度:ifInOctets/ifOutOctets为 32 位计数器,在高速率长时间运行下可能回绕(wrap),模板未做计数器回绕处理,这是该模板对旧型号设备妥协后的固有特性,生产环境可结合设备速率评估是否需要叠加 64 位计数器监控。

延伸:与其他 MikroTik 模板的配合

本模板聚焦 RB750 / RB1100 的基础资源与接口监控。若你的网络中还有 CCR、RB3011、RB260GS 等其他 RouterBoard 型号,或需要 RouterOS 系统级、BGP、队列、无线等更深入的指标,可在同一仓库的 Network_Devices/Mikrotik/ 目录下找到template_mikrotik_os、template_mikrotik_bgp_lld、template_mikrotik_queue_traffic_discovery、template_mikrotik_wireless_lld等互补模板,按设备型号与监控需求组合使用,从而构建覆盖整个 MikroTik 网络的统一监控体系。

【免费下载链接】community-templates

Zabbix Community Templates repository

项目地址:https://gitcode.com/gh_mirrors/co/community-templates
点击查看免费下载
上一篇:Loop窗口管理工具:优雅提升Mac工作效率的免费开源方案
下一篇:从开源到企业级:VMware Tanzu RabbitMQ如何解决商业痛点

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/17 1:50:08

两节锂电池主动均衡设计:MP2642+PIC18F8520工业级实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/17 1:49:19

F3D 3.1.0 发布|Quake MDL 模型可直接打开,缩略图默认抗锯齿

F3D 3.1.0 发布&#xff5c;Quake MDL 模型可直接打开&#xff0c;缩略图默认抗锯齿 【免费下载链接】f3d Fast and minimalist 3D viewer. 项目地址: https://gitcode.com/GitHub_Trending/f3/f3d F3D 是一款轻量级的开源 3D 模型查看器&#xff0c;F3D 3.1.0 版本刚刚…

作者头像 李华
网站建设 2026/10/17 1:47:55

内存对齐原理与工程实践:从CPU总线到C/C++结构体优化

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/17 1:46:39

128GB Mac内存够不够:Hy3-oQ2部署前的硬件要求与准备工作清单

【免费下载链接】Hy3-oQ2 项目地址&#xff1a; https://ai.gitcode.com/hf_mirrors/mlx-community/Hy3-oQ2 点击查看 免费下载 Hy3-oQ2 是腾讯 Hunyuan 3.0&#xff08;295B-A21B MoE 大模型&#xff09;的 2-bit MLX 校准量化版本&#xff0c;专为 Apple Silicon 打造。本文…

作者头像 李华