Common Manageability Programming Interface: Difference between revisions
updated SBLIM links |
Rescuing 5 sources and tagging 0 as dead. #IABot (v1.5beta) |
||
Line 1: | Line 1: | ||
The '''Common Manageability Programming Interface''' ('''CMPI''', also called ''Common Management Programming Interface''<ref>[http://www.snia.org/sites/default/files2/sdc_archives/2008_presentations/thursday/AshishJangam_NeeravParikh_ProviderArchitectureExplored.pdf SMI-S Provider - Architecture explored]</ref>) is an [[open standard]] that defines a [[Application programming interface|programming interface]] between a [[Web-Based Enterprise Management|WBEM]] server and WBEM providers. |
The '''Common Manageability Programming Interface''' ('''CMPI''', also called ''Common Management Programming Interface''<ref>[http://www.snia.org/sites/default/files2/sdc_archives/2008_presentations/thursday/AshishJangam_NeeravParikh_ProviderArchitectureExplored.pdf SMI-S Provider - Architecture explored] {{webarchive|url=https://web.archive.org/web/20150402135408/http://www.snia.org/sites/default/files2/sdc_archives/2008_presentations/thursday/AshishJangam_NeeravParikh_ProviderArchitectureExplored.pdf |date=2015-04-02 }}</ref>) is an [[open standard]] that defines a [[Application programming interface|programming interface]] between a [[Web-Based Enterprise Management|WBEM]] server and WBEM providers. |
||
==Overview== |
==Overview== |
||
Line 33: | Line 33: | ||
===WBEM providers=== |
===WBEM providers=== |
||
* [http://sblim.sourceforge.net/wiki/index.php/Providers SBLIM CMPI providers for Linux] |
* [http://sblim.sourceforge.net/wiki/index.php/Providers SBLIM CMPI providers for Linux] |
||
* [http://wiki.xensource.com/xenwiki/XenCim XenSource CMPI providers for Xen] |
* [https://archive.is/20130210092657/http://wiki.xensource.com/xenwiki/XenCim XenSource CMPI providers for Xen] |
||
* [http://libvirt.org/CIM/ CMPI providers for libvirt/KVM] |
* [http://libvirt.org/CIM/ CMPI providers for libvirt/KVM] |
||
* [http://publib.boulder.ibm.com/infocenter/zos/v1r10/index.jsp?topic=/com.ibm.zos.r10.cfz/cfz.htm CIM support on IBM z/OS 1.10] |
* [http://publib.boulder.ibm.com/infocenter/zos/v1r10/index.jsp?topic=/com.ibm.zos.r10.cfz/cfz.htm CIM support on IBM z/OS 1.10] |
||
Line 40: | Line 40: | ||
===Tools=== |
===Tools=== |
||
* [http://sblim.sourceforge.net/wiki/index.php/Ecute Extensible CIM UML Tooling Environment (ECUTE)] |
* [http://sblim.sourceforge.net/wiki/index.php/Ecute Extensible CIM UML Tooling Environment (ECUTE)] |
||
* [http://simplewbem.org/ CIMPLE Provider Development Environment (SimpleWBEM)] |
* [https://archive.is/20130415193624/http://simplewbem.org/ CIMPLE Provider Development Environment (SimpleWBEM)] |
||
* [http://konkretcmpi.org Konkret CMPI] |
* [https://archive.is/20130415062730/http://konkretcmpi.org/ Konkret CMPI] |
||
* [http://www.opendrim.org/opendrim/wiki/OpenDRIMOverview#a3.3.CMPICTemplateProvider OpenDRIM C++ Template] |
* [http://www.opendrim.org/opendrim/wiki/OpenDRIMOverview#a3.3.CMPICTemplateProvider OpenDRIM C++ Template] |
||
Line 71: | Line 71: | ||
* [http://publib.boulder.ibm.com/infocenter/zos/v1r10/topic/com.ibm.zos.r10.cfzu100/app4.htm#app4 Developing CMPI Providers for z/OS] |
* [http://publib.boulder.ibm.com/infocenter/zos/v1r10/topic/com.ibm.zos.r10.cfzu100/app4.htm#app4 Developing CMPI Providers for z/OS] |
||
* [http://www.opengroup.org The Open Group (TOG)] |
* [http://www.opengroup.org The Open Group (TOG)] |
||
* [http://sblim.wiki.sourceforge.net/ SBLIM project on SourceForge] |
* [https://archive.is/20120720162117/http://sblim.wiki.sourceforge.net/ SBLIM project on SourceForge] |
||
{{Open Group standards}} |
{{Open Group standards}} |
Revision as of 10:28, 11 August 2017
The Common Manageability Programming Interface (CMPI, also called Common Management Programming Interface[1]) is an open standard that defines a programming interface between a WBEM server and WBEM providers.
Overview
The CMPI standard is defined by the CMPI Working Group of The Open Group and is implementation neutral.
The CMPI programming interface is defined for the C programming language. Its C header files are enabled for C++. In addition, there are C++ utility macros that allow accessing the interface in a way that is more typical to C++.
Each release of the cmpi specification is accompanied by a set of C-language header files that represent the implementation of the interface. Normally these files are incorporated into each of the WBEM servers that provide this interface. However, the header files are also available independently for each release.
As of CMPI 2.1, these header files are available on github in the CMPI github Project. Also as of CMPI 2.1 the CMIP interface documentation is also available as a github website at CMPI API documentation on github
Benefits
Before the introduction of CMPI, each WBEM server implementation had its own specific programming interface for CIM providers (e.g. WMI COM API, OpenPegasus C++ API, OpenWBEM C++ API, etc.). CMPI allows CIM providers to be developed that are mostly or completely agnostic to the type of WBEM server they are being used with. Therefore, CMPI providers can be deployed across a variety of operating environments with no or minimal adaptation work. This protects the investment in these CIM providers.
Standards development
The original input to the CMPI standard was submitted by IBM to The Open Group in 2003. Along with the submission, an implementation was conducted as part of the SBLIM project.[2]
In late 2004, CMPI V1.0 was released by The Open Group as a Technical Standard. A major update (V2.0 was released in late 2006). A backward compatible but significant extension of the specification was released in February 2016.
The current version of CMPI is V2.1 (released February 2016).
List of products or projects supporting CMPI
Note: The following list is likely incomplete. Please help to complete the list.
WBEM servers
- OpenPegasus
- Small Footprint CIM Broker (SFCB)
- WS J WBEM Server
- OpenWBEM
- ESXi CIM broker
WBEM providers
- SBLIM CMPI providers for Linux
- XenSource CMPI providers for Xen
- CMPI providers for libvirt/KVM
- CIM support on IBM z/OS 1.10
- CIM support on IBM AIX 6.1
Tools
- Extensible CIM UML Tooling Environment (ECUTE)
- CIMPLE Provider Development Environment (SimpleWBEM)
- Konkret CMPI
- OpenDRIM C++ Template
See also
References
- ^ SMI-S Provider - Architecture explored Archived 2015-04-02 at the Wayback Machine
- ^ "OpenGroup wbemsource mailing list: CMPI Based Instrumentation Available". 2003. Retrieved 2009-04-23.
External links
CMPI 2.1 Standard
CMPI 2.0 Standard
CMPI 1.0 Standard
- CMPI 1.0 Specification
- CMPI 1.0 Technical Corrigendum 1
- CMPI 1.0 Technical Corrigendum 2
- CMPI 1.0 header files on SBLIM project