Linux和Unix有什么实际的或事实上的WMI替代品?

我最近被介绍给WMI ,并发现它很酷。

也许我的大脑只是没有装备,但像WMI这样的nix有什么类似的工具?

  • 用于获取数据的SNMP(您可以脚本化数据收集并将其附加到OID)
  • for hosts in foo bar baz; do ssh root@$host some-script; done
  • puppet ,bcfg,cfengine等等(其中很多包括获取系统数据的组件)

SNMP是这类工作中最常用的协议。 Net-SNMP是“参考”实现:

他们有一个很好的维基教程,例子,文档和编程资源:

它是开放源代码(GPL),支持所有主stream平台,包括大多数Linux发行版,* BSD UNIX,Mac OSX和Windows。 项目站点托pipeWindows的MSI安装程序,但是您可能想要将disto特定的程序包用于其他平台。

但是SNMP与WMI有一些显着的不同,并且有很多SNMP不支持的WMI特性。 有一个更新的替代品叫做WBEM(基于networking的企业pipe理)。 (巧合的是,WMI实际上是Windows的WBEM的MS实现。)

OpenPegasus项目是一个开源的WBEM实现:

它至less在Linux上运行,但我不知道任何其他平台。 我知道Fedora和RHEL / CentOS有很好的OpenPegasus软件包,但我不知道其他的发行版。

目前,SNMP比WBEM更普遍,至less在Linux和UNIX上。 此外,大多数托pipenetworking设备(路由器,交换机,负载平衡器等)都支持SNMP。 SNMP十多年来一直是Linux / UNIX / Cisco标准,并且不会很快消失。

openpegasus是一个开源的实现DMTF CIM和WBEM标准(其中WMI是一个超集)。 大多数商业Unix有一个WBEM实现。 SNMP对WMI来说就是一辆自行车对一辆汽车。 SNMP设置用于监视来自设备的信息,WMI被devise为允许您pipe理设备并监视设备,EG SNMP没有事件和订户的概念。

WMI基于WBEM(基于Web的企业pipe理),至less在HP-UX中有一个快速的Google(对于wbem unix ),至less在HP-UX中存在一些模糊的混乱。

squillman是正确的,虽然它可以派上用场了一些快速的“n”肮脏的报告,并不是那么好。