Re: open pegasus 2.12 & SCVMM integration
Ben Wang <[email protected]> Wed, 27 Feb 2013 20:30:16 +0000
| Newsgroups | gmane.network.open-pegasus.general |
|---|---|
| Message-ID | <[email protected]> |
Devchandra, Thanks for ur reply. 1. The query came from scvmm, I am not sure if there are options for me to explore. 2. Having said 1, do u think its a good idea to change env_var_linux.status to set pegasus_enable_cql to true so that cql is enabled in my final rpm? I thought cql is fully supported in version 2.12? Correct me if I am wrong. Sent from my iPhone On Feb 27, 2013, at 3:13 PM, "Devchandra L Meetei" <[email protected]<mailto:[email protected]>> wrote: There seems to be some mis understanding on what I was trying to say 1) interop is preferred way, That was my point, I also went on to say that root/interop will be deprecated by the CIM specification. 2) Please use WQL, This was my first response as you have rightly pointed out in your first post that DMTF::CQL is not supported. And oh yes, CQL is not enabled for rpm build. It will not be enabled even if you do export in your set up. Reason is rpm build picks up its env from env_var_Linux.status where it is set PEGASUS_ENABLE_CQL=false, You can see this file within $PEGASUS_ROOT or on web at http://cvs.opengroup.org/cgi-bin/viewcvs.cgi/pegasus/env_var_Linux.status On Thu, Feb 28, 2013 at 12:43 AM, Ben Wang <[email protected]<mailto:[email protected]>> wrote: LOOP in everybody. ----- Devchandra, I attended in SNIA plugfest 12, as far as I know, interop namespace should not give me any problem. I followed Rohini`s suggestion by setting traceLevel = 4, to my surprise, this is what I found: var/lib/Pegasus/cache/trace/cimserver.trc 1361980206s-312977us: Xml [14222:1086200128] IndicationService.cpp(4803): CIM_ERR_NOT_SUPPORTED: DMTF:CQL Here is the source code: IndicationService.cpp(4803) #ifndef PEGASUS_ENABLE_CQL // Special code to block CQL, if CQL is disabled if ((queryLanguage == "CIM:CQL") || (queryLanguage == "DMTF:CQL")) { // CQL is not allowed in this case PEG_METHOD_EXIT(); throw PEGASUS_CIM_EXCEPTION( CIM_ERR_NOT_SUPPORTED, queryLanguage); } #endif Apparaently, PEGASUS_EABLE_CQL has not been defined. I am 100% sure that PEGASUS_EABLE_CQL has been set in my environment variable on my build machine. Here is the evidence, [root@SMISDev SOURCES]# echo $PEGASUS_ENABLE_CQL True For some reason, PEGASUS_ENABLE_CQL did not have effect when I built Pegasus RPM with rpmbuild -ba tog-pegasus.spec I will try to explore more options. _____________________________________ Ben Wang Software Engineer FalconStor Software, Inc. (NASDAQ: FALC) 2 Huntington Quadrangle, Suite 2S01 Melville, NY 11747 O: 1.631.773.4489 M: 1.631.988.2209 [email protected]<mailto:[email protected]> Defining Data Protection, Again™ <image001.gif><http://www.falconstor.com/news-and-events/press-center/press-releases-top-story/2256-falconstor-recovertrac-2-5-selected-for-a-best-of-vmworld-2012-gold-award> Follow us: <image002.gif><http://www.falconstor.com/community/blogs> <image003.png><http://twitter.com/FalconStor> <image004.png><http://www.linkedin.com/groups?mostPopular=&gid=776377> <image005.png><http://www.youtube.com/user/FalconStor> <image006.png><http://www.flickr.com/photos/falconstor/> This email and any attachment(s) is for the intended recipient only and may be confidential. If you are not the intended recipient, please delete this e-mail and advise the sender immediately. Unauthorized use or distribution is prohibited. From: Devchandra L Meetei [mailto:[email protected]<mailto:[email protected]>] Sent: Wednesday, February 27, 2013 12:44 PM To: Deshpande, Rohini (IESL) Cc: Paul Robert Marino; Ben Wang; [email protected]<mailto:[email protected]>; [email protected]<mailto:[email protected]> Subject: Re: open pegasus 2.12 & SCVMM integration As Rohini said, In fact the preferred way is interop alone, Even root/interop will be deprecated. If Ben sees his first post, The error msg was clear enough as CQL On Wed, Feb 27, 2013 at 10:59 PM, Deshpande, Rohini (IESL) <[email protected]<mailto:[email protected]>> wrote: Oh, the namespace in the xml is not the problem. Open Pegasus by default uses root/PG_InterOp (historical reasons). But “interop” is supported from 2.12, so using “interop” is not a problem in Open Pegasus. The xml below was just an example. I guess MS uses root/interop. You could try using root/interop if required by setting the “PEGASUS_INTEROP_NAMESPACE” to root/interop. Some CQL related problems in Open Pegasus are listed in https://wiki.opengroup.org/pegasus-wiki/doku.php?id=dev:workgroups:pegasus_26_snia_requirements_pep&s[]=cql<https://wiki.opengroup.org/pegasus-wiki/doku.php?id=dev:workgroups:pegasus_26_snia_requirements_pep&s%5b%5d=cql> under CQL functionality. The easiest way to get some clue on this is to enables traces. Regards, Rohini Deshpande From: Paul Robert Marino [mailto:[email protected]<mailto:[email protected]>] Sent: Wednesday, February 27, 2013 9:52 PM To: Ben Wang Cc: Deshpande, Rohini (IESL); [email protected]<mailto:[email protected]>; [email protected]<mailto:[email protected]> Subject: Re: open pegasus 2.12 & SCVMM integration Ben this is what i was getting at http://msdn.microsoft.com/en-us/library/windows/desktop/ee309362%28v=vs.85%29.aspx Its called the interop namespace but its actual name is usually root\interop which is the standard for most WBEM implementations. There are a few exceceptions such as older versions of openpegasus call it root\PG_Interop but in general root\interop is the standard for nearly every WBEM server. That being said just because it should be registered in root\interop doesn't mean it should be used in the root\interop namespace.In addition I've never seen a single work namespace before and while I dont think ive seen any thing in the standard that explicitly forbids it it is implied in the DMTF documents that you shouldn't do it, so i don't know how well WBEM servers or even the clients would deal with it. so If I'm right " <LOCALNAMESPACEPATH> <NAMESPACE NAME="interop" /> </LOCALNAMESPACEPATH> " should really be " <LOCALNAMESPACEPATH> <NAMESPACE NAME="root" /> <NAMESPACE NAME="interop" /> </LOCALNAMESPACEPATH> " On Wed, Feb 27, 2013 at 10:28 AM, Ben Wang <[email protected]<mailto:[email protected]>> wrote: Paul, According to MS spec, they expect all standalone providers use interop namespace, indications are only supported in this namespace. I found an interesting discussion thread in Google Pegasus group. I have not verified the validity of his opinions, it was published on 6/8/09. It may NOT represent the latest Pegasus status. “ here should not be differences in the CIMOM to support per-defined vs client-defined indication filters, but the Pegasus CIMOM has a variety of quirks that causes it to handle indications differently depending on build options and workarounds to Pegasus bugs. 1) unless you specifically enable CQL support, Pegasus CIMOM will not handle CQL indications ( I don't recall the name of the build option) (I highly doubt) 2) Even with the CQL build options enabled, Pegasus CIMOM does not support indication filters with the ANY keyword (this is required by the CQL standard for InstModification filters with a comparison of an array property and a specific value) 3) if you build Pegasus CIMOM with PEGASUS_SNIA_EXTENSIONS enabled, it will tolerate the ISA keyword SMI-S uses in some WQL InstModification indication filters 4) Pegasus CIMOM always rejects client-defined (CreateInstance) for WQL IndicationFilters with a filter containing a period (e.g., SourceInstance.OperationalStatus), though it does allow these to be pre-defined. 2) and 4) are clearly bugs. Apparently some SMI-S vendors have updated their implementations ofd Pegasus to work around the bugs. ” I will do more experiments and hopefully find a way out. _____________________________________ Ben Wang Software Engineer FalconStor Software, Inc. (NASDAQ: FALC) 2 Huntington Quadrangle, Suite 2S01 Melville, NY 11747 O: 1.631.773.4489<tel:1.631.773.4489> M: 1.631.988.2209<tel:1.631.988.2209> [email protected]<mailto:[email protected]> Defining Data Protection, Again™ <image001.gif><http://www.falconstor.com/news-and-events/press-center/press-releases-top-story/2256-falconstor-recovertrac-2-5-selected-for-a-best-of-vmworld-2012-gold-award> Follow us: <image002.gif><http://www.falconstor.com/community/blogs><image003.png><http://twitter.com/FalconStor> <image004.png><http://www.linkedin.com/groups?mostPopular=&gid=776377> <image005.png><http://www.youtube.com/user/FalconStor> <image006.png><http://www.flickr.com/photos/falconstor/> This email and any attachment(s) is for the intended recipient only and may be confidential. If you are not the intended recipient, please delete this e-mail and advise the sender immediately. Unauthorized use or distribution is prohibited. From: Paul Robert Marino [mailto:[email protected]<mailto:[email protected]>] Sent: Wednesday, February 27, 2013 8:24 AM To: Deshpande, Rohini (IESL); Ben Wang; [email protected]<mailto:[email protected]> Cc: [email protected]<mailto:[email protected]> Subject: RE: open pegasus 2.12 & SCVMM integration The namespace you specified is interop are you sure you didn't want root/interop -- Sent from my HP Pre3 ________________________________ On Feb 27, 2013 1:00 AM, Deshpande, Rohini (IESL) <[email protected]<mailto:[email protected]>> wrote: Hi Ben Wang, I’m not sure what is wrong with your request, but a similar request went through when I tested. <?xml version="1.0" encoding="utf-8" ?> <CIM CIMVERSION="2.0" DTDVERSION="2.0"> <MESSAGE ID="1000" PROTOCOLVERSION="1.0"> <SIMPLEREQ> <IMETHODCALL NAME="CreateInstance"> <LOCALNAMESPACEPATH> <NAMESPACE NAME="test"/> <NAMESPACE NAME="testprovider"/> </LOCALNAMESPACEPATH> <IPARAMVALUE NAME="NewInstance"> <INSTANCE CLASSNAME="CIM_IndicationFilter" > <PROPERTY NAME="Name" TYPE="string"> <VALUE>filter2</VALUE> </PROPERTY> <PROPERTY NAME="Query" TYPE="string"> <VALUE>SELECT * from IndicationStressTestClass</VALUE> </PROPERTY> <PROPERTY NAME="QueryLanguage" TYPE="string"> <VALUE>DMTF:CQL</VALUE> </PROPERTY> <PROPERTY NAME="SourceNamespace" TYPE="string"> <VALUE>test/testprovider</VALUE> </PROPERTY> </INSTANCE> </IPARAMVALUE> </IMETHODCALL> </SIMPLEREQ> </MESSAGE> </CIM> Maybe you can try the above request. You could also try using the cimsub command with “-c” for creating the filter. You can enable cimserver tracing to know why it is failing. “cimserver traceLevel=4 traceComponents=All” (for tracing all components at level 4). Regards, Rohini Deshpande Software Engineer/OpenPegasus Committer Hewlett Packard From: Ben Wang [mailto:[email protected]] Sent: Wednesday, February 27, 2013 4:24 AM To: [email protected]<mailto:[email protected]> Cc: [email protected]<mailto:[email protected]> Subject: open pegasus 2.12 & SCVMM integration Hi all, I am using Open Pegasus 2.12 + CIMPLE provider to integration with MS SCVMM 2012. According to MS spec, life cycle indication will be used to sync client cache with provider. SCVMM will try to register client specific filters during its discovery stage. However, my provider fails to respond to the registration request, here is snippet of xml dump … <?xml version="1.0" encoding="UTF-8"?> <CIM CIMVERSION="2.0" DTDVERSION="2.0"> <MESSAGE ID="11" PROTOCOLVERSION="1.0"> <SIMPLEREQ> <IMETHODCALL NAME="CreateInstance"> <LOCALNAMESPACEPATH> <NAMESPACE NAME="interop" /> </LOCALNAMESPACEPATH> <IPARAMVALUE NAME="NewInstance"> <INSTANCE CLASSNAME="CIM_IndicationFilter"> <PROPERTY NAME="Name" TYPE="string"> <VALUE>54479A7D15EC4D4F923090046D0D9E91:CIM_InstDeletion:CIM_ComputerSystem</VALUE> </PROPERTY> <PROPERTY NAME="Caption" TYPE="string"> <VALUE>Microsoft Storage Service Subscription</VALUE> </PROPERTY> <PROPERTY NAME="QueryLanguage" TYPE="string"> <VALUE>DMTF:CQL</VALUE> </PROPERTY> <PROPERTY NAME="Query" TYPE="string"> <VALUE>SELECT * FROM CIM_InstDeletion WHERE SourceInstance ISA CIM_ComputerSystem</VALUE> </PROPERTY> <PROPERTY NAME="SourceNamespace" TYPE="string"> <VALUE>interop</VALUE> </PROPERTY> </INSTANCE> </IPARAMVALUE> </IMETHODCALL> </SIMPLEREQ> </MESSAGE> </CIM> 02/26/13 16:39:29 INFORMATION: <?xml version="1.0" encoding="utf-8" ?> <CIM CIMVERSION="2.0" DTDVERSION="2.0"> <MESSAGE ID="11" PROTOCOLVERSION="1.0"> <SIMPLERSP> <IMETHODRESPONSE NAME="CreateInstance"> <ERROR CODE="7" DESCRIPTION="CIM_ERR_NOT_SUPPORTED: DMTF:CQL"/></IMETHODRESPONSE> </SIMPLERSP> </MESSAGE> </CIM> … I do have some debug messages in my CIM_IndicationFilter and CIM_InstDeletion provider, but those message never get printed out. It seems to me that Pegasus responds to the client registration request without asking my provider. I am still exploring the right way to implement an indication provider, so I appreciate if someone can cast light on my issue even if it sounds a little dumb:) PS: I did have PEGASUS_ENABLE_CQL=true when I compiled Open Pegasus. Could somebody cast some light on my issue? Thank you very much. _____________________________________ Ben Wang Software Engineer FalconStor Software, Inc. (NASDAQ: FALC) 2 Huntington Quadrangle, Suite 2S01 Melville, NY 11747 O: 1.631.773.4489<tel:1.631.773.4489> M: 1.631.988.2209<tel:1.631.988.2209> [email protected]<mailto:[email protected]> Defining Data Protection, Again™ <image001.gif><http://www.falconstor.com/news-and-events/press-center/press-releases-top-story/2256-falconstor-recovertrac-2-5-selected-for-a-best-of-vmworld-2012-gold-award> Follow us: <image002.gif><http://www.falconstor.com/community/blogs><image003.png><http://twitter.com/FalconStor> <image004.png><http://www.linkedin.com/groups?mostPopular=&gid=776377> <image005.png><http://www.youtube.com/user/FalconStor> <image006.png><http://www.flickr.com/photos/falconstor/> This email and any attachment(s) is for the intended recipient only and may be confidential. If you are not the intended recipient, please delete this e-mail and advise the sender immediately. Unauthorized use or distribution is prohibited. -- Warm Regards --Dev OpenPegasus Developer "It's Always better to try and fail instead of not doing/trying anything" -- Warm Regards --Dev OpenPegasus Developer "It's Always better to try and fail instead of not doing/trying anything"
image006.png
(image/png, 2.1 KB) - not displayed
image004.png
(image/png, 1.7 KB) - not displayed
image003.png
(image/png, 2.3 KB) - not displayed
image001.gif
(image/gif, 17.8 KB) - not displayed
image002.gif
(image/gif, 1 KB) - not displayed
image005.png
(image/png, 2.2 KB) - not displayed