Mailing List Archive

New metrics reqd
Ewan,

Thanks for the clarification. The create() and destroy() methods are still around on the host and host_cpu classes.

I would like to know if XenSource can provide the following new metrics in the XML-RPC API:
  1. For a physical host with multiple CPUs, there is no way to get the average CPU utilization of all the CPUs combined. Is there a way to compute this metric from the individual physical CPU utilizations that the API provides?
  2. Same thing for a virtual machine with multiple VCPUs. We would like to have a metric that gives the average CPU utilization of all the virtual CPUs combined. Is there a way to compute this metric from the individual VCPU utilizations that the API provides?
  3. There are no metrics for network collisions and errors occuring on the physical NICs.
Please let me know if XenSource can add these metrics and how much time it will take.

Can you please explain what is the difference between these 2 pairs of VIF metrics. To me they both seem similar if not identical:
  • network read kbs (Incoming network bandwidth)
  • IO bandwidth/incoming kbs (Read bandwidth (Kb/s))
and
  • network write kbs (Outgoing network bandwidth)
  • IO bandwidth/outgoing kbs (Write bandwidth (Kb/s))
Class VBD has 2 metrics: IO bandwidth/incoming kbs and IO bandwidth/outgoing kbs which are computed & read only. The term bandwidth with regards to a disk is very confusing. Do these metrics represent the amount of data "actually" read and "actually" written or do they represent the amount of data that "can" be read and "can" be written to the disk? If the answer is data that "can" be read or written, then can we get new metrics representing the actual read rate and the write rate of a VM with reference to a VBD?

Finally, which feature of a host_cpu instance tells us that a CPU is hardware virtualization enabled (eg. Intel VT or Pacifica)?

Thanks a lot.


Ewan Mellor wrote:
On Tue, Mar 06, 2007 at 08:06:58PM +0530, Hetal Badheka wrote:
Hello, Does a constructor on class VM just create an instance of the class in Xen's memory or does it actually provision a new VM and conversely, what does a destructor do, delete the VM class instance from memory or destroy a virtual machine?
Think of it like a database record. VM.create creates a record, and VM.destroy deletes that record again. (Xend doesn't actually use a DBMS, but that's the mental model you need). A running domain is created and destroyed using VM.start, VM.clean_shutdown, and so on. VM.create does not imply that a domain is created to match -- you are merely creating the record corresponding to a non-running VM.
The class "host" and "host_cpu" also have create and destroy methods on them and since you can't create and destroy a physical host or a physical cpu, I am guessing that the answer to my question above for VMs is that the create and destroy methods just instantiate and destroy a class instance and do not actually cause the provisioning and decommissioning of a virtual machine.
These methods should never have been added, and will be removed immediately if they're still there. A host and some host_cpu records are created implicitly by Xend at startup. HTH, Ewan.