多彩编程 多彩编程MZPH · CODE BLOG
ARTICLE DETAIL

文章详情

深耕前端与后端开发技术的一线实战笔记与踩坑复盘。

Zabbix 官方模板指南:使用 SNMP 监控 MikroTik hEX PoE 路由器(含宏、触发器与 LLD 深入解析)

Zabbix 官方模板指南:使用 SNMP 监控 MikroTik hEX PoE 路由器(含宏、触发器与 LLD 深入解析) 指标监控可观测性告警运维【免费下载链接】zabbixReal-time monitoring of IT components and services, such as networks, servers, VMs, applications and the cloud.项目地址https://gitcode.com/gh_mirrors/zabbix2/zabbix点击查看免费下载导读本文围绕 Zabbix 8.0 官方开箱即用模板MikroTik hEX PoE by SNMP展开完整解读该模板的监控范围、配置方法、全部宏与触发器语义并结合仓库中的 YAML 模板源码剖析其低层实现原理。阅读本文后你将掌握如何在 Zabbix 中一键接入 MikroTik hEX PoERouterOS L4 路由器并能按需调整 CPU / 内存 / 温度 / 磁盘 / 网络接口 / 无线 AP / LTE 调制解调器各类阈值宏理解低层数据采集链路SNMP walk → JSON → 依赖项具备根据源码调优模板的能力。关联文档templates/net/mikrotik/mikrotik_hEX_PoE_snmp/README.md模板定义template_net_mikrotik_hEX_PoE_snmp.yaml。模板概述与适用场景监控对象本模板用于监控 MikroTik hEX PoE 以太网路由器设备核心特性如下5 个千兆以太网口其中 4 个端口支持 PoE 供电输出1 个 SFP 光口、USB 接口800MHz CPU、128MB RAM运行 RouterOS L4 许可版本。从 YAML 元数据看该模板由官方 Zabbix 模板工具 Templator 生成wizard_ready: YES模板 UUID 为ff57532daf924030b364e3b75acb74c4归属模板组Templates/Network devices。使用到的 MIB模板依赖四类标准 / 厂商 MIB见 YAML 头部 descriptionMIB用途HOST-RESOURCES-MIBCPU、内存、存储、硬件 uptimehrSystemUptimeSNMPv2-MIBsysUpTime、sysDescr、sysName、sysLocation 等系统信息MIKROTIK-MIBRouterOS 版本、RouterBOARD 序列号、固件、温度、无线 AP、LTE 调制解调器等 MikroTik 私有 OIDIF-MIB网络接口状态、流量、速率、错误包版本要求与测试情况版本要求Zabbix 8.0 及以上README Requirements 明确标注测试版本模板已在 MikroTik hEX PoE 真机上测试README Tested versions。快速配置导入模板并接入主机按照 Zabbix 官方“开箱即用模板”的标准流程操作详见 README.md 中的 Configuration 指引在 Zabbix 前端Data collection → Templates中导入模板文件template_net_mikrotik_hEX_PoE_snmp.yaml创建主机并链接模板 MikroTik hEX PoE by SNMP为主机配置 SNMP 接口IP、端口 161、SNMP v1/v2c community并确保 Zabbix server 能访问设备 161/UDP 端口设备端RouterOS需启用 SNMP 服务。README 要求参考厂商官方文档完成 RouterOS 侧配置这里不再展开。接入后模板会自动完成设备发现LLD、指标采集、触发报警与图形绘制无需手工逐项创建监控项。宏Macros详解与调优模板定义了全部阈值与过滤宏YAML 中为每个宏提供了配置校验config段类型、分组、标签、取值范围正则可在主机或模板级别覆盖。以下按用途分组整理阈值类宏宏默认值说明{$VFS.FS.PUSED.MAX.CRIT}90文件系统占用率临界阈值%{$VFS.FS.PUSED.MAX.WARN}80文件系统占用率告警阈值%{$CPU.UTIL.CRIT}90CPU 利用率临界阈值%{$MEMORY.UTIL.MAX}90内存利用率最大阈值%{$TEMP_CRIT}60温度临界阈值℃{$TEMP_WARN}50温度告警阈值℃{$TEMP_CRIT_LOW}5低温临界阈值℃{$TEMP_CRIT:CPU}75CPU 温度临界阈值上下文宏{$TEMP_WARN:CPU}70CPU 温度告警阈值{$ICMP_LOSS_WARN}20ICMP 丢包率告警阈值%{$ICMP_RESPONSE_TIME_WARN}0.15平均 ICMP 响应时间告警阈值秒{$IF.UTIL.MAX}90网络接口利用率触发阈值%{$IF.ERRORS.WARN}2错误包速率告警阈值可带接口名上下文{$LTEMODEM.RSSI.MIN.WARN}-100LTE 调制解调器 RSSI 告警下限dBm{$LTEMODEM.RSRP.MIN.WARN}-100LTE 调制解调器 RSRP 告警下限dBm{$LTEMODEM.RSRQ.MIN.WARN}-20LTE 调制解调器 RSRQ 告警下限dB{$LTEMODEM.SINR.MIN.WARN}0LTE 调制解调器 SINR 告警下限dB{$SNMP.TIMEOUT}5mSNMP 可用性触发的时间窗口{$SNMP.UPTIME.WARN}10m“主机已重启”问题自动恢复的 uptime 阈值{$IFCONTROL}1置0可关闭指定接口的链路状态触发值得注意的细节摘自 YAMLmacros段阈值宏均配置了数值校验正则^-?([0-9]|(([0-9])\.([0-9])))$支持整数与小数{$IFCONTROL}为 CHECKBOX 类型选中为1、取消为0{$NET.IF.IFNAME.NOT_MATCHES}默认值为正则(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9a-z]$|docker[0-9]|br-[a-z0-9]{12})用于默认排除 loopback、null、docker veth 与 docker0 网桥——README 表格中因内容过长提示“Macro too long. Please see the template.”实际值见 YAML 第 2024-2025 行。发现过滤类宏网络接口发现宏默认值说明{$NET.IF.IFNAME.MATCHES}^.*$按接口名包含过滤{$NET.IF.IFNAME.NOT_MATCHES}上述长正则按接口名排除过滤{$NET.IF.IFOPERSTATUS.MATCHES}^.*$按操作状态包含过滤{$NET.IF.IFOPERSTATUS.NOT_MATCHES}^6$排除notPresent(6){$NET.IF.IFADMINSTATUS.MATCHES}^.*按管理状态包含过滤{$NET.IF.IFADMINSTATUS.NOT_MATCHES}^2$排除down(2)管理状态{$NET.IF.IFDESCR.MATCHES}.*按描述包含过滤{$NET.IF.IFDESCR.NOT_MATCHES}CHANGE_IF_NEEDED按描述排除按需修改{$NET.IF.IFALIAS.MATCHES}.*按别名包含过滤{$NET.IF.IFALIAS.NOT_MATCHES}CHANGE_IF_NEEDED按别名排除按需修改{$NET.IF.IFTYPE.MATCHES}.*按接口类型包含过滤{$NET.IF.IFTYPE.NOT_MATCHES}CHANGE_IF_NEEDED按接口类型排除按需修改此外还有两个无线 / LTE 相关过滤宏{$IFNAME.WIFI.MATCHES}默认WIFI用于 CAPsMAN AP 信道发现可在主机级覆盖{$IFNAME.LTEMODEM.MATCHES}默认^lte用于 LTE 调制解调器发现可在主机级覆盖。调优方法在主机或链接模板的Macros页中覆盖任一宏即可无需修改模板文件。监控项Items全解析模板的固定监控项不依赖发现如下表所示均已同步自 README 并补充了 YAML 中的 OID / 类型 / 预处理细节监控项类型KeyOID / 说明SNMP walk 网络接口SNMP agentnet.if.walkwalk[1.3.6.1.2.1.2.2.1.8, ...]IF-MIB 接口发现母项history: 0不落历史库SNMP walk 无线接口SNMP agentnet.if.wireless.walkwalk[1.3.6.1.4.1.14988.1.1.14.1.1.2, ...]无线 / LTE / AP 发现母项SNMP walk 系统 CPUSNMP agentsystem.cpu.walkwalk[1.3.6.1.2.1.25.3.3.1.1, 1.3.6.1.2.1.25.3.3.1.2]HOST-RESOURCES-MIBSNMP walk 已挂载文件系统SNMP agentvfs.fs.walkwalk[1.3.6.1.2.1.25.2.3.1.3, ...]HOST-RESOURCES-MIB已用内存SNMP agentvm.memory.used[hrStorageUsed.Memory]get[1.3.6.1.2.1.25.2.3.1.6.65536]预处理乘1024hrStorageAllocationUnits → 字节单位 B总内存SNMP agentvm.memory.total[hrStorageSize.Memory]get[1.3.6.1.2.1.25.2.3.1.5.65536]预处理乘1024单位 B内存利用率Calculatedvm.memory.util[memoryUsedPercentage.Memory]公式last(//vm.memory.used[...])/last(//vm.memory.total[...])*100单位 %操作系统SNMP agentsystem.sw.os[mtxrLicVersion.0]get[1.3.6.1.4.1.14988.1.1.4.4.0]MIKROTIK-MIB 软件版本1d 心跳去重关联资产 OS硬件型号SNMP agentsystem.hw.modelget[1.3.6.1.2.1.1.1.0]sysDescr关联资产 MODEL硬件序列号SNMP agentsystem.hw.serialnumberget[1.3.6.1.4.1.14988.1.1.7.3.0]RouterBOARD 序列号关联资产 SERIALNO_A固件版本SNMP agentsystem.hw.firmwareget[1.3.6.1.4.1.14988.1.1.7.4.0]1d 心跳去重Uptime网络SNMP agentsystem.net.uptime[sysUpTime.0]get[1.3.6.1.2.1.1.3.0]预处理乘0.01单位 uptime30s 轮询Uptime硬件SNMP agentsystem.hw.uptime[hrSystemUptime.0]get[1.3.6.1.2.1.25.1.1.0]HOST-RESOURCES-MIB预处理“检查不支持值 → 失败置 0”再乘0.01SNMP trapsfallbackSNMP trapsnmptrap.fallback收集未被其他 snmptrap 项匹配的 trap系统位置SNMP agentsystem.location[sysLocation.0]get[1.3.6.1.2.1.1.6.0]12h 心跳去重关联资产 LOCATION系统联系人SNMP agentsystem.contact[sysContact.0]get[1.3.6.1.2.1.1.4.0]12h 心跳去重关联资产 CONTACT系统对象 IDSNMP agentsystem.objectid[sysObjectID.0]get[1.3.6.1.2.1.1.2.0]12h 心跳去重系统名称SNMP agentsystem.nameget[1.3.6.1.2.1.1.5.0]12h 心跳去重关联资产 NAME系统描述SNMP agentsystem.descr[sysDescr.0]get[1.3.6.1.2.1.1.1.0]12h 心跳去重SNMP agent 可用性Zabbix internalzabbix[host,snmp,available]0不可用1可用2未知配合值映射zabbix.host.availableICMP pingSimple checkicmpping0失败1成功值映射Service stateICMP 丢包率Simple checkicmppingloss单位 %ICMP 响应时间Simple checkicmppingsec单位 s低层实现要点SNMP walk 母项 依赖项从 YAML 源码可以清楚看到该模板的采集架构每个发现规则都对应一个“SNMP walk 母项”master item例如net.if.walk、net.if.wireless.walk、system.cpu.walk、vfs.fs.walk。母项通过 Zabbix 8.0 的walk[...]SNMP OID 语法一次批量抓取多个 OID 列history: 0不保存历史数据仅作为发现 / 依赖数据源。其意义在于一次网络往返即可取得接口状态、流量、错误、速率等全部 OID 列显著降低对设备的 SNMP 轮询压力各“依赖型”DEPENDENT监控项通过SNMP_WALK_VALUE预处理从母项 JSON 中按 OID 提取自身取值如1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}对应 ifHCInOctets再执行“每秒变化”“乘 8字节→比特”“心跳去重”等后续预处理。这解释了 README 中那些“SNMP walk value”预处理行的来源也便于你排查“某接口不更新”之类问题时定位到母项。触发器Triggers语义与表达式固定触发器名称严重级别表达式要点MikroTik: High memory utilizationAveragemin(vm.memory.util,5m){$MEMORY.UTIL.MAX}MikroTik: Operating system description has changedInfo最近两值不等且长度0依赖 System name has changed手动关闭MikroTik: Device has been replacedInfosystem.hw.serialnumber变化手动关闭MikroTik: Firmware has changedInfosystem.hw.firmware变化手动关闭MikroTik: Host has been restartedWarning见下方详解依赖 No SNMP data collectionMikroTik: System name has changedInfosystem.name变化手动关闭MikroTik: No SNMP data collectionWarningmax(zabbix[host,snmp,available],{$SNMP.TIMEOUT})0依赖 ICMP 不可达MikroTik: Unavailable by ICMP pingHighmax(icmpping,#3)0最近三次超时MikroTik: High ICMP ping lossWarningmin(icmppingloss,5m){$ICMP_LOSS_WARN} and ...100依赖 ICMP 不可达MikroTik: High ICMP ping response timeWarningavg(icmppingsec,5m){$ICMP_RESPONSE_TIME_WARN}依赖丢包 / 不可达“Host has been restarted”表达式值得单独说明YAML 第 2785-2806 行(last(hw_uptime)0 and change(hw_uptime)0 and last(hw_uptime,#2)42949672.96-(lastclock(hw_uptime)-lastclock(hw_uptime,#2))) or (last(hw_uptime)0 and change(net_uptime)0 and last(net_uptime,#2)42949672.96-(lastclock(net_uptime)-lastclock(net_uptime,#2)))它同时判断硬件 uptimehrSystemUptime与网络 uptimesysUpTime两个计数器的回退若下降且上一次取值未接近 32 位计数器上限2^32 百分之一秒 ≈ 497 天则判定主机重启从而规避计数器翻转wrap-around造成的误报恢复表达式为 uptime 超过{$SNMP.UPTIME.WARN}时自动关闭。触发器依赖关系模板为触发器设置了依赖dependencies以抑制告警风暴关系图可概括为ICMP 不可达High为根No SNMP data collection → 依赖 ICMP 不可达Host has been restarted → 依赖 No SNMP data collectionICMP 丢包 / 响应时间 → 依赖 ICMP 不可达响应时间还依赖丢包。低层发现规则LLD逐个拆解模板共包含 7 条发现规则全部自带 item prototype、trigger prototype 与 graph prototype。1. CPU discoveryhrProcessorLoad.discovery母项system.cpu.walk预处理SNMP_WALK_TO_JSON 1h 心跳去重原型监控项system.cpu.util[hrProcessorLoad.{#SNMPINDEX}]读取1.3.6.1.2.1.25.3.3.1.2.{#SNMPINDEX}HOST-RESOURCES-MIB hrProcessorLoad近一分钟 CPU 非空闲百分比原型触发器MikroTik: #{#SNMPINDEX}: High CPU utilizationWarningmin(...,5m){$CPU.UTIL.CRIT}自带原型图形“CPU utilization”渐变线。2. Temperature CPU discoverymtxrHlProcessorTemperature.discoveryOIDwalk[1.3.6.1.4.1.14988.1.1.3.11]预处理失败SNMP walk 无数据时Discard value——因为并非所有 MikroTik 硬件都提供 CPU 温度此举用于避免产生“不支持的监控项”README 明确说明入门型号如 RB750、RB450G 可能缺失原型监控项sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}]预处理乘0.1设备原始值 10 倍放大3m 心跳去重单位 °C原型触发器 3 个超过{$TEMP_WARN:CPU}Warning、超过{$TEMP_CRIT:CPU}High、低于{$TEMP_CRIT_LOW:CPU}Average均带 -3℃ 迟滞的恢复表达式。3. Temperature sensor discoverymtxrHlTemperature.discoveryOIDwalk[1.3.6.1.4.1.14988.1.1.3.10]同样在失败时 Discard value原型监控项sensor.temp.value[mtxrHlTemperature.{#SNMPINDEX}]设备温度预处理乘0.1 3m 心跳去重原型触发器语义与 CPU 温度一致但使用无上下文的{$TEMP_WARN}、{$TEMP_CRIT}、{$TEMP_CRIT_LOW}宏对应 “Device” 上下文。4. LTE modem discoverymtxrLTEModem.discovery基于net.if.wireless.walk母项SNMP_WALK_TO_JSON提取{#IFNAME}、{#IFALIAS}、{#IFTYPE}发现过滤器{#IFNAME}匹配{$IFNAME.LTEMODEM.MATCHES}默认^lte且{#IFTYPE}等于^1$other 类型——用于精确定位 LTE 调制解调器接口4 个原型监控项及 OID均来自 MIKROTIK-MIB前缀1.3.6.4.1.14988.1.1.16.1.1监控项OID 后缀单位lte.modem.rssi[mtxrLTEModemSignalRSSI.{#SNMPINDEX}].2dBmlte.modem.rsrp[mtxrLTEModemSignalRSRP.{#SNMPINDEX}].4dBmlte.modem.rsrq[mtxrLTEModemSignalRSRQ.{#SNMPINDEX}].3dBlte.modem.sinr[mtxrLTEModemSignalSINR.{#SNMPINDEX}].7dB4 个原型触发器均为 Warning对应信号指标低于{$LTEMODEM.RSSI/RSRP/RSRQ/SINR.MIN.WARN}时告警原型图形“Modem Signal”同时绘制 SINR、RSRQ、RSRP、RSSI 四条曲线不同颜色。5. AP channel discoverymtxrWlAp.discovery基于net.if.wireless.walk过滤器{#IFADMINSTATUS}等于^1$up且{#IFTYPE}等于^71$ieee80211原型监控项ssid.name[mtxrWlApSsid...]SSID、ssid.band[mtxrWlApBand...]频段、ssid.noise[mtxrWlApNoiseFloor...]噪声底、ssid.regclient[mtxrWlApClientCount...]已注册客户端、ssid.authclient[mtxrWlApAuthClientCount...]已认证客户端分别读取1.3.6.1.4.1.14988.1.1.1.3.1.{4,8,9,6,11}各列。6. CAPsMAN AP channel discoverymtxrWlCMChannel.discovery基于net.if.wireless.walk过滤器{#IFNAME}匹配{$IFNAME.WIFI.MATCHES}默认WIFI且{#IFTYPE}等于^1$原型监控项ssid.channel[mtxrWlCMChannel...]信道列.5、ssid.state[mtxrWlCMState...]接口状态列.4、ssid.regclient[...]列.2、ssid.authclient[...]列.3原型触发器AP interface ... is not runningWarninglast(ssid.state[...])running-ap即无线接口状态偏离 running-ap 时告警可能原因接口被禁用、断电、链路 down。7. Storage discoverystorage.discovery基于vfs.fs.walk母项SNMP_WALK_TO_JSON提取{#FSNAME}、{#ALLOC_UNITS}、{#STORAGE_TYPE}过滤器OR 关系{#STORAGE_TYPE}匹配.4$或.hrStorageFixedDisk——仅发现物理磁盘类型原型监控项vfs.fs.used[hrStorageSize.{#SNMPINDEX}]已用乘 1024B、vfs.fs.total[hrStorageSize.{#SNMPINDEX}]总量乘 1024B、vfs.fs.pused[...]Calculated 利用率 %原型触发器“Disk space is low”Warning依赖 critical与“Disk space is critically low”Average。表达式采用双重条件占用率超过{$VFS.FS.PUSED.MAX.{CRIT|WARN}:Disk-{#SNMPINDEX}}且剩余空间低于{$VFS.FS.FREE.MIN.{CRIT|WARN}:Disk-{#SNMPINDEX}}或timeleft(...,1h,100)1d按当前增速 24 小时内将写满原型图形“Disk space usage”为 3D 饼图。8. Network interfaces discoverynet.if.discovery基于net.if.walk母项SNMP_WALK_TO_JSON提取{#IFOPERSTATUS}、{#IFADMINSTATUS}、{#IFALIAS}、{#IFNAME}、{#IFDESCR}、{#IFTYPE}过滤器依次使用上述 12 个{$NET.IF.*}宏做包含 / 排除正则匹配原型监控项IF-MIB全部 DEPENDENT母项net.if.walk监控项提取 OID 列预处理net.if.status[ifOperStatus.{#SNMPINDEX}]1.3.6.1.2.1.2.2.1.8值映射 IF-MIB::ifOperStatusnet.if.in[ifHCInOctets.{#SNMPINDEX}]1.3.6.1.2.1.31.1.1.1.6每秒变化 ×8bpsnet.if.out[ifHCOutOctets.{#SNMPINDEX}]1.3.6.1.2.1.31.1.1.1.10每秒变化 ×8bpsnet.if.in.errors[ifInErrors.{#SNMPINDEX}]1.3.6.1.2.1.2.2.1.14每秒变化 3m 心跳去重net.if.out.errors[ifOutErrors.{#SNMPINDEX}]1.3.6.1.2.1.2.2.1.20每秒变化 3m 心跳去重net.if.in.discards[ifInDiscards.{#SNMPINDEX}]1.3.6.1.2.1.2.2.1.13每秒变化 3m 心跳去重net.if.out.discards[ifOutDiscards.{#SNMPINDEX}]1.3.6.1.2.1.2.2.1.19每秒变化 3m 心跳去重net.if.type[ifType.{#SNMPINDEX}]1.3.6.1.2.1.2.2.1.3值映射 IF-MIB::ifType 1d 心跳去重net.if.speed[ifHighSpeed.{#SNMPINDEX}]1.3.6.1.2.1.31.1.1.1.15×1000000Mbps→bps 1h 心跳去重原型触发器 4 个Link downAverage手动关闭{$IFCONTROL:{#IFNAME}}1且操作状态为down(2)且最近两值不同避免对“一直 down”的接口反复告警High bandwidth usageWarning入 / 出流量 15 分钟均值超过{$IF.UTIL.MAX:{#IFNAME}}/100 × 接口速率且速率大于 0High error rateWarning5 分钟错误包速率大于{$IF.ERRORS.WARN:{#IFNAME}}低于 80% 阈值时自动恢复Ethernet has changed to lower speedInfo速率下降且接口类型为以太网族ifType ∈ {6 ethernetCsmacd, 7, 11, 62 fastEther, 69 fastEtherFX, 117 gigabitEthernet}疑似自协商问题原型图形“Network traffic”入 / 出流量左右轴 错误 / 丢弃包。模板自带仪表盘与值映射模板内置名为Network interfaces的仪表盘dashboard自动展示各接口的“Network traffic”图形自带值映射valuemapsIF-MIB::ifOperStatusup/down/unknown/dormant/notPresent/lowerLayerDown、IF-MIB::ifType290 种接口类型、Service stateDown/Up、zabbix.host.availablenot available/available/unknown。告警依赖与降噪设计模板整体遵循“先连通性、后指标”的告警降噪策略ICMP 不可达High作为最底层触发任何下层触发都依赖它SNMP 采集失败Warning依赖 ICMP 不可达避免设备离线时叠加无谓的 SNMP 告警各类指标触发重启、丢包、延迟、接口、磁盘逐级依赖上层可用性触发大量“变化类”触发系统名、固件、序列号、OS 描述标记为Manual close需要人工确认关闭适合资产管理 / 变更审计场景。总结与延伸官方模板覆盖 hEX PoE 的“系统健康CPU/内存/温度→ 存储 → 网络接口 → 无线 AP → LTE 调制解调器 → 连通性”全栈监控开箱即用数据采集采用“SNMP walk 母项 依赖项 SNMP_WALK_VALUE 提取”架构见 template_net_mikrotik_hEX_PoE_snmp.yaml轮询效率高、扩展性强若部署同系列其他型号可参考仓库 templates/net/mikrotik 下 50 个 MikroTik 模板hEX、hEX S、hEX PoE lite、CRS、CCR、RB 系列等结构与本模板一致便于对照学习通用型模板 mikrotik_snmp/README.md 还记录了部分已知问题如 RouterOS 6.28 及以下版本不填充 ifHighSpeed、RouterOS 6.38.5 的 941/951G 无温度传感器遇到“接口速率或温度缺失”时可作为排查参考。赞分享指标监控可观测性告警运维【免费下载链接】zabbixReal-time monitoring of IT components and services, such as networks, servers, VMs, applications and the cloud.项目地址https://gitcode.com/gh_mirrors/zabbix2/zabbix点击查看免费下载相关推荐Zabbix 监控 MikroTik PowerBox 路由器基于 SNMP 模板的部署、宏调优与 LLD 深度解析Zabbix 监控 MikroTik PowerBox 路由器基于 SNMP 模板的部署、宏调优与 LLD 深度解析 本篇技术指南围绕当前仓库 templat指标监控可观测性告警运维Zabbix 官方模板解析MikroTik RB2011iLS-IN 路由器 SNMP 监控全指南Zabbix 官方模板解析MikroTik RB2011iLS IN 路由器 SNMP 监控全指南 导读 本文围绕开源 Zabbix 仓库中随附的官方模板 M指标监控可观测性告警运维使用 Zabbix 8.0 官方 SNMP 模板监控 MikroTik CCR1036-12G-4S-EM 核心路由器宏、监控项、触发器与发现规则全解析使用 Zabbix 8.0 官方 SNMP 模板监控 MikroTik CCR1036 12G 4S EM 核心路由器宏、监控项、触发器与发现规则全解析 导读指标监控可观测性告警运维上一篇OpenTofu CLI 框架迁移 RFC 解析从 mitchellh/cli 到 cobra/urfave 的演进之路下一篇DeepSeek Harness JSONL 存储身份绑定在修复与追加之前锁定会话身份的设计与实现创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表