The VMware Implementation
The VMware implementation works just fine – but the problem occasionally rears it’s head by a failure to start pegasus queues due to a compile error. It usually looks like this during boot:
/var/pegasus/vmware/install_queue/3 [ FAILED ]
When you examine the log file it suggests to examine you see the following:
Parsing error: parse error: Error adding class VMware_IdentityMemberOfCollection to the repository: CIM_ERR_NOT_FOUND: The requested object could not be found: “VMware_Identity”
Compiling omc-smash-interop-schema.mof into root/PG_Interop
The problem is that VMware have failed to include a member-directive in the configuration. It doesn’t affect anything except create an extra log. In fact their own KB suggests an upgrade to ESX 3.5 Update 2 to fix the problem (link).
However if an upgrade to 3.5 Update 2 is not on the cards, here is what you will need to do:
- Edit /var/pegasus/vmware/install_queue/3_files/mofs/root/PG_Interop/roleauth-schema.mof and add the bolded line above the pre-existing member directive.
#pragma include (”VMware_Identity.mof”)
#pragma include (”VMware_IdentityMemberOfCollection.mof”)
It also needs to be added in the standard cimv2 path:
- Edit /var/pegasus/vmware/install_queue/3_files/mofs/root/cimv2/roleauth-schema.mof
#pragma include (”VMware_Identity.mof”)
#pragma include (”VMware_IdentityMemberOfCollection.mof”)
Copy the missing file from the stardard cimv2 path to the shared path: cp /var/pegasus/vmware/install_queue/3_files/mofs/root/cimv2/VMware_Identity.mof /var/pegasus/vmware/install_queue/3_files/mofs/root/PG_Interop/
Stop and start the service with these commands:
/etc/init.d/pegasus stop
/etc/init.d/pegasus start
Once the scripts completes the install_queues will be empty and the service will start much more quickly.