【问题标题】:CIM/SMI-S Client with PHP带有 PHP 的 CIM/SMI-S 客户端
【发布时间】:2012-02-07 20:30:49
【问题描述】:
我正在开发一个 Web 界面以从存储阵列中提取信息。我想使用 SMI-S 我可以使用 Java CIM 客户端(SBLIM CIM 客户端),但我真的很想有一种方法让 PHP 通过 CIM 提取信息。谁能指出我正确的方向?有没有一种方法可以让我通过 http(端口 5988)发送请求并解析出 xml 响应?
如果有人能提出更好的方法,那就太好了。谢谢。
【问题讨论】:
标签:
php
storage
wbem
authorize.net-cim
【解决方案1】:
我不知道直接用 PHP 编写的 CIM 客户端,但通常你可以将用 Perl 或 Python 编写的包集成到服务器端 PHP 中。
您还可以将命令行 CIM 客户端集成到 PHP 中,例如来自 OpenPegasus 的 cimcli,但解析命令行客户端的输出可能并不方便。
我建议不要编写自己的 CIM-XML 解析器 - 规范中有许多细节需要注意(DSP0200、DSP0201),这绝对是一项重大任务。
对于 Python,有一个运行良好的 PyWBEM CIM 客户端,即使项目没有太多活动。此外,还有用于 Python 的 PowerCIM CIM 客户端,它较新,但我还没有使用它。 PowerCIM 将 CIM 类作为 Python 类提供,而 PyWBEM 提供通用 Python 类,例如 CIMInstance 或 CIMClass。只需处理两种不同的样式,为了集成到下一个更高层(例如 PHP),在我看来,您最好使用 PyWBEM 提供的通用样式。
OpenWEM 客户端顶部有一个Perl interface,但我没有这方面的经验。
安迪