Compute Service Advance Configuration
You may occasionally need to adjust the default Compute Service configuration to enable or disable specific settings. This document describes the steps to do that.
What is nova_override.conf
nova_override.conf
is the configuration file used by Private Cloud Director compute service to store all the default configuration values.
You can use this override file to:
- Adjust logging levels or enabling more verbose logging by enabling debug mode. (Mostly commonly used case).
- Customize compute driver options.
- Modify quota defaults for specific tenants.
The nova_override.conf
file is located in the following directory.
/opt/pf9/etc/nova/conf.d/nova_override.conf
What to know before
- Updating nova_override.conf file is an advance operation and should only be performed by Administrators with complete understanding of the property being edited and the possible impact. We highly recommend that you do this only under guidance from the Platform9 support or solution architect teams.
- Any changes made to the config file persist across upgrades to Private Cloud Director, ensuring that your customized settings remain intact across upgrades.
- Any change to the config file requires service restart for the changes to take effect.
- The
nova_override
file must be edited on each hypervisor host to ensure that the changes to apply consistently across all hosts.
Updating nova_override.conf file is an advance operation and must only be performed by Administrators. We highly recommend doing this only under Platform9 support guidance.
Restart Service
After editing the nova_override.conf
file, you must restart the compute service for the changes to take effect. Run the following command on the host:
systemctl restart pf9-ostackhost
Common Settings
For a complete list of Compute Service configuration options, refer to nova.conf.
Below we have some common scenarios and configurations options you may wish to edit.
Enable Debug Logging
This is the most commonly used option. You can turn this on when troubleshooting issues with VM creation or VM volume attachment. Note that enabling this will generate highly verbose logs and may exhaust disk space on the host. We recommend disabling it in production after troubleshooting.
[DEFAULT]
debug = true # Enable detailed logging (useful for troubleshooting)
log_dir = /var/log/nova # Log file storage location
Scheduler Configuration
This parameter determines the number of times the virtual machine scheduler will try to provision a virtual machine instance before failing. Only adjust this under specific guidance from Platform9 support team.
[scheduler]
max_attempts = 5 # Number of retries for scheduling instances
Compute Resource Limits
cpu_allocation_ratio
and ram_allocation_ratio
define the CPU and memory over commitment ratios at the hypervisor host level. The defaults are 1:5 for RAM and 1:16 for CPU over commitment. reserved_host_memory_mb
refers to the default amount of memory reserved for hypervisor processes.
[DEFAULT]
reserved_host_memory_mb = 2048 # Reserve memory for the hypervisor
cpu_allocation_ratio = 16.0 # Overcommit CPU resources (Default: 16)
ram_allocation_ratio = 1.5 # Overcommit RAM resources (Default: 1.5)
Advance Settings
These settings impact VM operations and performance. Modify only if necessary and test changes in a non-production environment.
Compute Driver Configuration
[DEFAULT]
compute_driver = nova.virt.libvirt.LibvirtDriver
Do not change unless you are configuring a different virtualization technology (e.g., VMware, Xen, KVM).
Networking Configuration
[neutron]
service_plugins = router,metering
Changing networking parameters without proper testing may break VM connectivity.
Disk & Storage Settings
[libvirt]
images_type = qcow2 # Default disk image format
live_migration_flag = VIR_MIGRATE_LIVE
Modify only if you are implementing specific storage optimizations.
CPU Mode and Model Configuration
[libvirt]
# Specifies the CPU mode for virtual machine instances.
cpu_mode = custom
# Defines the custom CPU model(s) to be used with the hypervisor.
cpu_models = Broadwell-noTSX-IBRS
This configuration is typically used when you need consistent CPU features across different hypervisors.
Enable Storage Multipath
- Make sure that service
multipathd
is running on all hosts. - Use the following config option to enable storage multipath support.
volume_use_multipath = True