Advanced configuration of VMs on ESXi
You can easily perform the following configuration on the platform using the UI or ApI
- vCPU hotplug: enable hot-add disks for the VM template
- use VMXNET3: select the NIC driver for the template
- configure dedicated CPU resources
- configure dedicated memory resources
- Use Eagerzeroedthick virtual disks for data and log disk: edit the disks and select the EAGER_ZERO_THICK allocation type
For more details, see Modify a VM Template
This page describes how to set further advanced configuration for VMs on ESXi. An example configuration could be as follows.
numa.vcpu.preferHT = TRUE (no default) CPU/MMU Virtualization Option = automatic halt_in_monitor = TRUE (no default) idleLoopSpinBeforeHalt = TRUE (no default) sched.cpu.latencySensitivity = normal (default) tools.guestlib.enableHostInfo = FALSE (default) sched.swap.vmxswapenabled = TRUE (no default) hw version=14 (the newest version will be installed when deploying a new VM) ethernetX.coalescingScheme = disable (no default)
You can set this configuration with VM variables before deploy only
To set advanced configuration for a VM:
Edit the abiquo.properties file on the Remote Services server
For each configuration element, set a variable for the default configuration with the following format:
com.abiquo.esx.variable.*variableKey*.extra.conf.key=extraConfValue
For example, for "sched.swap.vmxswapenabled"
com.abiquo.esx.variable.*schedswapen*.sched.swap.vmxswapenabled=TRUE
To activate the configuration, edit the VM template or the VM
Go to Variables and set a variable with the key "variableKey" from the abiquo.properties
For example, "schedswapen"."schedswapen":"TRUE"
The VM would then have the configuration setting "sched.swap.vmxswapenabled" set to "TRUE".
The platform does not use the value of the variable, so you can set any value except an empty value. For example, you could set it to the value of the ESXi variable.
Example 2
To set "ethernet.coalescingScheme" to "disable" for all NICs, you can use an X to represent all NICs.
So you could set the following property in abiquo.properties, with the variableKey of "ethxcoalsch".
com.abiquo.esx.ethxcoalsch.ethernetX.coalescingScheme=disable
After setting the VM template variable, or VM variable as follows:
"ethcoalsch":"DISABLE"
The resulting configuration of the VM in the hypervisor will be:
ethernet0.coalescingScheme = disable ethernet1.coalescingScheme = disable ethernet2.coalescingScheme = disable ethernet3.coalescingScheme = disable ethernet4.coalescingScheme = disable ethernet5.coalescingScheme = disable ethernet6.coalescingScheme = disable ethernet7.coalescingScheme = disable ethernet8.coalescingScheme = disable ethernet9.coalescingScheme = disable ethernet10.coalescingScheme = disable ethernet11.coalescingScheme = disable ethernet12.coalescingScheme = disable ethernet13.coalescingScheme = disable
Copyright © 2006-2022, Abiquo Holdings SL. All rights reserved