On Fri, Mar 08, 2013 at 10:21:27AM +0800, Mark Wu wrote:
On 03/07/2013 07:25 PM, Vinzenz Feenstra wrote:
>Please find the prettier version on the wiki:
http://www.ovirt.org/Proposal_VDSM_-_Engine_Data_Statistics_Retrieval
>
>
> Proposal VDSM - Engine Data Statistics Retrieval
>
>
> VDSM <=> Engine data retrieval optimization
>
>
> Motivation:
>
>Currently the RHEVM engine is polling the a lot of data from VDSM
>every 15 seconds. This should be optimized and the amount of data
>requested should be more specific.
>
If the data size really matters, we could also consider to pack the
information into binary. I am not sure if it's suitable in the
transmission of XMLRPC.
I do not think we should embed binary in XMLRPC. I'd consider
compressing the data at the transport layer - but that would be a
completely deferent feature.
>
>For each VM the data currently contains much more information than
>actually needed which blows up the size of the XML content quite
>big. We could optimize this by splitting the reply on the
>getVmStats based on the request of the engine into sections. For
>this reason Omer Frenkel and me have split up the data into parts
>based on their usage.
>
>This data can and usually does change during the lifetime of the VM.
>
>
> Rarely Changed:
>
>This data is change not very frequent and it should be enough to
>update this only once in a while. Most commonly this data changes
>after changes made in the UI or after a migration of the VM to
>another Host.
>
> *Status* = Running
> *acpiEnable* = true
> *vmType* = kvm
> *guestName* = W864GUESTAGENTT
> *displayType* = qxl
> *guestOs* = Win 8
> *kvmEnable* = true #/*this should be constant and never changed*/
Then it should be removed from vm stats. In my opinion, any
information belongs to vm's static configuration, it shouldn't be
included in vm stats. For the fields above, except 'Status', engine
can get the information without querying the vdsm host. It could not
be changed by vdsm itself, right?
actually, guestName and guestOs may change - for example by installing
Linux on that Windows guest.