☰
使用 Zabbix 监控 Alcatel-Lucent Enterprise OmniSwitch AOS 8.x:基于 SNMPv3 的虚拟化机箱全栈监控模板实战
2026/10/17 5:44:14 网站建设 项目流程

【免费下载链接】community-templates

Zabbix Community Templates repository

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

导读

本文基于 Zabbix Community Templates 仓库中的Alcatel-Lucent Enterprise OmniSwitch AOS 8.x模板,系统讲解如何通过 SNMPv3 对运行 AOS Release 8.x 的 ALE OmniSwitch 交换机实施监控。读完本文,你将掌握:在交换机上配置 SNMPv3 用户、在 Zabbix 中导入模板并配置宏、理解模板内置的三大 LLD(低级别自动发现)规则如何自动发现 Virtual Chassis(虚拟化机箱,VC)成员、全部以太网端口与 IP 接口,以及 CPU/内存/收发负载/温度/Flash 空间等指标的采集项、图形与触发器完整清单,并了解底层 OID 与数据预处理逻辑,可直接落地部署。

模板概览与监控能力

该模板由 Benny Eggerstedt 编写(2018-04-15 首发),目标设备是运行AOS Release 8.x的 Alcatel-Lucent Enterprise OmniSwitch,监控方式为SNMPv3。作者明确说明模板"可能也兼容 SNMPv1/v2c",但没有投入精力去测试,理由是没有充分理由不使用更安全的 SNMPv3——因此本文以 SNMPv3 为主展开。模板归属Templates/Switches模板组,在仓库中同时提供 Zabbix 5.0(XML)、5.4(YAML)与 6.0(YAML)三个版本的定义文件,三个版本的 README 与监控内容保持一致。

核心监控能力如下(原文 Features 完整继承):

  • 自动发现全部 Virtual Chassis(VC)元素:无需手动逐个添加成员机箱,LLD 自动枚举堆叠中的每个成员;
  • CPU:1 分钟均值、1 小时均值、1 天均值,为每个 VC 元素生成图形与触发器;
  • 内存:1 分钟均值、1 小时均值、1 天均值,为每个 VC 元素生成图形与触发器;
  • RX/TX 负载:1 分钟均值、1 小时均值、1 天均值,为每个 VC 元素生成图形与触发器;
  • 机箱温度:最新读数,为每个 VC 元素生成图形与触发器;
  • 系统信息:设备联系人、设备描述、设备位置、设备名称、设备运行时长(Uptime),以及每个 VC 元素的设备型号、序列号、Flash 剩余空间(含图形与触发器);
  • 端口与接口发现:发现全部以太网端口(无论 up/down 状态)与全部 IP 接口,自动创建基于端口描述(ifDescription)/ IP 接口名的 In/OutOctets 流量采集项与图形。

第一步:在 ALE OmniSwitch AOS 8.x 上配置 SNMPv3

在交换机 CLI 中执行以下命令创建只读 SNMPv3 用户(密码与安全级别可按需调整,示例默认使用 SHA 认证 + AES 加密):

-> user snmpv3 password snmpv3password sha+aes read-only all

这条命令的含义是:创建用户snmpv3,密码snmpv3password,认证协议 SHA、加密协议 AES,访问权限为只读,作用于全部视图(all)。命令中的->是 ALE OmniSwitch 的 CLI 提示符。生产环境务必替换为强密码,并将snmpv3/snmpv3password与 Zabbix 端宏保持一致。

第二步:导入模板并配置宏

按照 Zabbix 标准流程导入模板文件(Data collection → Templates → Import),随后进行宏配置:

  1. 进入Configuration → Templates → Template Alcatel-Lucent Enterprise OmniSwitch AOS 8.x → Macros;
  2. 设置以下三个宏(README 原文要求设置三个条目),值为交换机上刚创建的 SNMPv3 用户信息。
宏名称说明默认值类型
{$SNMP_V3_AUTHPASSPHRASE}SNMPv3 认证口令(Authentication passphrase)空Text macro
{$SNMP_V3_PRIVPASSPHRASE}SNMPv3 加密口令(Privacy passphrase)空Text macro
{$SNMP_V3_USER}SNMPv3 用户名空Text macro

宏可以定义在模板级,也可以按主机单独覆盖。之后为主机配置 SNMP 接口时选择 SNMPv3 类型,并将认证协议(SHA)、加密协议(AES)、用户名、认证口令与加密口令分别引用上述三个宏,实现凭据的统一管理与安全传递。三个宏在模板定义文件的末尾统一声明(见 5.4 YAML 宏定义)。

三大发现规则:LLD 自动发现机制

模板没有模板链接(Template links 为空),所有监控对象均由三条 SNMP LLD 规则动态生成,更新间隔均为3600 秒(每小时一次)。下表对照 README 与 YAML 定义整理:

发现规则名称底层 MIB / OIDKey说明
Discover Ethernet InterfacesIF-MIB::ifDescr.1.3.6.1.2.1.2.2.1.2ifDescription枚举全部以太网接口(含 down 状态),{#SNMPVALUE}携带接口描述
Discover ALE OmniSwitch Entity AOS Release 8.xENTITY-MIB::entPhysicalContainedIn.1.3.6.1.2.1.47.1.1.1.1.4slotindexX 为槽位号(堆叠成员),VALUE 为 Entity 值,用于发现每个 VC 元素的实体信息
Discover ALE OmniSwitch AOS Release 8.xALE 私有 MIB.1.3.6.1.4.1.6486.801.1.2.1.16.1.1.1.1.1.14vchassisnbr枚举 Virtual Chassis 成员编号,用于发现每个机箱的 CPU/内存/负载

三条规则均使用discovery[{#SNMPVALUE},<OID>]形式做 SNMP 遍历,并带有正则过滤器(见 5.4 YAML 发现规则):

  • Entity 发现过滤器:对{#SNMPINDEX}应用正则^([1-8]?)$,即只接受空值或 1~8 的槽位号,过滤掉其他无关实体(如电源、风扇等非 1~8 槽位对象);
  • VC 发现过滤器:对{#SNMPINDEX}应用正则^([^0]|[1-9][0-9]*)$,即只接受非零的正整数编号,避免把编号 0(通常是机框本身)当作可监控的 VC 成员。

从实现上看,VC 成员相关的 CPU/内存/负载指标 OID 都落在 ALE 企业私有 MIB 树.1.3.6.1.4.1.6486.801.1.2.1.16.1.1.1.1.1下,且索引与{#SNMPINDEX}一一对应;实体信息(型号、序列号)则来自标准 ENTITY-MIB,这也是该模板"自动发现 VC 全部元素"的底层原理。

采集项详解:系统级、VC 元素级与端口级

系统级采集项(每 60~300 秒)

以下 5 个采集项直接挂在主机上,与 LLD 无关(见 5.4 YAML 系统采集项):

采集项名称KeySNMP OID更新间隔单位/类型备注
SysUptimeSysUptime.1.3.6.1.2.1.1.3.060suptime(FLOAT)预处理 MULTIPLIER 0.01,把 TimeTicks 换算为秒(100 timeticks == 1 秒);另有重启告警触发器
Device namesysName.1.3.6.1.2.1.1.5.0300sCHAR映射到资产清单 NAME 字段
Device descriptionsysDescr.1.3.6.1.2.1.1.1.0300sCHAR含硬件类型、OS 与网络软件版本,映射到 HARDWARE 字段
Device contact detailssysContact.1.3.6.1.2.1.1.4.0300sCHAR联系人信息,映射到 CONTACT 字段
Device locationsysLocation.1.3.6.1.2.1.1.6.0300sCHAR物理位置,映射到 LOCATION 字段

上述 OID 均来自标准 SNMPv2-MIB / DISMAN-EVENT-MIB,采集间隔 5 分钟、不保留趋势(trends=0),适合作为静态资产信息;SysUptime 为 1 分钟间隔并保留 60 天趋势,用于重启检测。

VC 元素级采集项(Entity 发现派生)

由Discover ALE OmniSwitch Entity AOS Release 8.x规则派生,索引{#SNMPINDEX}为堆叠槽位号:

采集项名称KeySNMP OID更新间隔单位触发器
Device type of slot {#SNMPINDEX}devicemodel.slot.[{#SNMPINDEX}].1.3.6.1.2.1.47.1.1.1.1.13(entPhysicalModelName)300sTEXT无
Device serial number of slot {#SNMPINDEX}serialnumber.slot.[{#SNMPINDEX}].1.3.6.1.2.1.47.1.1.1.1.11(entPhysicalSerialNum)300sTEXT无
Freespace /flash chassis {#SNMPINDEX}freespace.slot.[{#SNMPINDEX}].1.3.6.1.4.1.6486.801.1.1.1.3.1.1.8.1.2.{#SNMPINDEX}(ALE 私有 MIB)300sByteFlash 剩余 < 256 MB
Temperature chassis {#SNMPINDEX}temperature.slot.[{#SNMPINDEX}].1.3.6.1.4.1.6486.801.1.1.1.3.1.1.3.1.16.{#SNMPVALUE}(ALE 私有 MIB)60s°C温度 > 55 °C

其中型号、序列号来自标准 ENTITY-MIB(entPhysicalModelName/entPhysicalSerialNum),Flash 剩余空间与温度来自 ALE 企业私有 MIB(企业号 6486),两者都以{#SNMPINDEX}槽位号为索引,因此能为堆叠中的每个成员分别出图、分别告警。

VC 元素级采集项(vchassisnbr 发现派生)

由Discover ALE OmniSwitch AOS Release 8.x规则派生,每个 VC 成员生成 CPU、内存、RX/TX 负载三组指标,每组包含 1 分钟/1 小时/1 天三个均值,索引{#SNMPVALUE}为机箱编号:

采集项名称KeySNMP OID(ALE 私有 MIB 树.1.3.6.1.4.1.6486.801.1.2.1.16.1.1.1.1.1)更新间隔单位触发器
CPU usage 1 min/1 hr/1 day avg chassis {#SNMPVALUE}cpu1minavg.slot.[{#SNMPVALUE}]/cpu1hravg.../cpu1dayavg.......11/.12/.1360s%1 分钟均值 > 80%
Memory usage 1 min/1 hr/1 day avg chassis {#SNMPVALUE}memory1minavg.slot.[{#SNMPVALUE}]/memory1hravg.../memory1dayavg.......8/.9/.1060s%1 分钟均值 > 80%
RXTX usage 1 min/1 hr/1 day avg chassis {#SNMPVALUE}rxtx1minavg.slot.[{#SNMPVALUE}]/rxtx1hravg.../rxtx1dayavg.......5/.6/.760s%1 分钟均值 > 80%

三个时间窗口的均值由设备侧直接提供(对应 ALE MIB 中不同的叶子节点),Zabbix 侧无需自行聚合;1 分钟均值同时承担告警职责,1 小时与 1 天均值用于趋势观察。

端口级采集项(ifDescr 发现派生)

由Discover Ethernet Interfaces规则派生,为每个发现到的端口创建收发流量两个采集项,并以{#SNMPVALUE}(端口描述)区分:

采集项名称KeySNMP OID更新间隔单位预处理
InOctets {#SNMPVALUE}inoctets.[{#SNMPVALUE}].1.3.6.1.2.1.2.2.1.10.{#SNMPINDEX}(ifHCInOctets 对应表项)60sbpsCHANGE_PER_SECOND → MULTIPLIER 8
OutOctets {#SNMPVALUE}outoctets.[{#SNMPVALUE}].1.3.6.1.2.1.2.2.1.16.{#SNMPINDEX}60sbpsCHANGE_PER_SECOND → MULTIPLIER 8

流量预处理是理解模板的关键:先做CHANGE_PER_SECOND(把计数器差值换算为每秒增量,即字节/秒),再MULTIPLIER 8把字节换算为比特(bps),单位统一为bps,从而直接得到端口实时速率。发现范围覆盖全部以太网端口(无论 up/down),避免因端口临时 down 而丢失监控对象。

触发器与告警阈值

模板内所有触发器优先级均为warning,告警对象覆盖每个 VC 成员(LLD 触发器的名称带(LLD)后缀,与 README 原文一一对应):

触发器名称表达式(5.4/6.0 语法)优先级含义
{HOSTNAME} has been restartedlast(/Alcatel-Lucent Enterprise OmniSwitch AOS 8.x/SysUptime)<1000INFOUptime 小于 1000 秒即判定设备重启(1 秒 == 100 timeticks)
CPU usage on chassis [{#SNMPVALUE}] > 80%last(/Alcatel-Lucent Enterprise OmniSwitch AOS 8.x/cpu1minavg.slot.[{#SNMPVALUE}])>80warning某 VC 成员 CPU 1 分钟均值超 80%
Memory usage on chassis [{#SNMPVALUE}] > 80%last(/Alcatel-Lucent Enterprise OmniSwitch AOS 8.x/memory1minavg.slot.[{#SNMPVALUE}])>80warning某 VC 成员内存 1 分钟均值超 80%
RXTX load on chassis [{#SNMPVALUE}] > 80 %last(/Alcatel-Lucent Enterprise OmniSwitch AOS 8.x/rxtx1minavg.slot.[{#SNMPVALUE}])>80warning某 VC 成员收发负载 1 分钟均值超 80%
Temperature on chassis {#SNMPINDEX} > 55 °Clast(/Alcatel-Lucent Enterprise OmniSwitch AOS 8.x/temperature.slot.[{#SNMPINDEX}])>55warning某槽位温度超 55°C
Flash freespace on chassis {#SNMPINDEX} < 256 MBlast(/Alcatel-Lucent Enterprise OmniSwitch AOS 8.x/freespace.slot.[{#SNMPINDEX}])<268435456warning某槽位 Flash 剩余空间低于 256 MB(268435456 字节)

值得说明的是,5.0 版 XML 中的触发器表达式使用{Alcatel-Lucent Enterprise OmniSwitch AOS 8.x:key.last()}<阈值的旧式语法,5.4/6.0 版 YAML 使用last(/模板名/key)<阈值的新式函数语法,两者语义等价(详见 5.0 XML 触发器)。所有触发器均未定义恢复表达式(Recovery expression 为空),恢复依赖指标值回落。

图形原型:开箱即用的可视化

模板为上述指标预先定义了图形原型(LLD 派生,ymin/ymax固定),每个 VC 成员与端口在发现后自动获得对应图形:

  • CPU usage chassis {#SNMPVALUE}:同图叠加 1 分钟(绿)、1 小时(青)、1 天(深绿)三条均值曲线;
  • Memory usage chassis {#SNMPVALUE}:同样叠加三个时间窗口的内存均值曲线;
  • RXTX usage chassis {#SNMPVALUE}:叠加三个时间窗口的收发负载曲线;
  • Interface {#SNMPVALUE} in/out:同一张图中以渐变线绘制该端口的 InOctets(绿色)与 OutOctets(蓝色);
  • Freespace /flash on chassis {#SNMPINDEX}、Temperature on chassis {#SNMPINDEX}:分别为每个槽位的 Flash 空间与温度出图。

由于图形原型挂靠在 LLD 规则下,新增 VC 成员或新端口接入时图形会自动跟随创建,无需人工干预。

使用注意与已知限制

  • 测试环境:截至 README 记录(2018-04-15),模板已在2 台 OS6860 组成的 VC上实测通过;作者以个人业余时间维护,欢迎反馈但请保持合理预期;
  • LLD 图形的限制:按作者说明,当时的 Zabbix 尚不支持通过 LLD 生成包含多个子元素(例如把所有槽位的 CPU/内存叠加到同一张图)的图形(详见 ZBXNEXT-927),因此本模板的图形按"每个 VC 成员一张"的方式组织;若你的 Zabbix 版本已支持聚合图形,可在此基础上自行扩展;
  • SNMP 版本:官方验证路径是 SNMPv3;SNMPv1/v2c 未经测试,如需使用请自行验证;
  • 版本目录:仓库按 Zabbix 版本分目录存放(5.0、5.4、6.0),导入时请选择与你的 Zabbix 版本匹配的定义文件(5.4/6.0 为 YAML,5.0 为 XML)。

相关资源

  • 关联文档:5.4 版 README(本文主要依据,5.0/6.0 版 README 内容相同)
  • 模板定义:5.4 YAML / 6.0 YAML / 5.0 XML
  • 同系列模板:仓库中还提供了针对更早系统的 AOS 6.x 模板,以及面向 Zabbix 7.4、覆盖 6.x~8.x 的 合并版模板,可按设备实际运行的 AOS 版本选择使用。

【免费下载链接】community-templates

Zabbix Community Templates repository

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

相关推荐

上一篇:如何永久保存微信聊天记录:免费本地工具WeChatMsg完整指南
下一篇:InternLM2-1_8b-reward部署指南:从本地环境到生产服务器的完整流程

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

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询