如何在System Center Operations Manager中监控网络适配器状态并触发禁用警报?
我来帮你一步步搞定在System Center Operations Manager(SCOM)里监控网络适配器禁用状态并触发警报的需求,这在日常运维里确实是个高频需求:
第一步:先看看内置监控能不能满足需求
SCOM其实自带了针对网络适配器状态的监视器,咱先检查下它是不是已经能用上:
- 打开SCOM控制台,切换到创作空间
- 展开「管理包对象」→「监视器」,在搜索框输入“网络适配器状态”
- 找到对应的监视器(通常是针对Windows系统的),右键看看它的启用状态——很多时候默认是禁用的,你需要右键选择「启用」,然后选择要应用的目标(比如所有Windows服务器,或者特定的服务器组)
这个内置监视器会自动检测适配器的NetEnabled属性(WMI里的状态),当适配器被禁用时,会把状态改成“警告”或“关键”。
第二步:配置警报生成(关键一步)
有些内置监视器默认不会自动弹出警报,得手动开启:
- 找到刚才的「网络适配器状态」监视器,右键打开「属性」
- 切换到警报选项卡,勾选「生成警报」
- 接着设置警报的优先级(比如“中”)、严重性(建议设为“警告”,如果是核心网卡可以设为“关键”)
- 还可以自定义警报描述,比如写:
[{0}] 服务器上的网络适配器 "{1}" 已被禁用,请及时检查——这样能一眼看到是哪台服务器哪个网卡出了问题
第三步:自定义监视器(如果内置的不够用)
要是你需要过滤特定适配器(比如只监控物理网卡,忽略虚拟网卡、VPN适配器),那就得自己整个自定义监视器了,用WQL查询最方便:
- 在创作空间右键「监视器」→「创建监视器」→「单元监视器」
- 选择「Windows WMI」→「WQL查询监视器」,跟着向导走
- 设置目标为「Windows计算机」(或者你指定的服务器组)
- 输入WQL查询语句,比如只监控物理网卡禁用的情况:
SELECT * FROM Win32_NetworkAdapter WHERE NetEnabled = FALSE AND PhysicalAdapter = TRUE AND NOT Name LIKE '%Virtual%' - 配置状态映射:当查询返回结果时,把监视器状态设为“警告”或“关键”
- 最后在「警报」选项卡开启警报生成,设置好警报的相关参数
第四步:测试验证
配置完别忘测试下,找台测试服务器禁用一个网卡,等个3-5分钟(SCOM的采集周期一般是5分钟左右),看看控制台的「警报」空间里有没有弹出对应的警报。如果没触发,先检查这几点:
- 目标服务器的SCOM代理是不是正常运行(在「管理」空间看代理状态)
- 监视器是不是正确应用到了这台服务器
- 用
wbemtest工具在测试服务器上执行你写的WQL查询,看看能不能返回禁用的网卡信息
内容的提问来源于stack exchange,提问作者Dragan
相关产品推荐
相关产品推荐

