hw:action
|
Action that configures support limits per instance. Valid actions are:
-
cpu_max_sockets - Maximum supported CPU sockets.
-
cpu_max_cores - Maximum supported CPU cores.
-
cpu_max_threads - Maximum supported CPU threads.
-
cpu_sockets - Preferred number of CPU sockets.
-
cpu_cores - Preferred number of CPU cores.
-
cpu_threads - Preferred number of CPU threads.
-
serial_port_count - Maximum serial ports per instance.
Example: hw:cpu_max_sockets=2
|
hw:NUMA_def
|
Definition of NUMA topology for the instance. For flavors whose RAM and vCPU allocations are larger than the size of NUMA nodes in the compute hosts, defining NUMA topology enables hosts to better utilize NUMA and improve performance of the guest OS. NUMA definitions defined through the flavor override image definitions. Valid definitions are:
-
numa_nodes - Number of NUMA nodes to expose to the instance. Specify 1 to ensure image NUMA settings are overridden.
-
numa_cpus.0 - Mapping of vCPUs N-M to NUMA node 0 (comma-separated list).
-
numa_cpus.1 - Mapping of vCPUs N-M to NUMA node 1 (comma-separated list).
-
numa_mem.0 - Mapping N MB of RAM to NUMA node 0.
-
numa_mem.1 - Mapping N MB of RAM to NUMA node 1.
-
numa_cpu.N and numa_mem.N are only valid if numa_nodes is set. Additionally, they are only required if the instance’s NUMA nodes have an asymetrical allocation of CPUs and RAM (important for some NFV workloads).
If the values of numa_cpu or numa_mem.N specify more than that available, an exception is raised.
Example when the instance has 8 vCPUs and 4GB RAM:
-
hw:numa_nodes=2
-
hw:numa_cpus.0=0,1,2,3,4,5
-
hw:numa_cpus.1=6,7
-
hw:numa_mem.0=3072
-
hw:numa_mem.1=1024
The scheduler looks for a host with 2 NUMA nodes with the ability to run 6 CPUs + 3072 MB, or 3 GB, of RAM on one node, and 2 CPUS + 1024 MB, or 1 GB, of RAM on another node. If a host has a single NUMA node with capability to run 8 CPUs and 4 GB of RAM, it will not be considered a valid match.
|
hw:watchdog_action
|
An instance watchdog device can be used to trigger an action if the instance somehow fails (or hangs). Valid actions are:
-
disabled - The device is not attached (default value).
-
pause - Pause the instance.
-
poweroff - Forcefully shut down the instance.
-
reset - Forcefully reset the instance.
-
none - Enable the watchdog, but do nothing if the instance fails.
Example: hw:watchdog_action=poweroff
|
hw:pci_numa_affinity_policy
|
You can use this parameter to specify the NUMA affinity policy for PCI passthrough devices and SR-IOV interfaces. Set to one of the following valid values:
Example: hw:pci_numa_affinity_policy=required
|
hw_rng:action
|
A random-number generator device can be added to an instance using its image properties (see hw_rng_model in the "Command-Line Interface Reference" in Red Hat OpenStack Platform documentation).
If the device has been added, valid actions are:
-
allowed - If True , the device is enabled; if False , disabled. By default, the device is disabled.
-
rate_bytes - Maximum number of bytes the instance’s kernel can read from the host to fill its entropy pool every rate_period (integer).
-
rate_period - Duration of the read period in seconds (integer).
Example: hw_rng:allowed=True .
|
hw_video:ram_max_mb
|
Maximum permitted RAM to be allowed for video devices (in MB).
Example: hw:ram_max_mb=64
|
quota:option
|
Enforcing limit for the instance. Valid options are:
-
cpu_period - Time period for enforcing cpu_quota (in microseconds). Within the specified cpu_period , each vCPU cannot consume more than cpu_quota of runtime. The value must be in range [1000, 1000000]; 0 means no value.
-
cpu_quota - Maximum allowed bandwidth (in microseconds) for the vCPU in each `cpu_period . The value must be in range [1000, 18446744073709551]. 0 means no value; a negative value means that the vCPU is not controlled. cpu_quota and cpu_period can be used to ensure that all vCPUs run at the same speed.
-
cpu_shares - Share of CPU time for the domain. The value only has meaning when weighted against other machine values in the same domain. That is, an instance with a flavor with 200 will get twice as much machine time as an instance with 100.
-
disk_read_bytes_sec - Maximum disk reads in bytes per second.
-
disk_read_iops_sec - Maximum read I/O operations per second.
-
disk_write_bytes_sec - Maximum disk writes in bytes per second.
-
disk_write_iops_sec - Maximum write I/O operations per second.
-
disk_total_bytes_sec - Maximum total throughput limit in bytes per second.
-
disk_total_iops_sec - Maximum total I/O operations per second.
-
vif_inbound_average - Desired average of incoming traffic.
-
vif_inbound_burst - Maximum amount of traffic that can be received at vif_inbound_peak speed.
-
vif_inbound_peak - Maximum rate at which incoming traffic can be received.
-
vif_outbound_average - Desired average of outgoing traffic.
-
vif_outbound_burst - Maximum amount of traffic that can be sent at vif_outbound_peak speed.
-
vif_outbound_peak - Maximum rate at which outgoing traffic can be sent.
Example: quota:vif_inbound_average=10240
In addition, the VMware driver supports the following quota options, which control upper and lower limits for CPUs, RAM, disks, and networks, as well as shares, which can be used to control relative allocation of available resources among tenants:
-
cpu_limit - Maximum CPU frequency available to a virtual machine (in MHz).
-
cpu_reservation - Guaranteed minimum amount of CPU resources available to a virtual machine (in MHz).
-
cpu_shares_level - CPU allocation level (shares) in the case of contention. Possible values are high , normal , low , and custom .
-
cpu_shares_share - The number of allocated CPU shares. Applicable when cpu_shares_level is set to custom .
-
memory_limit - Maximum amount of RAM available to a virtual machine (in MB).
-
memory_reservation - Guaranteed minimum amount of RAM available to a virtual machine (in MB).
-
memory_shares_level - RAM allocation level (shares) in the case of contention. Possible values are high , normal , low , and custom .
-
memory_shares_share - The number of allocated RAM shares. Applicable when memory_shares_level is set to custom .
-
disk_io_limit - Maximum I/O utilization by a virtual machine (in I/O operations per second).
-
disk_io_reservation - Guaranteed minimum amount of disk resources available to a virtual machine (in I/O operations per second).
-
disk_io_shares_level - I/O allocation level (shares) in the case of contention. Possible values are high , normal , low , and custom .
-
disk_io_shares_share - The number of allocated I/O shares. Applicable when disk_io_shares_level is set to custom .
-
vif_limit - Maximum network bandwidth available to a virtual network adapter (in Mbps).
-
vif_reservation - Guaranteed minimum network bandwidth available to a virtual network adapter (in Mbps).
-
vif_shares_level - Network bandwidth allocation level (shares) in the case of contention. Possible values are high , normal , low , and custom .
-
vif_shares_share - The number of allocated network bandwidth shares. Applicable when vif_shares_level is set to custom .
|