【免费下载链接】community-templates
Zabbix Community Templates repository
本指南围绕 Zabbix Community Templates 仓库中的Alcatel-Lucent Enterprise OmniSwitch AOS 8.x官方模板展开,讲解如何利用 SNMPv3 对 ALE OmniSwitch(AOS Release 8.x)进行全栈监控,包括虚拟堆叠(Virtual Chassis)成员的自动发现、CPU/内存/RX-TX 负载、机箱温度、Flash 空间与端口流量统计。读完本文,你将能独立完成该模板的安装、宏配置、底层 OID 原理剖析与告警阈值调优,并将其直接部署到生产环境中。
模板概述:为 AOS 8.x 量身定制的 SNMPv3 监控方案
该模板由社区作者 Benny Eggerstedt 编写,2018 年 4 月 15 日首发,针对运行AOS Release 8.x的 Alcatel-Lucent Enterprise OmniSwitch 设计,核心监控通道为SNMPv3。模板作者在 5.0 README 中明确表示:模板"可能"同样兼容 SNMPv1/v2c,但并未投入精力测试,因为"没有理由不使用 SNMPv3"——这既是安全考量,也说明 SNMPv3 是本模板的第一等公民。
模板在 Zabbix 中被组织在Templates/Switches模板组下,模板全名为Alcatel-Lucent Enterprise OmniSwitch AOS 8.x,且不链接任何其他模板(无 Template links),所有监控逻辑均由自身内置的监控项与发现规则完成。
功能清单(Features)
模板提供的核心能力可归纳为以下五个维度:
- 虚拟堆叠自动发现:自动发现 Virtual Chassis(VC)中的所有成员元素(slot),无需手工逐个录入。
- CPU 监控:采集每个 VC 元素的 1 分钟 / 1 小时 / 1 天平均利用率,并自动生成图形与触发器。
- 内存监控:采集每个 VC 元素的 1 分钟 / 1 小时 / 1 天平均占用率,并自动生成图形与触发器。
- RX/TX 负载监控:采集每个 VC 元素的 1 分钟 / 1 小时 / 1 天平均收发负载,并自动生成图形与触发器。
- 温度监控:采集每个 VC 元素的机箱温度最新读数,并自动生成图形与触发器。
- 系统信息:设备联系人(Contact)、描述(Description)、位置(Location)、名称(Name)、运行时长(Uptime)、每个 VC 元素的设备型号(type/model)与序列号(serial number)。
- Flash 空间监控:采集每个 VC 元素的 /flash 剩余空间,并自动生成图形与触发器。
- 端口与 IP 接口发现:发现所有以太网端口(无论 up/down 状态)与全部 IP 接口,并基于 ifDescription / IP 接口名自动创建 In/OutOctets 流量监控项与图形。
前置条件:在 OmniSwitch AOS 8.x 上配置 SNMPv3 用户
模板依赖交换机侧预先创建的 SNMPv3 用户。在 AOS Release 8.x 的 CLI 中,通过以下单条命令即可完成创建(原文示例,用户名与密码均为占位示例):
-> user snmpv3 password snmpv3password sha+aes read-only all命令要素拆解:
| 参数 | 含义 |
|---|---|
user snmpv3 | 创建名为snmpv3的本地用户(用户名可自定义) |
password snmpv3password | 为该用户设置密码,示例中为snmpv3password |
sha+aes | 认证协议使用 SHA、加密协议使用 AES(SNMPv3 安全级别为 authPriv) |
read-only all | 授予对所有 MIB 树的只读访问权限 |
注意:示例中的用户名与密码需与 Zabbix 侧宏配置保持一致;生产环境应替换为符合密码策略的强口令。
模板安装与宏配置
导入模板
模板以 Zabbix 导出格式随仓库发布,按 Zabbix 大版本分目录存放:
- 5.0:XML 模板,对应 README 为 5.0/README.md;
- 5.4:YAML 模板;
- 6.0:YAML 模板(README 内容与 5.x 一致)。
在 Zabbix 前端执行Configuration -> Templates -> Import,选择与你的 Zabbix 版本匹配的导出文件即可完成导入。
配置 SNMPv3 宏
模板通过三个文本类型宏接收 SNMPv3 凭据,默认值均为空,导入后必须填充,否则所有 SNMP 监控项将因认证失败而无数据:
| 宏名 | 说明 | 默认值 | 类型 |
|---|---|---|---|
{$SNMP_V3_USER} | SNMPv3 用户名(对应交换机上的user snmpv3) | (空) | 文本宏 |
{$SNMP_V3_AUTHPASSPHRASE} | 认证口令(对应password ...中的密码) | (空) | 文本宏 |
{$SNMP_V3_PRIVPASSPHRASE} | 加密口令(AES 私钥) | (空) | 文本宏 |
配置路径:Configuration -> Templates -> Template Alcatel-Lucent Enterprise OmniSwitch AOS 8.x -> Macros,将上述三个条目分别填入实际值。若环境使用 SNMPv1/v2c,则需在主机级另行配置相应 SNMP 接口参数(模板本身以 SNMPv3 为设计基准)。
底层实现:三条低级别发现(LLD)规则剖析
模板的核心设计思路是用三条 SNMP 发现规则驱动全部动态监控项。三条规则的轮询周期均为 3600 秒(1 小时),在 5.0 XML 源码 中可逐一核对 OID 与过滤逻辑:
| 发现规则名称 | 监控项键 | 底层 OID | 说明 |
|---|---|---|---|
| Discover ALE OmniSwitch Entity AOS Release 8.x | slotindex | discovery[{#SNMPVALUE},.1.3.6.1.2.1.47.1.1.1.1.4] | ENTITY-MIB::entPhysicalContainedIn.X——X 为堆叠槽位号,VALUE 为实体值 |
| Discover Ethernet Interfaces | ifDescription | discovery[{#SNMPVALUE},.1.3.6.1.2.1.2.2.1.2] | IF-MIB::ifDescr,遍历全部以太网接口 |
| Discover ALE OmniSwitch AOS Release 8.x | vchassisnbr | discovery[{#SNMPVALUE},.1.3.6.1.4.1.6486.801.1.2.1.16.1.1.1.1.1.14] | ALE 私有 MIB(enterprise 6486)中的 VC 元素编号表 |
三条规则均携带正则过滤条件,从源码可见其精确作用:
slotindex规则过滤{#SNMPINDEX}为^([1-8]?)$:仅保留编号 1~8(含空)的实体,即堆叠机箱槽位,排除无关物理实体;vchassisnbr规则过滤{#SNMPINDEX}为^([^0]|[1-9][0-9]*)$:排除编号为 0 的元素,只保留有效 VC 成员。
这两条正则共同保证了动态监控项只落在真实存在的堆叠成员上,避免产生无意义的监控项冗余。
监控项(Items)全解
基础系统监控项(非 LLD)
模板内置 5 个固定监控项,均使用标准 SNMPv2-MIB 系统组 OID:
| 监控项名称 | 键 | OID | 周期 | 值类型 | 资产记录映射 |
|---|---|---|---|---|---|
| Device name | sysName | .1.3.6.1.2.1.1.5.0 | 300s | CHAR | NAME |
| Device description | sysDescr | .1.3.6.1.2.1.1.1.0 | 300s | CHAR | HARDWARE |
| Device contact details | sysContact | .1.3.6.1.2.1.1.4.0 | 300s | CHAR | CONTACT |
| Device location | sysLocation | .1.3.6.1.2.1.1.6.0 | 300s | CHAR | LOCATION |
| SysUptime | SysUptime | .1.3.6.1.2.1.1.3.0 | 60s | FLOAT | — |
这 5 项全部归属System应用(5.4 版起以Application: System标签形式呈现,见 5.4 YAML)。前四项通过inventory_link直接回填 Zabbix 资产记录(名称/硬件/联系人/位置),可自动维护 CMDB 字段。
SysUptime 值得特别说明:SNMP 返回的是 TimeTicks(100 timeticks == 1 秒),模板为其配置了MULTIPLIER 0.01预处理,将原始计数换算为秒并显示为uptime单位;同时内置一个非 LLD 触发器{HOSTNAME} has been restarted(表达式last(/.../SysUptime)<1000,优先级 INFO),用于感知交换机重启事件。
由 slotindex 驱动的实体监控项(LLD)
依托 ENTITY-MIB 与 ALE 私有 MIB,为每个堆叠槽位生成以下原型监控项(周期 300s 为主):
| 原型名称 | 键 | OID | 周期 | 值类型/单位 |
|---|---|---|---|---|
| Device type of slot {#SNMPINDEX} | devicemodel.slot.[{#SNMPINDEX}] | .1.3.6.1.2.1.47.1.1.1.1.13.{#SNMPINDEX}(entPhysicalModelName) | 300s | TEXT |
| Device serial number of slot {#SNMPINDEX} | serialnumber.slot.[{#SNMPINDEX}] | .1.3.6.1.2.1.47.1.1.1.1.11.{#SNMPINDEX}(entPhysicalSerialNum) | 300s | TEXT |
| 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 私有) | 300s | Byte |
| 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 私有) | 60s | °C |
型号与序列号直接取自标准 ENTITY-MIB,可用于自动识别每台堆叠成员的实际硬件;Flash 剩余空间与温度则取自 ALE 企业私有 MIB(企业号 6486),是 OmniSwitch 特有的管理对象。
由 vchassisnbr 驱动的资源监控项(LLD)
VC 元素的 CPU、内存与 RX/TX 负载共 9 个原型监控项,全部为百分比数值、周期 60s,OID 落在 ALE 私有 MIB.1.3.6.1.4.1.6486.801.1.2.1.16.1.1.1.1.1.{5..13}区间内:
| 类别 | 1 分钟平均 | 1 小时平均 | 1 天平均 | 单位 |
|---|---|---|---|---|
| CPU | cpu1minavg.slot.[{#SNMPVALUE}](OID 尾号 11) | cpu1hravg.slot.[{#SNMPVALUE}](尾号 12) | cpu1dayavg.slot.[{#SNMPVALUE}](尾号 13) | % |
| Memory | memory1minavg.slot.[{#SNMPVALUE}](尾号 8) | memory1hravg.slot.[{#SNMPVALUE}](尾号 9) | memory1dayavg.slot.[{#SNMPVALUE}](尾号 10) | % |
| RXTX | rxtx1minavg.slot.[{#SNMPVALUE}](尾号 5) | rxtx1hravg.slot.[{#SNMPVALUE}](尾号 6) | rxtx1dayavg.slot.[{#SNMPVALUE}](尾号 7) | % |
三个类别在模板中分别归属CPU、Memory、RXTX Load应用/标签,便于在 Zabbix 中按资源维度筛选与授权。
端口流量监控项(LLD)
以太网接口发现规则为每个接口(含 down 状态接口)生成两个原型监控项,将 SNMP 计数器的原始字节数转换为实时带宽(bps):
| 原型名称 | 键 | OID | 周期 | 预处理 |
|---|---|---|---|---|
| InOctets {#SNMPVALUE} | inoctets.[{#SNMPVALUE}] | .1.3.6.1.2.1.2.2.1.10.{#SNMPINDEX}(ifInOctets) | 60s | CHANGE_PER_SECOND → MULTIPLIER 8 |
| OutOctets {#SNMPVALUE} | outoctets.[{#SNMPVALUE}] | .1.3.6.1.2.1.2.2.1.16.{#SNMPINDEX}(ifOutOctets) | 60s | CHANGE_PER_SECOND → MULTIPLIER 8 |
{#SNMPVALUE}取自 ifDescr(接口描述,即端口名),因此图形标题会显示为Interface {#SNMPVALUE} in/out,直观对应实际端口。预处理链先计算每秒增量、再乘以 8 将字节换算为比特,单位标记为bps,归属Ports应用/标签。
触发器与告警阈值
模板为关键资源内置了warning(警告)级触发器原型,全部基于last()函数实时判定,阈值如下:
| 触发器名称 | 表达式(5.x 语法示意) | 阈值含义 |
|---|---|---|
| {HOSTNAME} has been restarted | last(/.../SysUptime)<1000 | 设备重启检测(INFO) |
| Flash freespace on chassis {#SNMPINDEX} < 256 MB | last(/.../freespace.slot.[{#SNMPINDEX}])<268435456 | Flash 剩余空间低于 256 MB(字节换算:256×1024×1024) |
| Temperature on chassis {#SNMPINDEX} > 55 °C | last(/.../temperature.slot.[{#SNMPINDEX}])>55 | 机箱温度超过 55 °C |
| CPU usage on chassis [{#SNMPVALUE}] > 80% | last(/.../cpu1minavg.slot.[{#SNMPVALUE}])>80 | 1 分钟平均 CPU 超过 80% |
| Memory usage on chassis [{#SNMPVALUE}] > 80% | last(/.../memory1minavg.slot.[{#SNMPVALUE}])>80 | 1 分钟平均内存占用超过 80% |
| RXTX load on chassis [{#SNMPVALUE}] > 80 % | last(/.../rxtx1minavg.slot.[{#SNMPVALUE}])>80 | 1 分钟平均收发负载超过 80% |
注意触发器均针对1 分钟平均值判定(而非 1 小时/1 天),保证了告警的实时性;同时触发器没有配置恢复表达式,恢复条件为值回落至阈值以下时 Zabbix 自动清除 PROBLEM 状态。所有触发器原型优先级均为 warning,可在主机级或模板级自行调整严重级别与通知媒介。
图形原型:开箱即用的可视化
模板随 LLD 规则内置了多组图形原型,无需手工绘图:
- Interface {#SNMPVALUE} in/out:双线渐变图,入方向绿色(00AA00)、出方向蓝色(3333FF),Y 轴最小值固定为 0;
- Freespace /flash on chassis {#SNMPINDEX}:单线图,绿色(00AA00);
- Temperature on chassis {#SNMPINDEX}:单线图,深绿(1A7C11),Y 轴上下限均固定,便于横向比较各槽位温度;
- CPU usage chassis {#SNMPVALUE}/Memory usage chassis {#SNMPVALUE}/RXTX usage chassis {#SNMPVALUE}:每个图形叠加三条曲线——1 分钟平均(1A7C11)、1 小时平均(00CCCC)、1 天平均(00CC00),Y 轴范围固定为 0~100%,可一眼看出负载的瞬时值与历史趋势。
使用注意事项与已知限制
作者在 README 中给出了几条重要的实践提示:
- 优先使用 SNMPv3:模板未对 SNMPv1/v2c 做针对性测试,若强制降级使用,需自行验证兼容性。
- LLD 图形无法聚合多子元素:截至模板发布时,Zabbix 尚不支持通过 LLD 生成包含多个子元素的图形(例如"一张图汇总所有槽位的 CPU"),详见 ZBXNEXT-927;如需聚合视图,可借助 Zabbix 6.x 之后原生支持的聚合图形/数据概览自行搭建。
- 测试环境:模板作者在 2018 年 4 月 15 日于一个2 台 OS6860 组成的 Virtual Chassis上完成验证,说明该模板对 OS6860 系列堆叠场景有实测背书;其他型号建议先在小规模环境验证。
变更记录
- 15.04.2018:初始发布(Initial release)。
仓库中的相关文件与版本演化
本模板在仓库中按 Zabbix 版本多目录维护,除本文聚焦的 8.x 模板外,还可在同目录下找到:
- template_alcatel-lucent_enterprise_omniswitch_aos_release_6.x(5.0/5.4/6.0 三版本);
- template_alcatel-lucent_enterprise_omniswitch_aos_release_6-8.x(7.4 合并版,同时覆盖 AOS 6.x 与 8.x)。
从 5.0 XML 到 5.4 YAML 的实现差异主要是结构性的:5.0 使用applications(应用)对监控项分组,5.4/6.0 起改为tags(标签)承载Application信息,同时引入 uuid 字段。监控项键、OID、预处理与触发器逻辑在各版本间保持一致,升级 Zabbix 大版本时可直接导入对应目录的导出文件完成迁移。
小结
Alcatel-Lucent Enterprise OmniSwitch AOS 8.x模板以三条 SNMP LLD 规则为骨架,完整覆盖了虚拟堆叠交换机"成员发现—资源采集—阈值告警—图形可视化"的监控闭环:ENTITY-MIB 解决槽位实体识别,ALE 私有 MIB 提供 CPU/内存/RX-TX/温度/Flash 等设备原生指标,IF-MIB 解决全端口流量统计。部署时只需三步:交换机侧创建 SNMPv3 用户、导入模板、填充三个凭据宏。对于需要同时纳管 AOS 6.x 与 8.x 混合环境的用户,仓库还提供了 6-8.x 合并模板作为备选方案。
【免费下载链接】community-templates
Zabbix Community Templates repository
相关推荐
Zabbix 监控 Alcatel-Lucent Enterprise OmniSwitch AOS 6.x:基于 SNMPv3 与 LLD 的堆叠交换机全栈监控模板解析
Zabbix 监控 Alcatel Lucent Enterprise OmniSwitch AOS 6.x:基于 SNMPv3 与 LLD 的堆叠交换机全栈监
Front-End-Checklist 实战指南:Service Worker 注册、缓存策略与离线支持
Front End Checklist 实战指南:Service Worker 注册、缓存策略与离线支持 本指南基于 Front End Checklist 仓
使用 Zabbix 监控 Alcatel-Lucent Enterprise OmniSwitch AOS 8.x:基于 SNMPv3 的虚拟化机箱全栈监控模板实战
使用 Zabbix 监控 Alcatel Lucent Enterprise OmniSwitch AOS 8.x:基于 SNMPv3 的虚拟化机箱全栈监控模板
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考