/------------------------------\ | Remote CMPI Extension README | \------------------------------/ Abstract: --------- Remote CMPI enables providers to be run on remote systems without the need for an extra CIMOM. It uses a special proxying provider to relay requests to a remote location using so-called communication layers. The remote side has to start a CMPIRDaemon process, which accepts remote requests and passes them on to CMPI style providers. Remote providers are fully binary compatible and need not to be recompiled. Currently there are two types of remote provider available: out-of-process providers and TCP/IP providers using a separate daemon program. Remote CMPI support is now integrated in OpenPegasus. This implementation uses remote location routing based on namespace names. CIM requests issued against namespaces designated as remote namespaces will be routed automatically to remote locations. See CMPIR/tools/README for creating remote namespaces. Installation instructions: -------------------------- 1) Use the Pegasus build support to build Remote CMPI. Export the ENABLE_REMOTE_CMPI=1 environment variable prior to issuing make. 2) Update the provider registration by editing the MOF files to state that certain providers are to be driven remotely. See CMPIR/tools/README for tolls to mofidify existig registration mof files. Remote CMPI support is automatically invoked when CIM requests are issued against remote namspaces. See CMPIR/tools/README for defining remote namespaces. For testing purposes we recommend to use the SBLM base provider suite, see http://www-124.ibm.com/sblim/ for details. Use the following CMPIR/tools commands to prepare the remote CMPI facilites: sh CreateExtNs.sh -n root/local -p root/cimv2 -l localhost This will create a shared read-only remote namespace. sh AppendNs.sh root/local $SBLIM_HOME/cmpi-base/mof/Linux_BaseRegistration.mof > new-Linux_base.mof Use the new-Linux_base.mof file to register the sblim base providers. 2) Install the Remode CMPI Daemon at the remote location. For the moment only Linux systems are supported as remote locations. Copy the following files to the remote system: $PEGASUS_HOME/bin/CMPIRDaemn $PEGASUS_HOME/lib/libCMPIRNative.so $PEGASUS_HOME/lib/libCMPIRTCPCommRemote.so Copy required CMPI style providers to the remote location(s) as well. Setup the PATH and LD_LIBRARY_PATH environment variable accordingly. 3) Start CMPIRDaemon at the remote location(s) by issuing CMPIRDaemon at a comand line prompt. Remote CMPI uses port 9001. 4) Issue requests against CIMOM to see if its working, for example CLI -n root/local ni Linux_ComputerSystem All commands against root/local will be routed to the CMPIRDaemon. Debugging: ---------- To enable debugging output export RCMPI_DEBUG with one of the following values: - critical - normal - info - verbose This should give you detailed description about the actions performed within remote CMPI, both for the daemon process and the CIMOM. ----------------------------------------------------------------------------- Origial Author: Frank Scheffler (frank.scheffler@gmx.net) Modified by Adrian Schuur (schuur@de.ibm.com)