Changing parameters in OpenStack configuration files
You can modify the following parameters in the OpenStack configuration files:
Parameter | Configuration file | Description | Value |
---|---|---|---|
ram_weight_multiplier
|
/etc/kolla/nova-scheduler/nova.conf | Defines how compute nodes with available RAM are weighed. With a positive value, virtual machines are placed on nodes with more available RAM, and thus, evenly spread across all compute nodes. In this case, however, you may end up unable to launch large VMs on particular nodes while having plenty of free RAM in the entire cluster. To optimize VM distribution and fill up nodes as much as possible, you can set this parameter to a negative value. | Valid values are integer or float. The default value is 1.0. |
scheduler_host_subset_size
|
/etc/kolla/nova-scheduler/nova.conf | Defines a number of compute nodes best suited for a new VM, one of which is randomly chosen by the scheduler. | Valid values are 1 or greater. Any value less than 1 is treated as 1. The higher the value, the less optimal the chosen node may be for a VM. The default value is 1. |
vxlan_udp_port
|
/etc/kolla/neutron-openvswitch-agent/ml2_conf.ini | Specifies the UDP port used for VXLAN tunnels. When changing the port, iptables rules are automatically configured for both the old and new ports. |
The default port is 4789. |
cpu_allocation_ratio
|
/etc/kolla/nova-compute/nova.conf |
Defines the virtual CPU to physical CPU allocation ratio. Changing CPU allocation ratio will not affect virtual CPUs already provisioned for virtual machines. |
Valid values are positive integer or float. The default value is 8.0. |
ram_allocation_ratio
|
/etc/kolla/nova-compute/nova.conf |
Defines the maximum reserved RAM to physical RAM allocation ratio. Changing RAM allocation ratio will not affect RAM already provisioned for virtual machines. |
Valid values are positive integer or float. The default value is 1.0. The maximum recommended value is 1.5. |
To change a compute parameter
Use the following command:
vinfra service compute set [--custom-param <service_name> <config_file> <section> <property> <value>] [--nova-scheduler-ram-weight-multiplier <value>] [--nova-compute-ram-allocation-ratio <value>] [--neutron-openvswitch-vxlan-port <value>] [--nova-scheduler-host-subset-size <value>] [--nova-compute-cpu-allocation-ratio <value>]
--custom-param <service_name> <config_file> <section> <property> <value>
-
Set custom parameters for OpenStack configuration files:
service_name
is the service name:nova-scheduler
,nova-compute
, orneutron-openvswitch-agent
config_file
specifies the service configuration file: nova.conf fornova-scheduler
andnova-compute
, or ml2_conf.ini forneutron-openvswitch-agent
section
specifies the section in the service configuration file where the parameter is defined:DEFAULT
in nova.conf oragent
in ml2_conf.iniproperty
is the parameter to be changed:ram_weight_multiplier
,ram_allocation_ratio
,scheduler_host_subset
, andcpu_allocation_ratio
in nova.conf;vxlan_udp_port
in ml2_conf.inivalue
is a new parameter value
--nova-scheduler-ram-weight-multiplier <value>
- Shortcut for
--custom-param nova-scheduler nova.conf DEFAULT ram_weight_multiplier <value>
--nova-compute-ram-allocation-ratio <value>
- Shortcut for
--custom-param nova-compute nova.conf DEFAULT ram_allocation_ratio <value>
--neutron-openvswitch-vxlan-port <value>
- Shortcut for
--custom-param neutron-openvswitch-agent ml2_conf.ini agent vxlan_udp_port <value>
--nova-scheduler-host-subset-size <value>
- Shortcut for
--custom-param nova-scheduler nova.conf DEFAULT scheduler_host_subset_size <value>
--nova-compute-cpu-allocation-ratio <value>
- Shortcut for
--custom-param nova-scheduler nova.conf DEFAULT cpu_allocation_ratio <value>
For example, to change ram_weight_multiplier
and vxlan_udp_port
, run:
# vinfra service compute set --nova-scheduler-ram-weight-multiplier -1 --neutron-openvswitch-vxlan-port 4787
To check that the custom parameters are successfully modified, run:
# vinfra service compute show +--------------+-------------------------------------------+ | Field | Value | +--------------+-------------------------------------------+ | <...> | <...> | | options | cpu_model: '' | | | custom_params: | | | - config_file: nova.conf | | | property: ram_weight_multiplier | | | section: DEFAULT | | | service_name: nova-scheduler | | | value: -1.0 | | | - config_file: ml2_conf.ini | | | property: vxlan_udp_port | | | section: agent | | | service_name: neutron-openvswitch-agent | | | value: 4787 | | | notification_forwarding: disabled | | status | active | +--------------+-------------------------------------------+
The applied changes are consistent on all compute nodes and not overwritten after product updates and upgrades.