<br>Hi Mike,  <div><br></div><div>Tks for the reply...</div><div><br><div class="gmail_quote">On Tue, Apr 24, 2012 at 10:47 AM, Mike Burns <span dir="ltr">&lt;<a href="mailto:mburns@redhat.com">mburns@redhat.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Geoff,<br>
<br>
On Tue, 2012-04-24 at 07:49 +1000, Geoff O&#39;Callaghan wrote:<br>
&gt; Hi All<br>
&gt;<br>
&gt;<br>
&gt; I notice that ovirt-node 2.3.0 had CIM handling added via<br>
&gt; bz 753215 / <a href="http://gerrit.ovirt.org/#change,2480" target="_blank">http://gerrit.ovirt.org/#change,2480</a> .   I thought i&#39;d<br>
&gt; give it a test.  Alas, I can&#39;t get it to work.<br>
&gt;<br>
Yes, I failed to communicate that there were problems with the cim<br>
stuff.<br>
<br>
The overall goal was to expose libvirt-cim schemas, not all cim schemas,<br>
though that could be a next step.<br>
<br></blockquote><div>[snip] </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Given the above output, you obviously know far more about cim than I do.<br>
>From what I&#39;ve learned, there is an incompatibility between sblim-sfcb<br>
and libvirt-cim in Fedora 16.  We&#39;ll look closer as we move to F17 as<br>
the base install.<br></blockquote><div><br></div><div>Nah, i&#39;m a CIM newbie, i&#39;ve used it a little bit with ESX but nothing too serious.  I was just trying to get my head around it with ovirt.</div><div><br></div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
&gt;<br>
&gt; I tried this on F16 and centos6 - same result, so either i&#39;m doing<br>
&gt; something terribly wrong or there is a bug in the upstream.<br>
&gt;<br>
&gt;<br>
&gt; Note:  I tried the<br>
&gt;<br>
&gt;<br>
&gt; wbemcli ecn -noverify against an esxi box and got the expected result,<br>
&gt; so I can also confirm it&#39;s not a problem with my wbemcli client :)<br>
&gt;<br>
<br>
I&#39;ve tested the same code on a RHEVH-6 machine and can connect correctly<br>
to the libvirt-cim interface.<br>
&gt;<br>
&gt; Just before I submitted this I found<br>
&gt;<br>
&gt;<br>
&gt; <a href="https://bugzilla.redhat.com/show_bug.cgi?id=809090" target="_blank">https://bugzilla.redhat.com/show_bug.cgi?id=809090</a><br>
&gt; <a href="https://bugzilla.redhat.com/show_bug.cgi?id=809093" target="_blank">https://bugzilla.redhat.com/show_bug.cgi?id=809093</a><br>
&gt;<br>
&gt;<br>
&gt; I didn&#39;t find a bz against ovirt-node as well, should I raise one and xref with the above info and F16/17 bz&#39;s ?<br>
<br>
You can, but there&#39;s not much we can do until libvirt-cim and sblim-sfcb<br>
start working in Fedora.  Part of the problem is that there apparently<br>
isn&#39;t much demand cim working in upstream.<br>
<br>
We&#39;re also looking for people that actually know something about cim to<br>
help with developing and testing cim.<br>
<br></blockquote><div><br></div><div>Further exploring tonight shows that the libvirt-cim package is not correctly registering the mof files.</div><div><br></div><div>ie.   If you do a </div><div><br></div><div>sfcbrepos -h</div>
<div><br></div><div>you will see something like :</div><div><br></div><div>[root@kvm1 admin]# sfcbrepos -h</div><div>usage: /usr/bin/sfcbrepos [-h] [-f] [-i] [-b backendopt] [-c cimschemadir] [-s stagingdir] [-r registrationdir] </div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>-h display help message</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>-f force repository creation</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>-i do not migrate instances from previous repository (default=do migrate)</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>-X create repository in non-native format as specifed by argument</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>-s specify staging directory [/var/lib/sfcb/stage]</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>-r specify repository directory [/var/lib/sfcb/registration]</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>-c specify directory containing CIM Schema MOFs [/usr/share/mof/cim-current]</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>-t create tiny class repository by omitting inheritance information</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>-z compress repository with gzip</div>
<div><br></div><div><br></div><div>If you look in /var/lib/sfcb/registration you will see a directory structure</div><div><br></div><div><div>./root</div><div>./root/cimv2</div><div>./root/interop</div><div>./root/interop/qualifiers</div>
<div>./root/interop/sfcb_registeredprofile</div><div>./root/interop/sfcb_indicationservicecapabilities</div><div>./root/interop/classSchemas</div><div>./root/interop/sfcb_registeredprofile.idx</div><div>./root/interop/sfcb_indicationservicecapabilities.idx</div>
<div>./root/interop/qualifiers.idx</div></div><div><br></div><div>This implies that the cimv2 class is there, but empty, which agrees with the test result.  It also shows that there should be an root/interop class that works.... so testing that...</div>
<div><br></div><div><div>$ wbemcli ecn -noverify <a href="https://cim:passw0rd@10.100.0.3/root/interop">https://cim:passw0rd@10.100.0.3/root/interop</a></div><div><a href="http://10.100.0.3:5989/root/interop:CIM_IndicationFilter">10.100.0.3:5989/root/interop:CIM_IndicationFilter</a></div>
<div><a href="http://10.100.0.3:5989/root/interop:CIM_Service">10.100.0.3:5989/root/interop:CIM_Service</a></div><div><a href="http://10.100.0.3:5989/root/interop:CIM_RegisteredSubProfile">10.100.0.3:5989/root/interop:CIM_RegisteredSubProfile</a></div>
<div><a href="http://10.100.0.3:5989/root/interop:CIM_WBEMService">10.100.0.3:5989/root/interop:CIM_WBEMService</a></div><div><a href="http://10.100.0.3:5989/root/interop:CIM_AbstractIndicationSubscription">10.100.0.3:5989/root/interop:CIM_AbstractIndicationSubscription</a></div>
<div><a href="http://10.100.0.3:5989/root/interop:CIM_IndicationService">10.100.0.3:5989/root/interop:CIM_IndicationService</a></div><div><a href="http://10.100.0.3:5989/root/interop:CIM_ListenerDestinationCIMXML">10.100.0.3:5989/root/interop:CIM_ListenerDestinationCIMXML</a></div>
<div><a href="http://10.100.0.3:5989/root/interop:CIM_IndicationHandler">10.100.0.3:5989/root/interop:CIM_IndicationHandler</a></div></div><div>.....</div><div>etc</div><div><br></div><div>Doing an instance query against one of the above...</div>
<div><br></div><div><div>$ wbemcli ein -noverify <a href="https://cim:passw0rd@10.100.0.3/root/interop:CIM_Service">https://cim:passw0rd@10.100.0.3/root/interop:CIM_Service</a></div><div><a href="http://10.100.0.3:5989/root/interop:CIM_ObjectManager.CreationClassName=">10.100.0.3:5989/root/interop:CIM_ObjectManager.CreationClassName=</a>&quot;CIM_ObjectManager&quot;,SystemCreationClassName=&quot;CIM_ComputerSystem&quot;,SystemName=&quot;<a href="http://kvm1.example.com">kvm1.example.com</a>&quot;,Name=&quot;sfcb:<a href="http://NO-UUID-FILE-kvm1.example.com">NO-UUID-FILE-kvm1.example.com</a>&quot;</div>
<div><br></div></div><div>So the CIM broker appears to be working, it&#39;s just that the mof&#39;s aren&#39;t registered properly - assuming i&#39;m using the term mof correctly :-)</div><div><br></div><div>A rpm -ql libvirt-cim  reveals a bunch of stuff, specifically stuff like :</div>
<div><br></div><div><div>/usr/share/libvirt-cim/AllocationCapabilities.mof</div><div>/usr/share/libvirt-cim/AllocationCapabilities.registration</div><div>/usr/share/libvirt-cim/AppliedFilterList.mof</div></div><div>...</div>
<div><div>/usr/share/libvirt-cim/cim_schema_2.21.0Experimental-MOFs.zip</div><div>/usr/share/libvirt-cim/cimv2.21.0-cimv2_mof</div><div>/usr/share/libvirt-cim/cimv2.21.0-interop_mof</div><div>/usr/share/libvirt-cim/install_base_schema.sh</div>
<div>/usr/share/libvirt-cim/provider-register.sh</div></div><div><br></div><div>The provider-register.sh is the important bit,  it should be passed parms to get it to configure for  sfcb - the problem is in this script as it&#39;s not doing what it should be doing - manually running it doesn&#39;t work and you get errors like :</div>
<div><br></div><div><div># ./provider-register.sh -v -t sfcb -r KVMRedirectionSAP.registration -m KVMRedirectionSAP.mof </div><div>Staging provider registration.</div><div>cp: cannot stat `/var/tmp/KVMRedirectionSAP.reg&#39;: No such file or directory</div>
<div>Error: could not copy registration files </div><div>Failed to stage provider registration.</div></div><div><br></div><div>However,  if I try using the same script from another package that supplies mof&#39;s - eg sblim-cmpi-base  then it mostly works.... (ie replace the libvirt-cim script with the one from sblim-cmpi-base)</div>
<div><br></div><div><div># ./provider-register.sh -v -t sfcb -r KVMRedirectionSAP.registration -m KVMRedirectionSAP.mof </div><div>Registering class Xen_KVMRedirectionSAP</div><div>Registering class KVM_KVMRedirectionSAP</div>
<div>Registering class LXC_KVMRedirectionSAP</div><div>Staging provider registration.</div><div>Shutting down sfcb.</div><div>Stopping sblim-sfcb (via systemctl):                       [  OK  ]</div><div>Timed out waiting for sfcb shutdown...</div>
<div>Please stop sfcb manually and rebuild the repository using sfcbrepos.</div><div>[root@ovirt-f16 libvirt-cim]# service sfcb stop</div><div>Redirecting to /bin/systemctl  stop sfcb.service</div><div>[root@ovirt-f16 libvirt-cim]# sfcbrepos </div>
<div>Setting up sfcb Repository, Class, and Provider Registration</div><div>Your old repository and registration data will be deleted</div><div>(static instances will be saved)</div><div>Do you want to proceed? (type yes to continue)</div>
<div>yes</div></div><div><br></div><div><br></div><div>and testing   (note:  I did this on a F16 system that exhibits the same problem rather than on the node itself).</div><div><br></div><div><div>$ wbemcli ecn -noverify <a href="https://root:passw0rd@192.168.1.63/root/cimv2">https://root:passw0rd@192.168.1.63/root/cimv2</a> |egrep KVM</div>
<div><a href="http://192.168.1.63:5989/root/cimv2:KVM_KVMRedirectionSAP">192.168.1.63:5989/root/cimv2:KVM_KVMRedirectionSAP</a></div><div><a href="http://192.168.1.63:5989/root/cimv2:Xen_KVMRedirectionSAP">192.168.1.63:5989/root/cimv2:Xen_KVMRedirectionSAP</a></div>
<div><a href="http://192.168.1.63:5989/root/cimv2:CIM_KVMRedirectionSAP">192.168.1.63:5989/root/cimv2:CIM_KVMRedirectionSAP</a></div><div><a href="http://192.168.1.63:5989/root/cimv2:LXC_KVMRedirectionSAP">192.168.1.63:5989/root/cimv2:LXC_KVMRedirectionSAP</a></div>
</div><div><br></div><div>That&#39;s as far as I got as I need to do some other stuff, but the above may help and I may get some more time tomorrow to see if I can figure  what the intention of the libvirt-cim rpm really is.</div>
<div><br></div><div>Tks</div><div>Geoff</div></div></div>