服务器和工作站功耗 – 以编程方式/通过脚本获取

我正在寻找一种通用的方式来查询Windows PC(XP / Vista / 7 / Server 2k3)的networking当前的功耗 – 理想的瓦特! 我相信这种东西是内置于WMI中的,但是可能只能通过制造商专有的WMI-add-on来实现 – 这是我想避免的。 我什么都找不到

我没有卡在WMI上,只是一些查询当前电源使用情况的机制。

如果有人find一个方法来查询这个,我会写一个应用程序来做一些很好的监控,并将其发布回社区。

麦克风

您可以通过IPMI获得最新一代的服务器,只要它们具有带外pipe理接口,如ILO(HP),DRAC(Dell),RSA(IBM),Fujitsu Siemens(IRMC)等。 这些在旧服务器中大多是可选的附加function,但最近的趋势是在大多数中端服务器中至less包含一个基本版本。 更基本的底板pipe理控制器(BMC)接口通常也会给你相当不错的功耗数量,而这种types的function在大多数厂商的服务器硬件上已经相当标准了很长一段时间,虽然它通常必须明确如果要使用带外function,请启用此function。

IPMI的一个问题是您需要某种系统pipe理控制台来充分利用它。 英特尔提供了一些简单的命令行工具,可以做你想做的事情,如果你想要推出自己的东西,他们有一些演示代码。

在完全configuration的服务器上,如果已经安装了适当的供应商pipe理代理,则可以通过WMI \ SNMP访问BMC计数器(通过机箱传感器提供的功耗,温度,风扇速度和某些cpu数据等) 。 这个问题是,没有标准的目标计数器设置为您查询。

在客户端,Intel vPro(AMT)和支持AMD ASF的业务客户端支持IPMI。 再次,你将不得不在目标系统上configuration这些pipe理function,这可能是一件非常头疼的事情。

这是某些系统pipe理控制台上可用的function – 如果您想玩一个,那么Dell的DMC是免费下载的,它将为您提供所有服务器和客户端的全部function,因为它不是特别限于支持戴尔硬件。 目前这个版本处于早期发布状态,但它是全面的系统pipe理软件,尽pipe如此,它需要一些工作来完成你想要的function。

你很难find一个通用的方法,因为这个信息并不是每台机器都提供的。 也就是说,许多大型制造商(惠普,IBM,戴尔等)在其机器内提供仪器以允许这种信息,但是您必须安装他们的工具并从这些工具中获取这些信息,全都是一样的。

有2个WMI类可以提供起点, Win32_CurrentProbe和Win32_VoltageProbe ,但是它们都依赖硬件设备来提供相关数据。

我不知道你的问题有更好的解决scheme。 无论是通过WMI子系统还是任何其他方法,操作系统都需要从某些硬件获取这些数据,而普通的PC /服务器硬件根本无法提供。

一些惠普和IBM可以通过带外pipe理单元(如ILO或RSA)真实地显示所使用的电源。 他们将提供驱动程序来查询这个额外的硬件。

或者,您可以使用测量电路电stream消耗的外部APC设备。

如果你有预算,也许带外解决scheme会更好。 APC等供应商提供了支持PowerStrip或智能PDU的function,可以支持互联网,并可以报告单独的电源使用情况,并提供远程电源pipe理function。 好处是它对于所有的机器都是通用的,但是这会要求你把所有的机器关在一起,以免浪费插口。