
【免费下载链接】community-templatesZabbix Community Templates repository项目地址https://gitcode.com/gh_mirrors/co/community-templates点击查看免费下载本文围绕 Zabbix 社区模板仓库中的SNMP D-link DGS-1100-10/ME revA1模板展开完整讲解该模板的采集架构、10 个设备级监控项、6 个接口 LLD 原型、资产字段自动填充与值映射机制并结合仓库内 5.0 XML 与 5.4/6.0 YAML 导出文件给出可直接落地的部署与排障方案。读完本文你将能够把一台开启 SNMP 的 D-Link DGS-1100-10/ME revA1 交换机快速纳入 Zabbix 监控体系并理解模板每个 key 背后的 OID 与预处理逻辑。模板概览与适用场景该模板由 Zabbix 社区维护位于仓库 Network_Devices/D-Link/template_d-link_dgs-1100-10_me_rev._a1 目录下其官方定位在 5.0/README.md 的 Overview 中描述得很清楚基于 D-Link 官方 MIBBased on official D-link MIB采集通用设备数据Generic device data对网络接口做自动发现Auto-discovery for Network Interfaces自动填充主机资产字段Fills possible host inventory fields。也就是说这是一份典型的通用 SNMP 采集 接口 LLD型模板不依赖 Zabbix agent适用于无法安装 agent 的网络设备纳管场景。适用对象是 D-Link DGS-1100-10/ME硬件版本 rev A1系列交换机前提是设备已开启 SNMP 服务并配置好可读的 community 字符串或 SNMPv3 凭据。模板在仓库中提供三个 Zabbix 版本对应的导出文件内容完全一致只是导出格式与版本号不同Zabbix 版本文件说明5.0template_d-link_dgs-1100-10_me_rev._a1.xmlXML 导出格式5.4template_d-link_dgs-1100-10_me_rev._a1.yamlYAML 导出格式6.0template_d-link_dgs-1100-10_me_rev._a1.yamlYAML 导出格式有一点细节值得注意导出文件里的内部模板名template字段为SNMP D-link DGS-1100-10ME revA1而对外显示名name字段为SNMP D-link DGS-1100-10/ME revA1导入后在模板列表中看到的是带斜杠的显示名。模板被归入Templates与ZBX-DLINK-TEMPLATES两个模板组并划分了General设备通用与Interface(s)接口两个应用application来组织监控项。模板导入与主机接入步骤按仓库根 README.md 中描述的社区模板使用流程接入该模板只需三步下载并导入模板在 Zabbix Web 前端进入数据采集 → 模板点击右上角导入选择对应 Zabbix 版本的 XML/YAML 文件5.0 用 XML5.4/6.0 用 YAML导入时按需勾选更新现有模板创建新的模板组等覆盖策略。按配置要求设置模板/主机该模板自身不依赖任何宏、模板链接或外部脚本因此导入后即可直接使用无需额外填宏。将模板链接到主机在主机配置中新增一个SNMP 接口填设备 IP、端口 161、SNMP 版本与 community/安全名并在模板标签页链接本模板。建议在链接前先确认设备侧的 SNMP 可达性例如用snmpwalk -v2c -c community 设备IP .1.3.6.1.4.1.171.10.134.2.1.1能正常返回数据再接入 Zabbix可避免大量 No Such Object 的无效轮询。采集架构总览两类监控对象从 5.0 XML 导出6.0 YAML 与之等价可以看出模板的采集面分为两层设备级固定监控项10 个全部挂在General应用下轮询固定 OID覆盖设备身份、版本、序列号、CPU/内存利用率、运行时长等接口级原型监控项6 个由一条名为Network Interfaces的发现规则LLD驱动挂在Interface(s)应用下对每个被发现的接口自动生成监控项。OID 来源也分两类一类是标准 MIB——SNMPv2-MIB的system组.1.3.6.1.2.1.1.*与IF-MIB的ifTable.1.3.6.1.2.1.2.2.1.*另一类是 D-Link 私有 MIB——企业号171.1.3.6.1.4.1.171.*下的设备信息对象。这正呼应了 README 中基于官方 D-Link MIB的表述标准部分保证通用性私有部分提供 D-Link 特有的 CPU/内存统计。设备级监控项详解10 项README 的 Items collected 表格罗列了全部 10 个设备级监控项结合 XML/YAML 中补充的 OID、单位、保留策略与资产链接汇总如下监控项名称KeyOID更新间隔类型/单位历史/趋势资产链接Device CPU utilizationcpuLast5MinUsage.1.3.6.1.4.1.171.10.134.2.1.1.30.3.060s数值 /%7d / 30d—Device memory utilizationramLast5MinUsage.1.3.6.1.4.1.171.10.134.2.1.1.31.3.060s数值 /%7d / 30d—Device uptimesysUpTime.1.3.6.1.2.1.1.3.0300s数值 /uptime30d / 0—Device namesysName.1.3.6.1.2.1.1.5.03600s字符1d / 0ALIASDevice contact detailssysContact.1.3.6.1.2.1.1.4.03600s字符1d / 0CONTACTDevice descriptionsysDeviceType.1.3.6.1.4.1.171.10.134.2.1.1.1.4.03600s字符1d / 0MODELDevice firmware versionsysFirmwareVersion.1.3.6.1.4.1.171.10.134.2.1.1.1.3.03600s字符1d / 0SOFTWAREDevice hardware versionsysHardwareVersion.1.3.6.1.4.1.171.10.134.2.1.1.1.2.03600s字符1d / 0HARDWAREDevice serial numbersysSerialNumber.1.3.6.1.4.1.171.10.134.2.1.1.29.03600s字符1d / 0SERIALNO_ADevice locationsysLocationName.1.3.6.1.4.1.171.10.134.2.1.1.3.03600s字符1d / 0LOCATION几个值得注意的设计点轮询频率分层CPU/内存是动态指标每 60 秒采集一次并保留 7 天历史 30 天趋势sysUpTime每 300 秒一次并保留 30 天历史而设备名称、序列号、版本号等静态信息每小时3600s采一次即可且不保留趋势trends: 0避免无意义的存储开销。私有 OID 的结构暗示从 OID 分支看.1.3.6.1.4.1.171.10.134.2.1.1下的.1.2/.1.3/.1.4分别是硬件版本、固件版本、设备类型描述.29是序列号.30.3与.31.3是最近 5 分钟平均的 CPU/内存利用率。README 中对应的英文描述也明确指出这两项表示average CPU/RAM usage in last 5 minute of the switch in percentage说明它们并非瞬时值做告警阈值时需要结合这一语义。字符型监控项所有身份类信息均声明为value_type: CHAR在 Zabbix 中以字符串存储适合直接写入资产或用于展示不参与数值计算。sysUpTime 的预处理TimeTicks 到可读时长sysUpTime是 SNMP 标准对象SNMPv2-MIB的system组第 3 个叶子返回的是 TimeTicks 类型——以百分之一秒为单位的计时器。模板在 6.0 YAML 中为它配置了预处理步骤preprocessing: - type: MULTIPLIER parameters: - 0.01即把原始 TimeTicks 值乘以 0.01 换算为秒再配合监控项的units: uptime单位Zabbix 前端即可把数值渲染为x 天 x 小时 x 分的可读时长。这一步在 XML 导出中同样存在typeMULTIPLIER/typeparams0.01/params两个版本行为一致。若直接使用原始值而不做换算数据会放大 100 倍且语义错误——这是导入第三方模板后最常踩的坑之一。资产字段自动填充InventoryREADME 明确提到模板会 Fills possible host inventory fields这是本模板的一大特色7 个设备信息监控项通过inventory_link属性把采集到的值同步到主机资产Inventory字段实现设备身份档案自动维护监控项资产字段inventory_linkDevice name (sysName)ALIASDevice contact details (sysContact)CONTACTDevice description (sysDeviceType)MODELDevice firmware version (sysFirmwareVersion)SOFTWAREDevice hardware version (sysHardwareVersion)HARDWAREDevice serial number (sysSerialNumber)SERIALNO_ADevice location (sysLocationName)LOCATION实际效果是只要监控项能读到值主机资产页的别名、联系人、型号、软硬件版本、序列号、位置就会被自动填写并随轮询刷新省去人工录入资产信息的步骤。这也解释了为什么这些静态项的轮询间隔放宽到 3600 秒——资产字段并不需要秒级新鲜度。网络接口自动发现LLDREADME 的 Discovery rules 部分列出了模板唯一一条发现规则Network Interfaces类型为SNMP agentkey 为ifIndex更新间隔 3600 秒。导出文件给出了完整实现snmp_oid: discovery[{#SNMPVALUE},.1.3.6.1.2.1.2.2.1.1] key: ifIndex delay: 3600 lifetime: 1ddiscovery[{#SNMPVALUE},OID]是 Zabbix 的 SNMP 自动发现语法轮询IF-MIB的ifTable第一列ifIndex.1.3.6.1.2.1.2.2.1.1把表中每个索引值作为宏{#SNMPVALUE}输出同时生成配套的{#SNMPINDEX}宏用于拼接各列 OID 的实例编号。lifetime: 1d表示某个接口从 MIB 表中消失后其派生监控项会保留 1 天再被清理避免拔线换口时数据瞬间丢失。通过这一条规则模板可以自动感知交换机上存在的全部物理/逻辑接口包括 SFP 光口、级联口等无需人工逐个添加监控项。接口原型监控项详解6 个发现规则下挂了 6 个 item prototype在 README 的 Items collected 中标注LLD的条目每个原型都以{#SNMPVALUE}为后缀生成独立监控项原型名称Key 模板OID 模板更新间隔单位预处理Incoming traffic on interface $1ifInOctets[{#SNMPVALUE}].1.3.6.1.2.1.2.2.1.10.{#SNMPINDEX}300sbpsCHANGE_PER_SECOND → MULTIPLIER 8Outgoing traffic on interface $1ifOutOctets[{#SNMPVALUE}].1.3.6.1.2.1.2.2.1.16.{#SNMPINDEX}300sbpsCHANGE_PER_SECOND → MULTIPLIER 8Inbound errors on interface $1ifInErrors[{#SNMPVALUE}].1.3.6.1.2.1.2.2.1.14.{#SNMPINDEX}3600s—SIMPLE_CHANGEOperational status of interface $1ifOperStatus[{#SNMPVALUE}].1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}300s—值映射 ifOperStatusSpeed of interface $1ifSpeed[{#SNMPVALUE}].1.3.6.1.2.1.2.2.1.5.{#SNMPINDEX}3600sbps—Uptime of interface $1ifLastChange[{#SNMPVALUE}].1.3.6.1.2.1.2.2.1.9.{#SNMPINDEX}3600suptime—其数据链路可以拆解如下流量换算关键ifInOctets/ifOutOctets是累计计数器octets含帧头原始值单调递增。模板先做CHANGE_PER_SECOND差值除以轮询间隔得到每秒字节数再做MULTIPLIER 8字节转比特最终单位设为bps。这样 Zabbix 前端看到的即是标准的每秒进出流量bps曲线可直接用于带宽监控与告警。历史保留策略上两个流量项的趋势保留 180 天适合做长期容量分析。错误计数ifInErrors同样是累计计数器模板用SIMPLE_CHANGE简单差值把它转成两次轮询之间的新增错误数用于观察接口丢包/CRC 错误趋势轮询间隔放宽到 3600 秒属于低频健康检查。接口状态ifOperStatus返回 1~7 的整数状态码模板为它挂了值映射见下节使最新值显示为可读的up/down/testing等状态词。速率与在线时长ifSpeed返回接口当前带宽估计值bpsifLastChange返回接口进入当前状态的时间点TimeTicks单位声明为uptime。ifOperStatus 值映射模板在导出文件中附带了一个名为SNMP interface status (ifOperStatus)的值映射value map把 RFC 2863ifOperStatus的 7 个枚举值映射为可读文本原始值映射文本含义1up接口正常转发2down接口关闭3testing测试模式不转发业务报文4unknown状态未知5dormant等待外部动作激活6notPresent硬件未安装/未识别7lowerLayerDown下层链路故障导致不可用该值映射同时存在于 5.0 XML 与 5.4/6.0 YAML 中且 5.4 之后带 UUIDde9a9ec0ee304880867e719c05adbba0。映射后接口状态监控项的最新值、最新值趋势与后续任何基于它编写的触发器表达式都会显示为这些可读状态是排查端口 down 但为什么 down的第一手依据。图形原型接口出入流量模板还定义了一条 graph prototype自动为每个发现的接口生成一张进出流量对比图。图形名称使用表达式动态生成interface {{HOSTNAME}:ifAlias[{#SNMPVALUE}].last(0)}图形包含两条曲线ifInOctets[{#SNMPVALUE}]绿色00C800与ifOutOctets[{#SNMPVALUE}]蓝色3333FF。这里有一个值得注意的实现细节图形标题表达式引用了ifAlias[{#SNMPVALUE}]这个监控项但它并未在本模板的 item prototype 中定义。因此图形标题的实际呈现效果取决于该主机上是否已存在同名监控项例如由其他模板或手工创建若不存在表达式会在图形命名时退化为空值或解析失败。读者导入后可在最新数据 → 图形中实际核对该模板生成的图形标题按需决定是否为ifAlias补充采集。宏、模板链接与触发器的设计取舍README 的三处声明值得原样继承Macros used无There are no macros links in this templateTemplate links无There are no template links in this templateTriggers无There are no triggers in this template。这是一个刻意的采集型模板设计模板只负责把数据稳定地采进来把告警策略的裁量权留给使用方。由于没有触发器模板不会在接口 down、CPU 飙高时自动告警。如果你需要告警可以基于本模板的监控项自行补充例如接口状态告警last(/主机/ifOperStatus[{#SNMPVALUE}])1值为 1 即up并结合 LLD 宏按接口定制CPU/内存利用率告警对cpuLast5MinUsage、ramLast5MinUsage设置阈值表达式注意二者语义是最近 5 分钟平均接口错误增长告警基于ifInErrors[{#SNMPVALUE}]的SIMPLE_CHANGE差值设定阈值。此类触发器可在主机 → 模板之外按需手动添加到主机或克隆模板中不影响原模板的通用性。若希望沿用社区惯例也可参考仓库 README.md 中关于模板使用与协作的说明在 Zabbix 官方模板规范框架下扩展。部署注意事项与排障要点SNMP 版本与凭据模板监控项类型均为SNMP agent不绑定特定 SNMP 版本设备侧需开启 SNMP 并保证 Zabbix 主机到设备的 161/UDP 可达。社区字符串或 SNMPv3 凭据在主机级配置模板内无相关宏。OID 可用性验证模板依赖 D-Link 私有 MIB 的 CPU/内存对象.1.3.6.1.4.1.171.10.134.2.1.1.30.3.0与.31.3.0以及标准ifTable。若设备固件较老或型号变体不同私有 OID 可能无响应表现为 CPU/内存监控项显示 No Such Object。建议导入前先用snmpwalk抽查上述 OID 是否返回数据。轮询节奏与资源占用模板整体轮询量很小——设备级仅 2 个 60s 高频项 若干 300s/3600s 低频项接口级每个接口 2 个 300s 流量项 4 个 3600s 低频项对小型 DGS-1100 系列10 口设备而言负载可忽略。多版本文件一致性5.0 XML 与 5.4/6.0 YAML 在监控项、原型、值映射、图形原型上完全一致仅导出格式与 UUID 标注不同可按部署的 Zabbix 主版本任选其一导入。与其他 D-Link 模板的关系在仓库 Network_Devices/D-Link 目录下除了本模板社区还维护了template_d-link_dgs_1100DGS 1100 系列通用版、template_d-link_dgs-1100-08v2_snmpv2、template_d-link_dgs-1210-52_rev._b/_c、template_d-link_dgs-3120-xx等多个 D-Link 交换机模板。本模板的特点是轻量、通用、面向 rev A1 硬件聚焦设备身份、资源利用率与接口自动发现若你纳管的是 DGS-1100 系列其他硬件版本或需要更细粒度的接口统计可在该目录下横向对比选择必要时叠加使用。但需要明确本模板自身不链接任何其他模板全部能力自包含。综上SNMP D-link DGS-1100-10/ME revA1是一份结构清晰、零外部依赖的 SNMP 采集模板10 个设备级监控项覆盖身份与资源指标1 条 LLD 规则加 6 个接口原型完成接口自动化纳管7 个资产链接实现资产档案自动维护配合 ifOperStatus 值映射与接口流量图形原型即可在 Zabbix 5.0/5.4/6.0 中快速构建起对 D-Link DGS-1100-10/ME 交换机的完整可见性。部署时按上文核对 SNMP 可达性与私有 OID 可用性再按需补充触发器即可投入生产使用。赞分享【免费下载链接】community-templatesZabbix Community Templates repository项目地址https://gitcode.com/gh_mirrors/co/community-templates点击查看免费下载相关推荐Zabbix 8.0 模板实战使用 SNMP 监控 D-Link DES/DGS 交换机D-Link DES_DGS Switch by SNMPZabbix 8.0 模板实战使用 SNMP 监控 D Link DES/DGS 交换机D Link DES_DGS Switch by SNMP 本技术指标监控可观测性告警运维使用 Zabbix 社区模板监控 D-Link DGS-1210-52 revB 交换机SNMP 模板结构与部署指南使用 Zabbix 社区模板监控 D Link DGS 1210 52 revB 交换机SNMP 模板结构与部署指南 本指南围绕 Zabbix CommuniJavaScript 条件分支实战用 if..else 编写显示符号程序The Modern JavaScript Tutorial 练习精解JavaScript 条件分支实战用 if..else 编写显示符号程序The Modern JavaScript Tutorial 练习精解 本文以上一篇AutoRemesher在工业设计中的应用产品模型的拓扑优化实践下一篇Apache Cassandra入门教程1小时快速上手分布式数据库创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考