Resource Management

Resource Management

What are shares, reservation, and limit?

Shares specify the relative priority or importance of a virtual machine. Each virtual machine is entitled to resources in proportion to its specified shares, bounded by its reservation and limit.

Reservation specifies the guaranteed reservation for a virtual machine. The server allows you to power on a virtual machine only if the CPU and memory reservation are available. The reservation is expressed in concrete units (MHz or MB). When resources are not used, the VMware ESX host makes them available to other virtual machines.

Limit specifies the upper limit for CPU or memory for a virtual machine. A server can allocate more than the reservation to a virtual machine, but never allocates more than the limit. The limit is expressed in concrete units (MHz or MB).

For more information about shares, reservation, and limit, see VMware Resource Management Guide.

What is the difference between VirtualMachine.runtime.maxCpuUsage and VirtualMachine.summary.quickStats.overallCpuUsage?

VirtualMachine.runtime.maxCpuUsage is a property of the virtual machine, indicating the limit value. This value is always equal to the limit value set for that virtual machine.

VirtualMachine.summary.quickStats.overallCpuUsage gives basic utilization statistics. Obtain additional fine-grained information by using the performance counters that are available for host and virtual machine.

For more information about performance counters, see Appendix B in the VMware Infrastructure SDK Programming Guide and the SDK API Reference Guide.

When a virtual machine’s CPU limit is 2GHz and reservation is 1GHz, what is the range of CPU utilization?

Between 0 and 2. CPU limit represents the cap of the CPU time used by the virtual machine, and hence the upper value cannot be more than 2. CPU reservation represents the guaranteed CPU time when the virtual machine needs it. If it is not using the reserved CPU time, the unused CPU time can be used by other virtual machines, and hence the lower value can be as low as 0.

Can virtual machines start if the sum of the reservation is greater than the available resources?

A virtual machine will only start if its reservation can be satisfied. So, in this case, all the virtual machines whose reservation can be met start.

Are the limit, reservation, and shares interpreted similarly for memory utilization?

Yes.

Can a virtual machine use two or more physical processors?

Yes. By default VMware ESX takes care of this internally. However, you can configure the CPU affinity to assign a virtual machine to one or more specific physical processors. For information on how to configure this in VI Client, please refer to VMware document “Resource Management Guide”, chapter “Advanced Resource Management”, section “CPU Virtualization”.

In which order can virtual disks be created?

Virtual disks can always be created in sequence.

Why does PermGen/Memory Size sometimes increase by 10-20MB when using Java?

This is a known JDK and Axis issue.

Does CIM support performance counters for network, CPU, memory, and so on?

CIM does not offer counters. VI API offers counters for CPU, ResCpu, Memory, Network, Disk, System, and ClusterServices.

Why does ReconfigureVM_Task take so long to execute?

Performance of ReconfigureVM_Task is depending on the inventory or the rate of reconfiguration of virtual machines, as follows:

  • *If a customer has a large inventory, recomputing the resource pool decreases the performance of ReconfigureVM_Task.

  • *If the rate of reconfiguration of a virtual machine is high (around 1 configuration per second) it creates a lot of queuing in host syncs and taskinfolistener waiting becomes longer, causing the performance of ReconfigureVM_Task to decrease.

Can vms cpu/memory shares be changed?

Yes, they can be changed by using ReconfigureVM_Task. Do not make frequent changes to a virtual machine’s cpu/memory shares because these changes are costly and result in changes to the resource management policies that, in turn, result in DRS invocation and redistribution of adjusted resource settings to all the hosts in the cluster. Share changes are expected to occur infrequently (less than 15-minute intervals) because they are policies for the relative resource priority of a virtual machine.

How can the DRS policy be recalculated within the default interval?

You cannot prevent DRS from being called when resource policies change except by disabling DRS on the cluster. However, disabling DRS on the cluster causes you to lose your RP hierarchy.

Why does the config.hardware.device property show different values on VMware VirtualCenter and VMware ESX after a snapshot is taken?

This is a known issue and fixed in VMware VirtualCenter 2.0.2.

Sample code for reference.

How can the volumes in disk files be retrieved?

This information cannot be retrieved directly from the APIs. Use MSFT tools to get the volume information.

What are CPU counters?

Properties that provide the performance of the CPU in statistics.

How can CPU counters be retrieved?

ManagedObject PerformanceManager should refer in data object PerfQuerySpec with the description of CPU.

How can all CPU counters for all instances of a CPU be retrieved?

All the cpu counters do not show the individual statistics only. Some counters show the aggregated statistics value for all the CPU instances like CPU Usage in MHz (Min/Max/Average Rate), Reserved capacity.

Sample code for reference.

Version history
Revision #:
1 of 1
Last update:
‎08-22-2008 12:47 PM
Updated by: