Typically, each OpenStack component comes with a configuration file, for
example: /etc/nova/nova.conf
.
These configuration files can still be used. However, to configure an
OpenStack component and its different components and roles, it is now
preferred to add custom configuration file snippets to a
SERVICE.conf.d/
directory
instead.
By default, a configuration snippet with a basic configuration for each OpenStack component is available in the following directory:
/etc/SERVICE/SERVICE.conf.d/010-SERVICE.conf
For example: /etc/nova/nova.conf.d/010-nova.conf
Those files should not be modified.
To adjust or overwrite settings for the respective OpenStack component, add a
custom configuration file to the same directory,
/etc/SERVICE/SERVICE.conf.d/
.
The same applies if you want to configure individual components or roles of
an OpenStack component, like nova-api
or
nova-compute
, for example. But in this case, add your
custom configuration file to the following directory:
/etc/SERVICE/ROLE.conf.d/
For example: /etc/nova/nova-api.conf.d/
All custom configuration file must follow the rules listed in Section F.3, “Naming Conventions for Custom Configuration Files”.
Use the following rules for any configuration files you add:
The file name must start with a 3-digit number and a dash. For example:
/etc/nova/nova.conf.d/500-nova.conf
The file must have the following file name extension:
.conf
For configuration management systems (for example: Crowbar, Salt), use
numbers between 100
and 499
.
To override settings written by the configuration management system, use
numbers starting from 500
. They have higher priority.
The configuration files are processed in the following order:
/etc/SERVICE/SERVICE.conf
/etc/SERVICE/SERVICE.conf.d/*.conf
(in dictionary order)
/etc/SERVICE/ROLE.conf.d/*.conf
(in dictionary order)
If conflicting values are set for the same parameter, the last configured value overwrites all previous ones. In particular, values defined in
/etc/SERVICE/SERVICE.conf.d/XXX-SERVICE.conf
overwrite configuration values in
/etc/SERVICE/SERVICE.conf
For details, also see
/etc/SERVICE/README.config
.