| >I think the Antecedent property in Xen_HostedComputerSystem should >remain of type Linux_ComputerSystem.  Something needs to represent /
 >implement the hosting computer system and we shouldn't use
 >Xen_ComputerSystem provider since it represents the virtual system.
 >Perhaps we can add any virtualization specific requirements to the
 >existing Linux_ComputerSystem implementation.  Another possibility is
 >creating a new class Xen_HostingComputer system, in which case
 >Xen_ComputerSystem should be renamed to Xen_HostedComputerSystem.
 
 The DMTF model has all the lifecycle operations handled by the VirtualSystemManagementService class,
 not the individual virtual ComputerSystem class (although there's no reason the latter cannot be added as a hypervisor specific extension...).
 In terms of what/how to represent the hosting ComputerSystem, in terms of being DMTF comformant so long as the appropraite
 associations are wired correctly - eg HostingComputerSystem - we can pretty much do as we like. The 'problem' (with the model) is that if a
 client just goes in and enumerates "CIM_ComputerSystem" they will (indeed must!) get not only the host computer system but also all DomU's too.
 
 Basically, as defined, the System Virtualization model requires a client (either real CIM client or our upcall) to enumerate CIM_ComputerSystem and then
 filter out all virtualized system, either by their class (which in the upcall case we know), or by a special property tag (eg a "IsVirtualized" property added to
 Xen_ComputerSystem, or by looking at which end of the HostedDependency association the instance occurs).
 
 If we know precisely what host instrumentation will be implemented in the resident Xen system (eg distro specific) then putting a specific CIM_ComputerSystem
 subclass as the target (eg IBM Director's IBMPSG_ComputerSystem, SBLIM's Linux_ComputerSystem, Xen_HostedComputerSystem, whatever) is OK, and simple
 - that's exactly what I did for the IBM LTC internal providers. But in terms of cross-platform support and generality, if we want to exploit an upcall to populate the Xen_HostedComputerSystem association (rather than manually building it from scratch) then I think the enumerateall-and-filter approach will require the least rework in the long run.
 
 
 >We should support the intrinsic RequestStateChange() method on
 >Xen_ComputerSystem and remove the *VirtualSystem() methods currently
 >defined there.  The extrinsic methods could simply be mapped to
 >RequestStateChange().  Looking at the latest System Virtualization
 >Profile, the only methods now supported on
 >VirtualSystemManagementService are CloneVirtualSystem(),
 >DefineVirtualSystem(), DestroyVirtualSystem(),
 >DestroyVirtualSystemConfiguration(), ModifyVirtualSystem(), and
 >PlanVirtualSystem().
 
 Correct. Most of the extrinsic lifecycle methods defined in Xen_ComputerSystem can for the most part just be reworked into a collected RequestStateChange() method instead. For simplicitly and to avoid unnecessary confusion,
 I'd recommend removing the old extrinisic methods, even though iti s technically OK for them to be in there as a custom Xen extension...
 
 
 >BTW, Xen_VirtualizationManagementService should be
 >renamed to Xen_VirtualSystemManagementService.
 
 yup.
 
 
 >The VirtualSystemManagementService methods such as destroy, modify, and
 >clone will receive a reference to Xen_ComputerSystem instance.  The
 >service can then perform the requested operation via libvirt, extracting
 >any info it needs from the instance and its associated objects.
 
 Exacltly. The target DomU info needed by libvirt can be obtained from the key properties in the Xen_ComputerSystem reference/objectpath
 that is passed in, mostly likely Name. Failing that, the Xen_VirtualSystemManagementService provider can do a GetInstance() call
 on the reference to obtain all the properties of the DomU (eg to get the Id). It rather depends on what we define the key Name property string to
 contain.
 
 - Gareth
 
 Dr. Gareth S. Bestor
 IBM Linux Technology Center
 M/S DES2-01
 15300 SW Koll Parkway, Beaverton, OR 97006
 503-578-3186, T/L 775-3186, Fax 503-578-3186
 
 
  Jim Fehlig <jfehlig@xxxxxxxxxx> 
 
 
 
 Subrahmanian, Raj wrote:
 
 > This (minor) patch fixes the following
 > - XenComputerSystem derives from CIM_VirtualComputerSystem
 > - Some occurences of Linux_XXXX occurrences changed to CIM_XXXX
 > occurrences.
 
 
 I think the Antecedent property in Xen_HostedComputerSystem should
 remain of type Linux_ComputerSystem.  Something needs to represent /
 implement the hosting computer system and we shouldn't use
 Xen_ComputerSystem provider since it represents the virtual system.
 Perhaps we can add any virtualization specific requirements to the
 existing Linux_ComputerSystem implementation.  Another possibility is
 creating a new class Xen_HostingComputer system, in which case
 Xen_ComputerSystem should be renamed to Xen_HostedComputerSystem.
 
 >
 > After seeing some of the code and browsing through the documentation,
 > I have a few questions. I have not yet had the opportunity to
 > thoroughly study the System Virtualization Profile Document, so please
 > bear with me if I am asking something that's already answered elsewhere.
 > - Is our goal to have our provider ultimately follow the model
 > described in the DMTF System Virtualization Profile Document?
 
 
 Yes.
 
 > - I am having trouble imagining how the whole thing is going to be
 > orchestrated, for instance, I can see how the Xen_ComputerSystem
 > provider can control the lifecycle of its VM, but how does the
 > VirtualSystemManagementService talk to it or tell it what to do?
 
 
 We should support the intrinsic RequestStateChange() method on
 Xen_ComputerSystem and remove the *VirtualSystem() methods currently
 defined there.  The extrinsic methods could simply be mapped to
 RequestStateChange().  Looking at the latest System Virtualization
 Profile, the only methods now supported on
 VirtualSystemManagementService are CloneVirtualSystem(),
 DefineVirtualSystem(), DestroyVirtualSystem(),
 DestroyVirtualSystemConfiguration(), ModifyVirtualSystem(), and
 PlanVirtualSystem().  BTW, Xen_VirtualizationManagementService should be
 renamed to Xen_VirtualSystemManagementService.
 
 The VirtualSystemManagementService methods such as destroy, modify, and
 clone will receive a reference to Xen_ComputerSystem instance.  The
 service can then perform the requested operation via libvirt, extracting
 any info it needs from the instance and its associated objects.
 
 Regards,
 Jim
 
 
 _______________________________________________
 Xen-cim mailing list
 Xen-cim@xxxxxxxxxxxxxxxxxxx
 http://lists.xensource.com/xen-cim
 
 
 _______________________________________________
Xen-cim mailing list
Xen-cim@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-cim
 |