05.08.2013 Views

[PDF] Parallels Server 5 Bare Metal

[PDF] Parallels Server 5 Bare Metal

[PDF] Parallels Server 5 Bare Metal

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Managing Resources<br />

• Guarantee. The amount of memory a virtual machine is guaranteed to get on demand. If the<br />

virtual machine requests more memory than is guaranteed, the memory allocation may fail (for<br />

example, if there is no free memory on the <strong>Parallels</strong> server at the moment). Moreover, if the<br />

guaranteed amount of memory of all virtual machines running on the server plus their overhead<br />

exceeds the reserved limit, you will not be able to start another virtual machine. By default, the<br />

guaranteed memory is calculated on the basis of RAM and video memory assigned to a virtual<br />

machine and is about a half of its total memory.<br />

Note: The overhead of a virtual machine depends on its configuration. For example, the overhead of a<br />

virtual machine that has 1024 MB of RAM, 2 CPUs, 256 MB of video memory, a network adapter, a<br />

sound card, and a USB controller and runs on modern hardware does not usually exceed 35-40 MB. To<br />

check the overhead of a running virtual machine, open the /proc/parallels/vm/VM_ID/meminfo<br />

file and look for the value of the Unreclaimable parameter. Keep in mind, however, that this value<br />

may change over time.<br />

• Limit. The maximum amount of memory a virtual machine is allowed to consume. The virtual<br />

machine cannot exceed this limit even if the <strong>Parallels</strong> server has a lot of free memory and the<br />

virtual machine requires this memory. By default, no limit is set for all newly created virtual<br />

machines, and any virtual machine may consume all free memory on the server.<br />

• Priority. The priority (from 1 to 100) that defines which virtual machine will get memory first. The<br />

higher the priority of a virtual machine, the more chances it has to get memory when the<br />

<strong>Parallels</strong> server has insufficient memory resources. By default, the priority is set to 50.<br />

• Ballooning. The maximum amount of memory the balloon driver in a virtual machine may<br />

allocate for its needs. Memory ballooning is a technique that allows your system to reclaim<br />

memory from virtual machines. To do this, a special balloon driver is loaded into each running<br />

virtual machine. When the system requires free memory but does not have any, it sends a<br />

command to the balloon driver in the virtual machine to increase its size. The balloon driver<br />

inflates by allocating the requested amount of memory in the virtual machine and then gives this<br />

memory to the system.<br />

By default, the balloon driver can allocate up to 60% of RAM set for a virtual machine. For<br />

example, if the amount of RAM for a virtual machine is set to 2 GB, the balloon driver can<br />

allocate the maximum of 1.2 GB of memory.<br />

To configure these quota control parameters for a specific virtual machine, you can use the -memquota<br />

parameter of the pctl set command. For example, the following command sets for<br />

the MyVM virtual machine the memory guarantee to 512 MB, the limit to 2 GB, the priority to 70,<br />

and the ballooning limit to 50% of RAM:<br />

# pctl set MyVM --memquota 512:2048:70:50<br />

Disable the memquota auto calculation.<br />

Set the memquota_min parameter to 512Mb.<br />

Set the memquota_max parameter to 1024Mb.<br />

Set the memquota_prio parameter to 70.<br />

Set the memquota_maxballoon parameter to 50.<br />

The VM has been successfully configured.<br />

To check that all parameters have been successfully set, use this command:<br />

# pctl list -i MyVM | grep memory_quota<br />

memory_quota min=512Mb max=2048Mb priority=70 maxballoon=50%<br />

147

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!