Chapter 7. ironic
The following chapter contains information about the configuration options in the ironic
service.
7.1. ironic.conf
This section contains options for the /etc/ironic/ironic.conf
file.
7.1.1. DEFAULT
The following table outlines the options available under the [DEFAULT]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Authentication strategy used by ironic-api. "noauth" should not be used in a production environment because all authentication will be disabled. |
| string value | Enable eventlet backdoor. Acceptable values are 0, <port>, and <start>:<end>, where 0 results in listening on a random tcp port number; <port> results in listening on the specified port number (and not enabling backdoor if that port is in use); and <start>:<end> results in listening on the smallest unused port number within the specified range of port numbers. The chosen port is displayed in the service’s log file. |
| string value | Enable eventlet backdoor, using the provided path as a unix socket that can receive connections. This option is mutually exclusive with backdoor_port in that only one should be provided. If both are provided then the existence of this option overrides the usage of that option. |
| string value | Directory where ironic binaries are installed. |
| integer value | The pool size limit for connections expiration policy |
| integer value | The time-to-live in sec of idle connections in the pool |
| string value | The default exchange under which topics are scoped. May be overridden by an exchange name specified in the transport_url option. |
| boolean value | If set to true, the logging level will be set to DEBUG instead of the default INFO level. |
| boolean value | Return server tracebacks in the API response for any error responses. WARNING: this is insecure and should not be used in a production environment. |
| string value | Default boot interface to be used for nodes that do not have boot_interface field set. A complete list of boot interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.boot" entrypoint. |
| string value | Default console interface to be used for nodes that do not have console_interface field set. A complete list of console interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.console" entrypoint. |
| string value | Default deploy interface to be used for nodes that do not have deploy_interface field set. A complete list of deploy interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.deploy" entrypoint. |
| string value | Default inspect interface to be used for nodes that do not have inspect_interface field set. A complete list of inspect interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.inspect" entrypoint. |
| list value | List of package logging levels in logger=LEVEL pairs. This option is ignored if log_config_append is set. |
| string value | Default management interface to be used for nodes that do not have management_interface field set. A complete list of management interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.management" entrypoint. |
| string value | Default network interface to be used for nodes that do not have network_interface field set. A complete list of network interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.network" entrypoint. |
| string value | Default mode for portgroups. Allowed values can be found in the linux kernel documentation on bonding: https://www.kernel.org/doc/Documentation/networking/bonding.txt. |
| string value | Default power interface to be used for nodes that do not have power_interface field set. A complete list of power interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.power" entrypoint. |
| string value | Default raid interface to be used for nodes that do not have raid_interface field set. A complete list of raid interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.raid" entrypoint. |
| string value | Default rescue interface to be used for nodes that do not have rescue_interface field set. A complete list of rescue interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.rescue" entrypoint. |
| string value | Resource class to use for new nodes when no resource class is provided in the creation request. |
| string value | Default storage interface to be used for nodes that do not have storage_interface field set. A complete list of storage interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.storage" entrypoint. |
| string value | Default vendor interface to be used for nodes that do not have vendor_interface field set. A complete list of vendor interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.vendor" entrypoint. |
| list value | Specify the list of boot interfaces to load during service initialization. Missing boot interfaces, or boot interfaces which fail to initialize, will prevent the ironic-conductor service from starting. At least one boot interface that is supported by each enabled hardware type must be enabled here, or the ironic-conductor service will not start. Must not be an empty list. The default value is a recommended set of production-oriented boot interfaces. A complete list of boot interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.boot" entrypoint. When setting this value, please make sure that every enabled hardware type will have the same set of enabled boot interfaces on every ironic-conductor service. |
| list value | Specify the list of console interfaces to load during service initialization. Missing console interfaces, or console interfaces which fail to initialize, will prevent the ironic-conductor service from starting. At least one console interface that is supported by each enabled hardware type must be enabled here, or the ironic-conductor service will not start. Must not be an empty list. The default value is a recommended set of production-oriented console interfaces. A complete list of console interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.console" entrypoint. When setting this value, please make sure that every enabled hardware type will have the same set of enabled console interfaces on every ironic-conductor service. |
| list value | Specify the list of deploy interfaces to load during service initialization. Missing deploy interfaces, or deploy interfaces which fail to initialize, will prevent the ironic-conductor service from starting. At least one deploy interface that is supported by each enabled hardware type must be enabled here, or the ironic-conductor service will not start. Must not be an empty list. The default value is a recommended set of production-oriented deploy interfaces. A complete list of deploy interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.deploy" entrypoint. When setting this value, please make sure that every enabled hardware type will have the same set of enabled deploy interfaces on every ironic-conductor service. |
| list value | Specify the list of drivers to load during service initialization. Missing drivers, or drivers which fail to initialize, will prevent the conductor service from starting. The option default is a recommended set of production-oriented drivers. A complete list of drivers present on your system may be found by enumerating the "ironic.drivers" entrypoint. An example may be found in the developer documentation online. |
| list value | Specify the list of hardware types to load during service initialization. Missing hardware types, or hardware types which fail to initialize, will prevent the conductor service from starting. This option defaults to a recommended set of production-oriented hardware types. A complete list of hardware types present on your system may be found by enumerating the "ironic.hardware.types" entrypoint. |
| list value | Specify the list of inspect interfaces to load during service initialization. Missing inspect interfaces, or inspect interfaces which fail to initialize, will prevent the ironic-conductor service from starting. At least one inspect interface that is supported by each enabled hardware type must be enabled here, or the ironic-conductor service will not start. Must not be an empty list. The default value is a recommended set of production-oriented inspect interfaces. A complete list of inspect interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.inspect" entrypoint. When setting this value, please make sure that every enabled hardware type will have the same set of enabled inspect interfaces on every ironic-conductor service. |
| list value | Specify the list of management interfaces to load during service initialization. Missing management interfaces, or management interfaces which fail to initialize, will prevent the ironic-conductor service from starting. At least one management interface that is supported by each enabled hardware type must be enabled here, or the ironic-conductor service will not start. Must not be an empty list. The default value is a recommended set of production-oriented management interfaces. A complete list of management interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.management" entrypoint. When setting this value, please make sure that every enabled hardware type will have the same set of enabled management interfaces on every ironic-conductor service. |
| list value | Specify the list of network interfaces to load during service initialization. Missing network interfaces, or network interfaces which fail to initialize, will prevent the ironic-conductor service from starting. At least one network interface that is supported by each enabled hardware type must be enabled here, or the ironic-conductor service will not start. Must not be an empty list. The default value is a recommended set of production-oriented network interfaces. A complete list of network interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.network" entrypoint. When setting this value, please make sure that every enabled hardware type will have the same set of enabled network interfaces on every ironic-conductor service. |
| list value | Specify the list of power interfaces to load during service initialization. Missing power interfaces, or power interfaces which fail to initialize, will prevent the ironic-conductor service from starting. At least one power interface that is supported by each enabled hardware type must be enabled here, or the ironic-conductor service will not start. Must not be an empty list. The default value is a recommended set of production-oriented power interfaces. A complete list of power interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.power" entrypoint. When setting this value, please make sure that every enabled hardware type will have the same set of enabled power interfaces on every ironic-conductor service. |
| list value | Specify the list of raid interfaces to load during service initialization. Missing raid interfaces, or raid interfaces which fail to initialize, will prevent the ironic-conductor service from starting. At least one raid interface that is supported by each enabled hardware type must be enabled here, or the ironic-conductor service will not start. Must not be an empty list. The default value is a recommended set of production-oriented raid interfaces. A complete list of raid interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.raid" entrypoint. When setting this value, please make sure that every enabled hardware type will have the same set of enabled raid interfaces on every ironic-conductor service. |
| list value | Specify the list of rescue interfaces to load during service initialization. Missing rescue interfaces, or rescue interfaces which fail to initialize, will prevent the ironic-conductor service from starting. At least one rescue interface that is supported by each enabled hardware type must be enabled here, or the ironic-conductor service will not start. Must not be an empty list. The default value is a recommended set of production-oriented rescue interfaces. A complete list of rescue interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.rescue" entrypoint. When setting this value, please make sure that every enabled hardware type will have the same set of enabled rescue interfaces on every ironic-conductor service. |
| list value | Specify the list of storage interfaces to load during service initialization. Missing storage interfaces, or storage interfaces which fail to initialize, will prevent the ironic-conductor service from starting. At least one storage interface that is supported by each enabled hardware type must be enabled here, or the ironic-conductor service will not start. Must not be an empty list. The default value is a recommended set of production-oriented storage interfaces. A complete list of storage interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.storage" entrypoint. When setting this value, please make sure that every enabled hardware type will have the same set of enabled storage interfaces on every ironic-conductor service. |
| list value | Specify the list of vendor interfaces to load during service initialization. Missing vendor interfaces, or vendor interfaces which fail to initialize, will prevent the ironic-conductor service from starting. At least one vendor interface that is supported by each enabled hardware type must be enabled here, or the ironic-conductor service will not start. Must not be an empty list. The default value is a recommended set of production-oriented vendor interfaces. A complete list of vendor interfaces present on your system may be found by enumerating the "ironic.hardware.interfaces.vendor" entrypoint. When setting this value, please make sure that every enabled hardware type will have the same set of enabled vendor interfaces on every ironic-conductor service. |
| integer value | Size of executor thread pool when executor is threading or eventlet. |
| boolean value | Enables or disables fatal status of deprecations. |
| boolean value | Used if there is a formatting error when generating an exception message (a programming error). If True, raise an exception; if False, use the unformatted message. |
| boolean value | If True, convert backing images to "raw" disk image format. |
| integer value | Specify a timeout after which a gracefully shutdown server will exit. Zero value means endless wait. |
| string value | Template file for grub configuration file. |
| integer value | [Experimental Feature] Number of hosts to map onto each hash partition. Setting this to more than one will cause additional conductor services to prepare deployment environments and potentially allow the Ironic cluster to recover more quickly if a conductor instance is terminated. |
| integer value | Exponent to determine number of hash partitions to use when distributing load across conductors. Larger values will result in more even distribution of load and less load when rebalancing the ring, but more memory usage. Number of partitions per conductor is (2^hash_partition_exponent). This determines the granularity of rebalancing: given 10 hosts, and an exponent of the 2, there are 40 partitions in the ring.A few thousand partitions should make rebalancing smooth in most cases. The default is suitable for up to a few hundred conductors. Configuring for too many partitions has a negative impact on CPU usage. |
| integer value | Time (in seconds) after which the hash ring is considered outdated and is refreshed on the next access. |
| string value | Name of this node. This can be an opaque identifier. It is not necessarily a hostname, FQDN, or IP address. However, the node name must be valid within an AMQP key, and if using ZeroMQ, a valid hostname, FQDN, or IP address. |
`instance_format = [instance: %(uuid)s] ` | string value | The format for an instance that is passed with the log message. |
`instance_uuid_format = [instance: %(uuid)s] ` | string value | The format for an instance UUID that is passed with the log message. |
| string value | Path to isolinux binary file. |
| string value | Template file for isolinux configuration file. |
| string value | Path to ldlinux.c32 file. This file is required for syslinux 5.0 or later. If not specified, the file is looked for in "/usr/lib/syslinux/modules/bios/ldlinux.c32" and "/usr/share/syslinux/ldlinux.c32". |
| string value | The name of a logging configuration file. This file is appended to any existing logging configuration files. For details about logging configuration files, see the Python logging module documentation. Note that when logging configuration files are used then all logging configuration is set in the configuration file and other logging configuration options are ignored (for example, logging_context_format_string). |
| string value | Defines the format string for %%(asctime)s in log records. Default: %(default)s . This option is ignored if log_config_append is set. |
| string value | (Optional) The base directory used for relative log_file paths. This option is ignored if log_config_append is set. |
| string value | (Optional) Name of log file to send logging output to. If no default is set, logging will go to stderr as defined by use_stderr. This option is ignored if log_config_append is set. |
| boolean value | Enables or disables logging values of all registered options when starting a service (at DEBUG level). |
| string value | Format string to use for log messages with context. |
| string value | Additional data to append to log message when logging level for the message is DEBUG. |
| string value | Format string to use for log messages when context is undefined. |
| string value | Prefix each line of exception output with this format. |
| string value | Defines the format string for %(user_identity)s that is used in logging_context_format_string. |
| string value | IP address of this host. If unset, will determine the IP programmatically. If unable to do so, will use "127.0.0.1". |
| string value | Specifies the minimum level for which to send notifications. If not set, no notifications will be sent. The default is for this option to be unset. |
| boolean value | Run image downloads and raw format conversions in parallel. |
| boolean value | Enable pecan debug mode. WARNING: this is insecure and should not be used in a production environment. |
| string value | Used for rolling upgrades. Setting this option downgrades (or pins) the Bare Metal API, the internal ironic RPC communication, and the database objects to their respective versions, so they are compatible with older services. When doing a rolling upgrade from version N to version N+1, set (to pin) this to N. To unpin (default), leave it unset and the latest versions will be used. |
| boolean value | Enables or disables publication of error events. |
| string value | Directory where the ironic python module is installed. |
| integer value | Maximum number of logged messages per rate_limit_interval. |
| string value | Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG or empty string. Logs with level greater or equal to rate_limit_except_level are not filtered. An empty string means that all levels are filtered. |
| integer value | Interval, number of seconds, of log rate limiting. |
| string value | Path to the rootwrap configuration file to use for running commands as root. |
| integer value | Number of seconds to wait for an ack from a cast/call. After each retry attempt this timeout is multiplied by some specified multiplier. |
| integer value | Number to multiply base ack timeout by after each retry attempt. |
| string value | The messaging driver to use, defaults to rabbit. Other drivers include amqp and zmq. |
| integer value | Size of RPC connection pool. |
| integer value | Expiration timeout in seconds of a sent/received message after which it is not tracked anymore by a client/server. |
| integer value | The default number of seconds that poll should wait. Poll raises timeout exception when timeout expired. |
| integer value | Seconds to wait for a response from a call. |
| integer value | Default number of message sending attempts in case of any problems occurred: positive value N means at most N retries, 0 means no retries, None or -1 (or any other negative values) mean to retry forever. This option is used only if acknowledgments are enabled. |
| integer value | Maximum number of (green) threads to work concurrently. |
| boolean value | Wait for message acknowledgements from receivers. This mechanism works only via proxy without PUB/SUB. |
| string value | ZeroMQ bind address. Should be a wildcard (*), an ethernet interface, or IP. The "host" option should point or resolve to this address. |
| integer value | Number of retries to find free port number before fail with ZMQBindError. |
| integer value | Number of ZeroMQ contexts, defaults to 1. |
| string value | Name of this node. Must be a valid hostname, FQDN, or IP address. Must match "host" option, if running Nova. |
| string value | Directory for holding IPC sockets. |
| string value | MatchMaker driver. |
| integer value | Maximal port number for random ports range. |
| port value | Minimal port number for random ports range. |
| string value | Default serialization mechanism for serializing/deserializing outgoing/incoming messages |
| integer value | Maximum number of ingress messages to locally buffer per topic. Default is unlimited. |
| boolean value | Some periodic tasks can be run in a separate process. Should we run them here? |
| string value | Top-level directory for maintaining ironic’s state. |
| list value | List of publisher hosts SubConsumer can subscribe on. This option has higher priority then the default publishers list taken from the matchmaker. |
| string value | Syslog facility to receive log lines. This option is ignored if log_config_append is set. |
| string value | Temporary working directory, default is Python temp dir. |
| string value | The network address and optional user credentials for connecting to the messaging backend, in URL format. The expected format is: driver://[user:pass@]host:port[,[userN:passN@]hostN:portN]/virtual_host?query Example: rabbit://rabbitmq:password@127.0.0.1:5672// For full details on the fields in the URL see the documentation of oslo_messaging.TransportURL at https://docs.openstack.org/oslo.messaging/latest/reference/transport.html |
| boolean value | Enable journald for logging. If running in a systemd environment you may wish to enable journal support. Doing so will use the journal native protocol which includes structured metadata in addition to log messages.This option is ignored if log_config_append is set. |
| boolean value | Use JSON formatting for logging. This option is ignored if log_config_append is set. |
| boolean value | Use syslog for logging. Existing syslog format is DEPRECATED and will be changed later to honor RFC5424. This option is ignored if log_config_append is set. |
| boolean value | This option makes direct connections dynamic or static. It makes sense only with use_router_proxy=False which means to use direct connections for direct message types (ignored otherwise). |
| boolean value | Use PUB/SUB pattern for fanout methods. PUB/SUB always uses proxy. |
| boolean value | Use ROUTER remote proxy. |
| boolean value | Log output to standard error. This option is ignored if log_config_append is set. |
| boolean value | Uses logging handler designed to watch file system. When log file is moved or removed this handler will open a new log file with specified path instantaneously. It makes sense only if log_file option is specified and Linux platform is used. This option is ignored if log_config_append is set. |
| integer value | How many additional connections to a host will be made for failover reasons. This option is actual only in dynamic connections mode. |
| boolean value | This option configures round-robin mode in zmq socket. True means not keeping a queue when server side disconnects. False means to keep queue and messages even if server is disconnected, when the server appears we send all accumulated messages to it. |
| integer value | Number of seconds to wait before all pending messages will be sent after closing a socket. The default value of -1 specifies an infinite linger period. The value of 0 specifies no linger period. Pending messages shall be discarded immediately when the socket is closed. Positive values specify an upper bound for the linger period. |
| integer value | Expiration timeout in seconds of a name service record about existing target ( < 0 means no timeout). |
| integer value | Update period in seconds of a name service record about existing target. |
| integer value | Enable/disable TCP keepalive (KA) mechanism. The default value of -1 (or any other negative value) means to skip any overrides and leave it to OS default; 0 and 1 (or any other positive value) mean to disable and enable the option respectively. |
| integer value | The number of retransmissions to be carried out before declaring that remote end is not available. The default value of -1 (or any other negative value and 0) means to skip any overrides and leave it to OS default. |
| integer value | The duration between two keepalive transmissions in idle condition. The unit is platform dependent, for example, seconds in Linux, milliseconds in Windows etc. The default value of -1 (or any other negative value and 0) means to skip any overrides and leave it to OS default. |
| integer value | The duration between two successive keepalive retransmissions, if acknowledgement to the previous keepalive transmission is not received. The unit is platform dependent, for example, seconds in Linux, milliseconds in Windows etc. The default value of -1 (or any other negative value and 0) means to skip any overrides and leave it to OS default. |
7.1.2. agent
The following table outlines the options available under the [agent]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | API version to use for communicating with the ramdisk agent. |
| string value | Whether Ironic should collect the deployment logs on deployment failure (on_failure), always or never. |
| string value | The path to the directory where the logs should be stored, used when the deploy_logs_storage_backend is configured to "local". |
| string value | The name of the storage backend where the logs will be stored. |
| string value | The name of the Swift container to store the logs, used when the deploy_logs_storage_backend is configured to "swift". |
| integer value | Number of days before a log object is marked as expired in Swift. If None, the logs will be kept forever or until manually deleted. Used when the deploy_logs_storage_backend is configured to "swift". |
| boolean value | Whether Ironic will manage booting of the agent ramdisk. If set to False, you will need to configure your mechanism to allow booting the agent ramdisk. |
| integer value | The memory size in MiB consumed by agent when it is booted on a bare metal node. This is used for checking if the image can be downloaded and deployed on the bare metal node after booting agent ramdisk. This may be set according to the memory consumed by the agent ramdisk image. |
| integer value | Number of times to retry getting power state to check if bare metal node has been powered off after a soft power off. |
| integer value | Amount of time (in seconds) to wait between polling power state after trigger soft poweroff. |
| boolean value | Whether the agent ramdisk should stream raw images directly onto the disk or not. By streaming raw images directly onto the disk the agent ramdisk will not spend time copying the image to a tmpfs partition (therefore consuming less memory) prior to writing it to the disk. Unless the disk where the image will be copied to is really slow, this option should be set to True. Defaults to True. |
7.1.3. ansible
The following table outlines the options available under the [ansible]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Extra arguments to pass on every invocation of Ansible. |
| string value | Path to "ansible-playbook" script. Default will search the $PATH configured for user running ironic-conductor process. Provide the full path when ansible-playbook is not in $PATH or installed in not default location. |
| string value | Path to ansible configuration file. If set to empty, system default will be used. |
| string value | Path (relative to $playbooks_path or absolute) to the default playbook used for node cleaning. It may be overriden by per-node ansible_clean_playbook option in node’s driver_info field. |
| string value | Path (relative to $playbooks_path or absolute) to the default auxiliary cleaning steps file used during the node cleaning. It may be overriden by per-node ansible_clean_steps_config option in node’s driver_info field. |
| string value | Path (relative to $playbooks_path or absolute) to the default playbook used for deployment. It may be overriden by per-node ansible_deploy_playbook option in node’s driver_info field. |
| string value | Absolute path to the private SSH key file to use by Ansible by default when connecting to the ramdisk over SSH. Default is to use default SSH keys configured for the user running the ironic-conductor service. Private keys with password must be pre-loaded into ssh-agent. It may be overriden by per-node ansible_key_file option in node’s driver_info field. |
| string value | Path (relative to $playbooks_path or absolute) to the default playbook used for graceful in-band shutdown of the node. It may be overriden by per-node ansible_shutdown_playbook option in node’s driver_info field. |
| string value | Name of the user to use for Ansible when connecting to the ramdisk over SSH. It may be overriden by per-node ansible_username option in node’s driver_info field. |
| integer value | Extra amount of memory in MiB expected to be consumed by Ansible-related processes on the node. Affects decision whether image will fit into RAM. |
| string value | Specific CA bundle to use for validating SSL connections to the image store. If not specified, CA available in the ramdisk will be used. Is not used by default playbooks included with the driver. Suitable for environments that use self-signed certificates. |
| string value | Client cert to use for SSL connections to image store. Is not used by default playbooks included with the driver. |
| boolean value | Skip verifying SSL connections to the image store when downloading the image. Setting it to "True" is only recommended for testing environments that use self-signed certificates. |
| string value | Client key to use for SSL connections to image store. Is not used by default playbooks included with the driver. |
| string value | Path to directory with playbooks, roles and local inventory. |
| integer value | Number of times to retry getting power state to check if bare metal node has been powered off after a soft power off. Value of 0 means do not retry on failure. |
| integer value | Amount of time (in seconds) to wait between polling power state after trigger soft poweroff. |
| integer value | Set ansible verbosity level requested when invoking "ansible-playbook" command. 4 includes detailed SSH session logging. Default is 4 when global debug is enabled and 0 otherwise. |
7.1.4. api
The following table outlines the options available under the [api]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| integer value | Number of workers for OpenStack Ironic API service. The default is equal to the number of CPUs available if that can be determined, else a default worker count of 1 is returned. |
| boolean value | Enable the integrated stand-alone API to service requests via HTTPS instead of HTTP. If there is a front-end service performing HTTPS offloading from the service, this option should be False; note, you will want to change public API endpoint to represent SSL termination URL with public_endpoint option. |
| string value | The IP address on which ironic-api listens. |
| integer value | The maximum number of items returned in a single response from a collection resource. |
| port value | The TCP port on which ironic-api listens. |
| string value | Public URL to use when building the links to the API resources (for example, "https://ironic.rocks:6384"). If None the links will be built using the request’s host URL. If the API is operating behind a proxy, you will want to change this to represent the proxy’s URL. Defaults to None. |
| integer value | Maximum interval (in seconds) for agent heartbeats. |
| boolean value | Whether to restrict the lookup API to only nodes in certain states. |
7.1.5. audit
The following table outlines the options available under the [audit]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Path to audit map file for ironic-api service. Used only when API audit is enabled. |
| boolean value | Enable auditing of API requests (for ironic-api service). |
`ignore_req_list = ` | string value | Comma separated list of Ironic REST API HTTP methods to be ignored during audit logging. For example: auditing will not be done on any GET or POST requests if this is set to "GET,POST". It is used only when API audit is enabled. |
7.1.6. cimc
The following table outlines the options available under the [cimc]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| integer value | Amount of time in seconds to wait in between power operations |
| integer value | Number of times a power operation needs to be retried |
7.1.7. cinder
The following table outlines the options available under the [cinder]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| integer value | Number of retries in the case of a failed action (currently only used when detaching volumes). |
| integer value | Retry interval in seconds in the case of a failed action (only specific actions are retried). |
| string value | Authentication URL |
| string value | Authentication type to load |
| string value | PEM encoded Certificate Authority to use when verifying HTTPs connections. |
| string value | PEM encoded client certificate cert file |
| string value | Optional domain ID to use with v3 and v2 parameters. It will be used for both the user and project domain in v3 and ignored in v2 authentication. |
| string value | Optional domain name to use with v3 API and v2 parameters. It will be used for both the user and project domain in v3 and ignored in v2 authentication. |
| string value | Domain ID to scope to |
| string value | Domain name to scope to |
| string value |
Always use this endpoint URL for requests for this client. NOTE: The unversioned endpoint should be specified here; to request a particular API version, use the |
| boolean value | Verify HTTPS connections. |
| string value | PEM encoded client certificate key file |
| string value | The maximum major version of a given API, intended to be used as the upper bound of a range with min_version. Mutually exclusive with version. |
| string value | The minimum major version of a given API, intended to be used as the lower bound of a range with max_version. Mutually exclusive with version. If min_version is given with no max_version it is as if max version is "latest". |
| string value | User’s password |
| string value | Domain ID containing project |
| string value | Domain name containing project |
| string value | Project ID to scope to |
| string value | Project name to scope to |
| string value | The default region_name for endpoint URL discovery. |
| integer value | Client retries in the case of a failed request connection. |
| string value | The default service_name for endpoint URL discovery. |
| string value | The default service_type for endpoint URL discovery. |
| string value | Scope for system operations |
| string value | Tenant ID |
| string value | Tenant Name |
| integer value | Timeout value for http requests |
| string value | Trust ID |
| uri value | URL for connecting to cinder. If set, the value must start with either http:// or https://. |
| string value | User’s domain id |
| string value | User’s domain name |
| string value | User id |
| string value | Username |
| list value | List of interfaces, in order of preference, for endpoint URL. |
| string value | Minimum Major API version within a given Major API version for endpoint URL discovery. Mutually exclusive with min_version and max_version |
7.1.8. cisco_ucs
The following table outlines the options available under the [cisco_ucs]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| integer value | Amount of time in seconds to wait in between power operations |
| integer value | Number of times a power operation needs to be retried |
7.1.9. conductor
The following table outlines the options available under the [conductor]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| uri value | URL of Ironic API service. If not set ironic can get the current value from the keystone service catalog. If set, the value must start with either http:// or https://. |
| boolean value | Enables or disables automated cleaning. Automated cleaning is a configurable set of steps, such as erasing disk drives, that are performed on the node to ensure it is in a baseline state and ready to be deployed to. This is done after instance deletion as well as during the transition from a "manageable" to "available" state. When enabled, the particular steps performed to clean a node depend on which driver that node is managed by; see the individual driver’s documentation for details. NOTE: The introduction of the cleaning operation causes instance deletion to take significantly longer. In an environment where all tenants are trusted (eg, because there is only one tenant), this option could be safely disabled. |
| integer value | Interval between checks of provision timeouts, in seconds. |
| integer value | Interval (seconds) between checks of rescue timeouts. |
| integer value | Timeout (seconds) to wait for a callback from the ramdisk doing the cleaning. If the timeout is reached the node will be put in the "clean failed" provision state. Set to 0 to disable timeout. |
| string value | Name of the Swift container to store config drive data. Used when configdrive_use_object_store is True. |
| integer value | Timeout (seconds) to wait for a callback from a deploy ramdisk. Set to 0 to disable timeout. |
| boolean value | During sync_power_state, should the hardware power state be set to the state recorded in the database (True) or should the database be updated based on the hardware state (False). |
| integer value | Seconds between conductor heart beats. |
| integer value | Maximum time (in seconds) since the last check-in of a conductor. A conductor is considered inactive when this time has been exceeded. |
| integer value | Timeout (seconds) for waiting for node inspection. 0 - unlimited. |
| integer value | Number of attempts to grab a node lock. |
| integer value | Seconds to sleep between node lock attempts. |
| integer value | Maximum number of worker threads that can be started simultaneously by a periodic task. Should be less than RPC thread pool size. |
| integer value | Number of seconds to wait for power operations to complete, i.e., so that a baremetal node is in the desired power state. If timed out, the power operation is considered a failure. |
| integer value | During sync_power_state failures, limit the number of times Ironic should try syncing the hardware node power state with the node power state in DB |
| integer value | Timeout (seconds) to wait for a callback from the rescue ramdisk. If the timeout is reached the node will be put in the "rescue failed" provision state. Set to 0 to disable timeout. |
| boolean value | Enable sending sensor data message via the notification bus |
| integer value | Seconds between conductor sending sensor data message to ceilometer via the notification bus. |
| list value | List of comma separated meter types which need to be sent to Ceilometer. The default value, "ALL", is a special value meaning send all the sensor data. |
| integer value | The time in seconds to wait for send sensors data periodic task to be finished before allowing periodic call to happen again. Should be less than send_sensor_data_interval value. |
| integer value | The maximum number of workers that can be started simultaneously for send data from sensors periodic task. |
| integer value | Timeout (in seconds) of soft reboot and soft power off operation. This value always has to be positive. |
| integer value | When conductors join or leave the cluster, existing conductors may need to update any persistent local state as nodes are moved around the cluster. This option controls how often, in seconds, each conductor will check for nodes that it should "take over". Set it to a negative value to disable the check entirely. |
| integer value | Interval between syncing the node power state to the database, in seconds. |
| integer value | The size of the workers greenthread pool. Note that 2 threads will be reserved by the conductor itself for handling heart beats and periodic tasks. |
7.1.10. console
The following table outlines the options available under the [console]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| IP address value | IP address of Socat service running on the host of ironic conductor. Used only by Socat console. |
| integer value | Time interval (in seconds) for checking the status of console subprocess. |
| integer value | Time (in seconds) to wait for the console subprocess to start. |
| string value | Path to serial console terminal program. Used only by Shell In A Box console. |
| string value | Directory containing the terminal SSL cert (PEM) for serial console access. Used only by Shell In A Box console. |
| string value | Directory for holding terminal pid files. If not specified, the temporary directory will be used. |
| integer value | Timeout (in seconds) for the terminal session to be closed on inactivity. Set to 0 to disable timeout. Used only by Socat console. |
7.1.11. cors
The following table outlines the options available under the [cors]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| boolean value | Indicate that the actual request can include user credentials |
| list value | Indicate which header field names may be used during the actual request. |
| list value | Indicate which methods can be used during the actual request. |
| list value | Indicate whether this resource may be shared with the domain received in the requests "origin" header. Format: "<protocol>://<host>[:<port>]", no trailing slash. Example: https://horizon.example.com |
| list value | Indicate which headers are safe to expose to the API. Defaults to HTTP Simple Headers. |
| integer value | Maximum cache age of CORS preflight requests. |
7.1.12. database
The following table outlines the options available under the [database]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | The back end to use for the database. |
| string value | The SQLAlchemy connection string to use to connect to the database. |
| integer value | Verbosity of SQL debugging information: 0=None, 100=Everything. |
| integer value | Connections which have been present in the connection pool longer than this number of seconds will be replaced with a new one the next time they are checked out from the pool. |
| boolean value | Add Python stack traces to SQL as comment strings. |
| boolean value | If True, increases the interval between retries of a database operation up to db_max_retry_interval. |
| integer value | Maximum retries in case of connection error or deadlock error before error is raised. Set to -1 to specify an infinite retry count. |
| integer value | If db_inc_retry_interval is set, the maximum seconds between retries of a database operation. |
| integer value | Seconds between retries of a database transaction. |
| integer value | If set, use this value for max_overflow with SQLAlchemy. |
| integer value | Maximum number of SQL connections to keep open in a pool. Setting a value of 0 indicates no limit. |
| integer value | Maximum number of database connection retries during startup. Set to -1 to specify an infinite retry count. |
| integer value | Minimum number of SQL connections to keep open in a pool. |
| boolean value | If True, transparently enables support for handling MySQL Cluster (NDB). |
| string value | MySQL engine to use. |
| string value | The SQL mode to be used for MySQL sessions. This option, including the default, overrides any server-set SQL mode. To use whatever SQL mode is set by the server configuration, set this to no value. Example: mysql_sql_mode= |
| integer value | If set, use this value for pool_timeout with SQLAlchemy. |
| integer value | Interval between retries of opening a SQL connection. |
| string value | The SQLAlchemy connection string to use to connect to the slave database. |
| boolean value | If True, SQLite uses synchronous mode. |
| boolean value | Enable the experimental use of database reconnect on connection lost. |
7.1.13. deploy
The following table outlines the options available under the [deploy]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| boolean value | Whether to upload the config drive to object store. Set this option to True to store config drive in swift or radosgw. |
| boolean value |
Defines what to do if an ATA secure erase operation fails during cleaning in the Ironic Python Agent. If False, the cleaning operation will fail and the node will be put in |
| string value | Default boot option to use when no boot option is requested in node’s driver_info. Currently the default is "netboot", but it will be changed to "local" in the future. It is recommended to set an explicit value for this option. |
| integer value | Priority to run in-band clean step that erases metadata from devices, via the Ironic Python Agent ramdisk. If unset, will use the priority set in the ramdisk (defaults to 99 for the GenericHardwareManager). If set to 0, will not run during cleaning. |
| integer value | Priority to run in-band erase devices via the Ironic Python Agent ramdisk. If unset, will use the priority set in the ramdisk (defaults to 10 for the GenericHardwareManager). If set to 0, will not run during cleaning. |
| string value | ironic-conductor node’s HTTP root path. |
| string value | ironic-conductor node’s HTTP server URL. Example: http://192.1.2.3:8080 |
| string value | Type of object store endpoint type to be used as a backend |
| boolean value | Whether to power off a node after deploy failure. Defaults to True. |
| boolean value | Whether to write zeros to a node’s block devices after writing random data. This will write zeros to the device even when deploy.shred_random_overwrite_iterations is 0. This option is only used if a device could not be ATA Secure Erased. Defaults to True. |
| integer value | During shred, overwrite all block devices N times with random data. This is only used if a device could not be ATA Secure Erased. Defaults to 1. |
7.1.14. dhcp
The following table outlines the options available under the [dhcp]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | DHCP provider to use. "neutron" uses Neutron, and "none" uses a no-op provider. |
7.1.15. disk_partitioner
The following table outlines the options available under the [disk_partitioner]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| integer value | After Ironic has completed creating the partition table, it continues to check for activity on the attached iSCSI device status at this interval prior to copying the image to the node, in seconds |
| integer value | The maximum number of times to check that the device is not accessed by another process. If the device is still busy after that, the disk partitioning will be treated as having failed. |
7.1.16. disk_utils
The following table outlines the options available under the [disk_utils]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| integer value | Size of BIOS Boot partition in MiB when configuring GPT partitioned systems for local boot in BIOS. |
| string value | Block size to use when writing to the nodes disk. |
| integer value | Size of EFI system partition in MiB when configuring UEFI systems for local boot. |
| integer value | Maximum attempts to verify an iSCSI connection is active, sleeping 1 second between attempts. |
| integer value | Maximum number of attempts to try to read the partition. |
7.1.17. drac
The following table outlines the options available under the [drac]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| integer value | Interval (in seconds) between periodic RAID job status checks to determine whether the asynchronous RAID configuration was successfully finished or not. |
7.1.18. glance
The following table outlines the options available under the [glance]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| list value | A list of URL schemes that can be downloaded directly via the direct_url. Currently supported schemes: [file]. |
| string value | Authentication URL |
| string value | Authentication strategy to use when connecting to glance. |
| string value | Authentication type to load |
| string value | PEM encoded Certificate Authority to use when verifying HTTPs connections. |
| string value | PEM encoded client certificate cert file |
| string value | Optional domain ID to use with v3 and v2 parameters. It will be used for both the user and project domain in v3 and ignored in v2 authentication. |
| string value | Optional domain name to use with v3 API and v2 parameters. It will be used for both the user and project domain in v3 and ignored in v2 authentication. |
| string value | Domain ID to scope to |
| string value | Domain name to scope to |
| string value |
Always use this endpoint URL for requests for this client. NOTE: The unversioned endpoint should be specified here; to request a particular API version, use the |
| boolean value | Allow to perform insecure SSL (https) requests to glance. |
| list value | A list of the glance api servers available to ironic. Prefix with https:// for SSL-based glance API servers. Format is [hostname|IP]:port. |
| integer value | Glance API version (1 or 2) to use. |
| string value | Optional path to a CA certificate bundle to be used to validate the SSL certificate served by glance. It is used when glance_api_insecure is set to False. |
| integer value | Number of retries when downloading an image from glance. |
| boolean value | Verify HTTPS connections. |
| string value | PEM encoded client certificate key file |
| string value | The maximum major version of a given API, intended to be used as the upper bound of a range with min_version. Mutually exclusive with version. |
| string value | The minimum major version of a given API, intended to be used as the lower bound of a range with max_version. Mutually exclusive with version. If min_version is given with no max_version it is as if max version is "latest". |
| string value | User’s password |
| string value | Domain ID containing project |
| string value | Domain name containing project |
| string value | Project ID to scope to |
| string value | Project name to scope to |
| string value | The default region_name for endpoint URL discovery. |
| string value | The default service_name for endpoint URL discovery. |
| string value | The default service_type for endpoint URL discovery. |
| string value | The account that Glance uses to communicate with Swift. The format is "AUTH_uuid". "uuid" is the UUID for the account configured in the glance-api.conf. For example: "AUTH_a422b2-91f3-2f46-74b7-d7c9e8958f5d30". If not set, the default value is calculated based on the ID of the project used to access Swift (as set in the [swift] section). Swift temporary URL format: "endpoint_url/api_version/[account/]container/object_id" |
| string value | The Swift API version to create a temporary URL for. Defaults to "v1". Swift temporary URL format: "endpoint_url/api_version/[account/]container/object_id" |
| string value | The Swift container Glance is configured to store its images in. Defaults to "glance", which is the default in glance-api.conf. Swift temporary URL format: "endpoint_url/api_version/[account/]container/object_id" |
| string value | The "endpoint" (scheme, hostname, optional port) for the Swift URL of the form "endpoint_url/api_version/[account/]container/object_id". Do not include trailing "/". For example, use "https://swift.example.com". If using RADOS Gateway, endpoint may also contain /swift path; if it does not, it will be appended. Used for temporary URLs, will be fetched from the service catalog, if not provided. |
| integer value | This should match a config by the same name in the Glance configuration file. When set to 0, a single-tenant store will only use one container to store all images. When set to an integer value between 1 and 32, a single-tenant store will use multiple containers to store images, and this value will determine how many containers are created. |
| boolean value | Whether to cache generated Swift temporary URLs. Setting it to true is only useful when an image caching proxy is used. Defaults to False. |
| integer value | The length of time in seconds that the temporary URL will be valid for. Defaults to 20 minutes. If some deploys get a 401 response code when trying to download from the temporary URL, try raising this duration. This value must be greater than or equal to the value for swift_temp_url_expected_download_start_delay |
| integer value | This is the delay (in seconds) from the time of the deploy request (when the Swift temporary URL is generated) to when the IPA ramdisk starts up and URL is used for the image download. This value is used to check if the Swift temporary URL duration is large enough to let the image download begin. Also if temporary URL caching is enabled this will determine if a cached entry will still be valid when the download starts. swift_temp_url_duration value must be greater than or equal to this option’s value. Defaults to 0. |
| string value | The secret token given to Swift to allow temporary URL downloads. Required for temporary URLs. For the Swift backend, the key on the service project (as set in the [swift] section) is used by default. |
| string value | Scope for system operations |
| string value | Tenant ID |
| string value | Tenant Name |
| integer value | Timeout value for http requests |
| string value | Trust ID |
| string value | User’s domain id |
| string value | User’s domain name |
| string value | User id |
| string value | Username |
| list value | List of interfaces, in order of preference, for endpoint URL. |
| string value | Minimum Major API version within a given Major API version for endpoint URL discovery. Mutually exclusive with min_version and max_version |
7.1.19. ilo
The following table outlines the options available under the [ilo]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | CA certificate file to validate iLO. |
| integer value | Priority for clear_secure_boot_keys clean step. This step is not enabled by default. It can be enabled to clear all secure boot keys enrolled with iLO. |
| integer value | Priority for reset_bios_to_default clean step. |
| integer value | Priority for reset_ilo clean step. |
| integer value | Priority for reset_ilo_credential clean step. This step requires "ilo_change_password" parameter to be updated in nodes’s driver_info with the new password. |
| integer value | Priority for reset_secure_boot_keys clean step. This step will reset the secure boot keys to manufacturing defaults. |
| port value | Port to be used for iLO operations |
| integer value | Timeout (in seconds) for iLO operations |
| string value | Default boot mode to be used in provisioning when "boot_mode" capability is not provided in the "properties/capabilities" of the node. The default is "auto" for backward compatibility. When "auto" is specified, default boot mode will be selected based on boot mode settings on the system. |
| integer value | Number of times a power operation needs to be retried |
| integer value | Amount of time in seconds to wait in between power operations |
| string value | The Swift iLO container to store data. |
| integer value | Amount of time in seconds for Swift objects to auto-expire. |
| boolean value | Set this to True to use http web server to host floppy images and generated boot ISO. This requires http_root and http_url to be configured in the [deploy] section of the config file. If this is set to False, then Ironic will use Swift to host the floppy images and generated boot_iso. |
7.1.20. inspector
The following table outlines the options available under the [inspector]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Authentication URL |
| string value | Authentication type to load |
| string value | PEM encoded Certificate Authority to use when verifying HTTPs connections. |
| string value | PEM encoded client certificate cert file |
| string value | Optional domain ID to use with v3 and v2 parameters. It will be used for both the user and project domain in v3 and ignored in v2 authentication. |
| string value | Optional domain name to use with v3 API and v2 parameters. It will be used for both the user and project domain in v3 and ignored in v2 authentication. |
| string value | Domain ID to scope to |
| string value | Domain name to scope to |
| boolean value | whether to enable inspection using ironic-inspector. This option does not affect new-style dynamic drivers and the fake_inspector driver. |
| string value |
Always use this endpoint URL for requests for this client. NOTE: The unversioned endpoint should be specified here; to request a particular API version, use the |
| boolean value | Verify HTTPS connections. |
| string value | PEM encoded client certificate key file |
| string value | The maximum major version of a given API, intended to be used as the upper bound of a range with min_version. Mutually exclusive with version. |
| string value | The minimum major version of a given API, intended to be used as the lower bound of a range with max_version. Mutually exclusive with version. If min_version is given with no max_version it is as if max version is "latest". |
| string value | User’s password |
| string value | Domain ID containing project |
| string value | Domain name containing project |
| string value | Project ID to scope to |
| string value | Project name to scope to |
| string value | The default region_name for endpoint URL discovery. |
| string value | The default service_name for endpoint URL discovery. |
| string value | The default service_type for endpoint URL discovery. |
| string value | ironic-inspector HTTP endpoint. If this is not set, the service catalog will be used. |
| integer value | period (in seconds) to check status of nodes on inspection |
| string value | Scope for system operations |
| string value | Tenant ID |
| string value | Tenant Name |
| integer value | Timeout value for http requests |
| string value | Trust ID |
| string value | User’s domain id |
| string value | User’s domain name |
| string value | User id |
| string value | Username |
| list value | List of interfaces, in order of preference, for endpoint URL. |
| string value | Minimum Major API version within a given Major API version for endpoint URL discovery. Mutually exclusive with min_version and max_version |
7.1.21. ipmi
The following table outlines the options available under the [ipmi]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| integer value | Maximum time in seconds to retry retryable IPMI operations. (An operation is retryable, for example, if the requested operation fails because the BMC is busy.) Setting this too high can cause the sync power state periodic task to hang when there are slow or unresponsive BMCs. |
| integer value | Minimum time, in seconds, between IPMI operations sent to a server. There is a risk with some hardware that setting this too low may cause the BMC to crash. Recommended setting is 5 seconds. |
| integer value | Maximum time in seconds to retry IPMI operations. Setting this too high can cause the sync power state periodic task to hang when there are slow or unresponsive BMCs. |
7.1.22. irmc
The following table outlines the options available under the [irmc]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Authentication method to be used for iRMC operations |
| integer value | Priority for restore_irmc_bios_config clean step. |
| integer value | Timeout (in seconds) for iRMC operations |
| list value | List of vendor IDs and device IDs for GPU device to inspect. List items are in format vendorID/deviceID and separated by commas. GPU inspection will use this value to count the number of GPU device in a node. If this option is not defined, then leave out pci_gpu_devices in capabilities property. Sample gpu_ids value: 0x1000/0x0079,0x2100/0x0080 |
| port value | Port to be used for iRMC operations |
| string value | IP of remote image server |
| string value | share name of remote_image_server |
| string value | Ironic conductor node’s "NFS" or "CIFS" root path |
| string value | Share type of virtual media |
`remote_image_user_domain = ` | string value | Domain name of remote_image_user_name |
| string value | User name of remote_image_server |
| string value | Password of remote_image_user_name |
| string value | Sensor data retrieval method. |
| string value | SNMP community. Required for versions "v1" and "v2c" |
| integer value | SNMP polling interval in seconds |
| port value | SNMP port |
| string value | SNMP security name. Required for version "v3" |
| string value | SNMP protocol version |
7.1.23. ironic_lib
The following table outlines the options available under the [ironic_lib]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Command that is prefixed to commands that are run as root. If not specified, no commands are run as root. |
7.1.24. iscsi
The following table outlines the options available under the [iscsi]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| port value | The port number on which the iSCSI portal listens for incoming connections. |
7.1.25. keystone
The following table outlines the options available under the [keystone]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | The region used for getting endpoints of OpenStack services. |
7.1.26. keystone_authtoken
The following table outlines the options available under the [keystone_authtoken]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Config Section from which to load plugin specific options |
| string value | Authentication type to load |
| string value | Complete "public" Identity API endpoint. This endpoint should not be an "admin" endpoint, as it should be accessible by all end users. Unauthenticated clients are redirected to this endpoint to authenticate. Although this endpoint should ideally be unversioned, client support in the wild varies. If you’re using a versioned v2 endpoint here, then this should not be the same endpoint the service user utilizes for validating tokens, because normal end users may not be able to reach that endpoint. This option is deprecated in favor of www_authenticate_uri and will be removed in the S release. |
| string value | API version of the admin Identity API endpoint. |
| string value |
Request environment key where the Swift cache object is stored. When auth_token middleware is deployed with a Swift cache, use this option to have the middleware share a caching backend with swift. Otherwise, use the |
| string value | A PEM encoded Certificate Authority to use when verifying HTTPs connections. Defaults to system CAs. |
| string value | Required if identity server requires client certificate |
| boolean value | If true, the revocation list will be checked for cached tokens. This requires that PKI tokens are configured on the identity server. |
| boolean value | Do not handle authorization requests within the middleware, but delegate the authorization decision to downstream WSGI components. |
| string value | Used to control the use and type of token binding. Can be set to: "disabled" to not check token binding. "permissive" (default) to validate binding information if the bind type is of a form known to the server and ignore it if not. "strict" like "permissive" but if the bind type is unknown the token will be rejected. "required" any form of token binding is needed to be allowed. Finally the name of a binding method that must be present in tokens. |
| list value | Hash algorithms to use for hashing PKI tokens. This may be a single algorithm or multiple. The algorithms are those supported by Python standard hashlib.new(). The hashes will be tried in the order given, so put the preferred one first for performance. The result of the first hash will be stored in the cache. This will typically be set to multiple values only while migrating from a less secure algorithm to a more secure one. Once all the old tokens are expired this option should be set to a single value for better performance. |
| integer value | Request timeout value for communicating with Identity API server. |
| integer value | How many times are we trying to reconnect when communicating with Identity API Server. |
| boolean value | (Optional) Indicate whether to set the X-Service-Catalog header. If False, middleware will not ask for service catalog on token validation and will not set the X-Service-Catalog header. |
| boolean value | Verify HTTPS connections. |
| string value | Required if identity server requires client certificate |
| integer value | (Optional) Number of seconds that an operation will wait to get a memcached client connection from the pool. |
| integer value | (Optional) Number of seconds memcached server is considered dead before it is tried again. |
| integer value | (Optional) Maximum total number of open connections to every memcached server. |
| integer value | (Optional) Socket timeout in seconds for communicating with a memcached server. |
| integer value | (Optional) Number of seconds a connection to memcached is held unused in the pool before it is closed. |
| string value | (Optional, mandatory if memcache_security_strategy is defined) This string is used for key derivation. |
| string value | (Optional) If defined, indicate whether token data should be authenticated or authenticated and encrypted. If MAC, token data is authenticated (with HMAC) in the cache. If ENCRYPT, token data is encrypted and authenticated in the cache. If the value is not one of these options or empty, auth_token will raise an exception on initialization. |
| boolean value | (Optional) Use the advanced (eventlet safe) memcached client pool. The advanced pool will only work under python 2.x. |
| list value | Optionally specify a list of memcached server(s) to use for caching. If left undefined, tokens will instead be cached in-process. |
| string value | The region in which the identity server can be found. |
| integer value | Determines the frequency at which the list of revoked tokens is retrieved from the Identity service (in seconds). A high number of revocation events combined with a low cache duration may significantly reduce performance. Only valid for PKI tokens. This option has been deprecated in the Ocata release and will be removed in the P release. |
| list value | A choice of roles that must be present in a service token. Service tokens are allowed to request that an expired token can be used and so this check should tightly control that only actual services should be sending this token. Roles here are applied as an ANY check so any role in this list must be present. For backwards compatibility reasons this currently only affects the allow_expired check. |
| boolean value | For backwards compatibility reasons we must let valid service tokens pass that don’t pass the service_token_roles check as valid. Setting this true will become the default in a future release and should be enabled if possible. |
| string value | Directory used to cache files related to PKI tokens. This option has been deprecated in the Ocata release and will be removed in the P release. |
| integer value | In order to prevent excessive effort spent validating tokens, the middleware caches previously-seen tokens for a configurable duration (in seconds). Set to -1 to disable caching completely. |
| string value | Complete "public" Identity API endpoint. This endpoint should not be an "admin" endpoint, as it should be accessible by all end users. Unauthenticated clients are redirected to this endpoint to authenticate. Although this endpoint should ideally be unversioned, client support in the wild varies. If you’re using a versioned v2 endpoint here, then this should not be the same endpoint the service user utilizes for validating tokens, because normal end users may not be able to reach that endpoint. |
7.1.27. matchmaker_redis
The following table outlines the options available under the [matchmaker_redis]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| integer value | Time in ms to wait before the transaction is killed. |
| string value | Host to locate redis. |
`password = ` | string value | Password for Redis server (optional). |
| port value | Use this port to connect to redis host. |
| string value | Redis replica set name. |
| list value | List of Redis Sentinel hosts (fault tolerance mode), e.g., [host:port, host1:port … ] |
| integer value | Timeout in ms on blocking socket operations. |
| integer value | Time in ms to wait between connection attempts. |
7.1.28. metrics
The following table outlines the options available under the [metrics]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Backend for the agent ramdisk to use for metrics. Default possible backends are "noop" and "statsd". |
| string value | Prefix all metric names sent by the agent ramdisk with this value. The format of metric names is [global_prefix.][uuid.][host_name.]prefix.metric_name. |
| boolean value | Prepend the hostname to all metric names sent by the agent ramdisk. The format of metric names is [global_prefix.][uuid.][host_name.]prefix.metric_name. |
| boolean value | Split the prepended host value by "." and reverse it for metrics sent by the agent ramdisk (to better match the reverse hierarchical form of domain names). |
| boolean value | Prepend the node’s Ironic uuid to all metric names sent by the agent ramdisk. The format of metric names is [global_prefix.][uuid.][host_name.]prefix.metric_name. |
| string value | Backend to use for the metrics system. |
| string value | Prefix all metric names with this value. By default, there is no global prefix. The format of metric names is [global_prefix.][host_name.]prefix.metric_name. |
| boolean value | Prepend the hostname to all metric names. The format of metric names is [global_prefix.][host_name.]prefix.metric_name. |
| boolean value | Split the prepended host value by "." and reverse it (to better match the reverse hierarchical form of domain names). |
7.1.29. metrics_statsd
The following table outlines the options available under the [metrics_statsd]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Host for the agent ramdisk to use with the statsd backend. This must be accessible from networks the agent is booted on. |
| port value | Port for the agent ramdisk to use with the statsd backend. |
| string value | Host for use with the statsd backend. |
| port value | Port to use with the statsd backend. |
7.1.30. neutron
The following table outlines the options available under the [neutron]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Authentication URL |
| string value | Authentication strategy to use when connecting to neutron. Running neutron in noauth mode (related to but not affected by this setting) is insecure and should only be used for testing. |
| string value | Authentication type to load |
| string value | PEM encoded Certificate Authority to use when verifying HTTPs connections. |
| string value | PEM encoded client certificate cert file |
| string value | Neutron network UUID or name for the ramdisk to be booted into for cleaning nodes. Required for "neutron" network interface. It is also required if cleaning nodes when using "flat" network interface or "neutron" DHCP provider. If a name is provided, it must be unique among all networks or cleaning will fail. |
| list value | List of Neutron Security Group UUIDs to be applied during cleaning of the nodes. Optional for the "neutron" network interface and not used for the "flat" or "noop" network interfaces. If not specified, default security group is used. |
| string value | Optional domain ID to use with v3 and v2 parameters. It will be used for both the user and project domain in v3 and ignored in v2 authentication. |
| string value | Optional domain name to use with v3 API and v2 parameters. It will be used for both the user and project domain in v3 and ignored in v2 authentication. |
| string value | Domain ID to scope to |
| string value | Domain name to scope to |
| string value |
Always use this endpoint URL for requests for this client. NOTE: The unversioned endpoint should be specified here; to request a particular API version, use the |
| boolean value | Verify HTTPS connections. |
| string value | PEM encoded client certificate key file |
| string value | The maximum major version of a given API, intended to be used as the upper bound of a range with min_version. Mutually exclusive with version. |
| string value | The minimum major version of a given API, intended to be used as the lower bound of a range with max_version. Mutually exclusive with version. If min_version is given with no max_version it is as if max version is "latest". |
| string value | User’s password |
| integer value | Delay value to wait for Neutron agents to setup sufficient DHCP configuration for port. |
| string value | Domain ID containing project |
| string value | Domain name containing project |
| string value | Project ID to scope to |
| string value | Project name to scope to |
| string value | Neutron network UUID or name for the ramdisk to be booted into for provisioning nodes. Required for "neutron" network interface. If a name is provided, it must be unique among all networks or deploy will fail. |
| list value | List of Neutron Security Group UUIDs to be applied during provisioning of the nodes. Optional for the "neutron" network interface and not used for the "flat" or "noop" network interfaces. If not specified, default security group is used. |
| string value | The default region_name for endpoint URL discovery. |
| string value | Neutron network UUID or name for booting the ramdisk for rescue mode. This is not the network that the rescue ramdisk will use post-boot — the tenant network is used for that. Required for "neutron" network interface, if rescue mode will be used. It is not used for the "flat" or "noop" network interfaces. If a name is provided, it must be unique among all networks or rescue will fail. |
| list value | List of Neutron Security Group UUIDs to be applied during the node rescue process. Optional for the "neutron" network interface and not used for the "flat" or "noop" network interfaces. If not specified, the default security group is used. |
| integer value | Client retries in the case of a failed request. |
| string value | The default service_name for endpoint URL discovery. |
| string value | The default service_type for endpoint URL discovery. |
| string value | Scope for system operations |
| string value | Tenant ID |
| string value | Tenant Name |
| integer value | Timeout value for http requests |
| string value | Trust ID |
| string value | URL for connecting to neutron. Default value translates to http://$my_ip:9696 when auth_strategy is noauth, and to discovery from Keystone catalog when auth_strategy is keystone. |
| integer value | Timeout value for connecting to neutron in seconds. |
| string value | User’s domain id |
| string value | User’s domain name |
| string value | User id |
| string value | Username |
| list value | List of interfaces, in order of preference, for endpoint URL. |
| string value | Minimum Major API version within a given Major API version for endpoint URL discovery. Mutually exclusive with min_version and max_version |
7.1.31. oneview
The following table outlines the options available under the [oneview]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| boolean value | Option to allow insecure connection with OneView. |
| boolean value | Whether to enable the periodic tasks for OneView driver be aware when OneView hardware resources are taken and released by Ironic or OneView users and proactively manage nodes in clean fail state according to Dynamic Allocation model of hardware resources allocation in OneView. |
| string value | URL where OneView is available. |
| string value | OneView password to be used. |
| integer value | Period (in seconds) for periodic tasks to be executed when enable_periodic_tasks=True. |
| string value | Path to CA certificate. |
| string value | OneView username to be used. |
7.1.32. oslo_concurrency
The following table outlines the options available under the [oslo_concurrency]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| boolean value | Enables or disables inter-process locks. |
| string value | Directory to use for lock files. For security, the specified directory should only be writable by the user running the processes that need locking. Defaults to environment variable OSLO_LOCK_PATH. If external locks are used, a lock path must be set. |
7.1.33. oslo_messaging_amqp
The following table outlines the options available under the [oslo_messaging_amqp]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Indicates the addressing mode used by the driver. Permitted values: legacy - use legacy non-routable addressing routable - use routable addresses dynamic - use legacy addresses if the message bus does not support routing otherwise use routable addressing |
| boolean value | Accept clients using either SSL or plain TCP |
| string value | Appended to the address prefix when sending to a group of consumers. Used by the message bus to identify messages that should be delivered in a round-robin fashion across consumers. |
| string value | address prefix used when broadcasting to all servers |
| integer value | Increase the connection_retry_interval by this many seconds after each unsuccessful failover attempt. |
| integer value | Seconds to pause before attempting to re-connect. |
| integer value | Maximum limit for connection_retry_interval + connection_retry_backoff |
| string value | Name for the AMQP container. must be globally unique. Defaults to a generated UUID |
| string value | Exchange name used in notification addresses. Exchange name resolution precedence: Target.exchange if set else default_notification_exchange if set else control_exchange if set else notify |
| integer value | The deadline for a sent notification message delivery. Only used when caller does not provide a timeout expiry. |
| integer value | The maximum number of attempts to re-send a reply message which failed due to a recoverable error. |
| integer value | The deadline for an rpc reply message delivery. |
| string value | Exchange name used in RPC addresses. Exchange name resolution precedence: Target.exchange if set else default_rpc_exchange if set else control_exchange if set else rpc |
| integer value | The deadline for an rpc cast or call message delivery. Only used when caller does not provide a timeout expiry. |
| integer value | The duration to schedule a purge of idle sender links. Detach link after expiry. |
| string value | address prefix when sending to any server in group |
| integer value | Timeout for inactive connections (in seconds) |
| integer value | Time to pause between re-connecting an AMQP 1.0 link that failed due to a recoverable error. |
| string value | Appended to the address prefix when sending a fanout message. Used by the message bus to identify fanout messages. |
| string value | Address prefix for all generated Notification addresses |
| integer value | Window size for incoming Notification messages |
`password = ` | string value | Password for message broker authentication |
| multi valued | Send messages of this type pre-settled. Pre-settled messages will not receive acknowledgement from the peer. Note well: pre-settled messages may be silently discarded if the delivery fails. Permitted values: rpc-call - send RPC Calls pre-settled rpc-reply- send RPC Replies pre-settled rpc-cast - Send RPC Casts pre-settled notify - Send Notifications pre-settled |
| boolean value | Enable virtual host support for those message buses that do not natively support virtual hosting (such as qpidd). When set to true the virtual host name will be added to all message bus addresses, effectively creating a private subnet per virtual host. Set to False if the message bus supports virtual hosting using the hostname field in the AMQP 1.0 Open performative as the name of the virtual host. |
| integer value | Window size for incoming RPC Reply messages. |
| string value | Address prefix for all generated RPC addresses |
| integer value | Window size for incoming RPC Request messages |
`sasl_config_dir = ` | string value | Path to directory that contains the SASL configuration |
`sasl_config_name = ` | string value | Name of configuration file (without .conf suffix) |
`sasl_default_realm = ` | string value | SASL realm to use if no realm present in username |
`sasl_mechanisms = ` | string value | Space separated list of acceptable SASL mechanisms |
| string value | address prefix used when sending to a specific server |
| boolean value | Attempt to connect via SSL. If no other ssl-related parameters are given, it will use the system’s CA-bundle to verify the server’s certificate. |
`ssl_ca_file = ` | string value | CA certificate PEM file used to verify the server’s certificate |
`ssl_cert_file = ` | string value | Self-identifying certificate PEM file for client authentication |
`ssl_key_file = ` | string value | Private key PEM file used to sign ssl_cert_file certificate (optional) |
| string value | Password for decrypting ssl_key_file (if encrypted) |
| boolean value | By default SSL checks that the name in the server’s certificate matches the hostname in the transport_url. In some configurations it may be preferable to use the virtual hostname instead, for example if the server uses the Server Name Indication TLS extension (rfc6066) to provide a certificate per virtual host. Set ssl_verify_vhost to True if the server’s SSL certificate uses the virtual host name instead of the DNS name. |
| boolean value | Debug: dump AMQP frames to stdout |
| string value | Appended to the address prefix when sending to a particular RPC/Notification server. Used by the message bus to identify messages sent to a single destination. |
`username = ` | string value | User name for message broker authentication |
7.1.34. oslo_messaging_kafka
The following table outlines the options available under the [oslo_messaging_kafka]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| integer value | The pool size limit for connections expiration policy |
| integer value | The time-to-live in sec of idle connections in the pool |
| string value | Group id for Kafka consumer. Consumers in one group will coordinate message consumption |
| floating point value | Default timeout(s) for Kafka consumers |
| string value | Default Kafka broker Host |
| port value | Default Kafka broker Port |
| integer value | Max fetch bytes of Kafka consumer |
| integer value | Pool Size for Kafka Consumers |
| integer value | Size of batch for the producer async send |
| floating point value | Upper bound on the delay for KafkaProducer batching in seconds |
7.1.35. oslo_messaging_notifications
The following table outlines the options available under the [oslo_messaging_notifications]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| multi valued | The Drivers(s) to handle sending notifications. Possible values are messaging, messagingv2, routing, log, test, noop |
| integer value | The maximum number of attempts to re-send a notification message which failed to be delivered due to a recoverable error. 0 - No retry, -1 - indefinite |
| list value | AMQP topic used for OpenStack notifications. |
| string value | A URL representing the messaging driver to use for notifications. If not set, we fall back to the same configuration used for RPC. |
7.1.36. oslo_messaging_rabbit
The following table outlines the options available under the [oslo_messaging_rabbit]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| boolean value | Auto-delete queues in AMQP. |
| boolean value | Use durable queues in AMQP. |
| integer value | Maximum number of channels to allow |
| string value | Connection factory implementation |
| string value | Exchange name for sending notifications |
| integer value | Reconnecting retry count in case of connectivity problem during sending notification, -1 means infinite retry. |
| string value | Exchange name for sending RPC messages |
| integer value | Reconnecting retry count in case of connectivity problem during sending RPC message, -1 means infinite retry. If actual retry attempts in not 0 the rpc request could be processed more than one time |
| string value | Default serialization mechanism for serializing/deserializing outgoing/incoming messages |
| boolean value | Deprecated, use rpc_backend=kombu+memory or rpc_backend=fake |
| integer value | The maximum byte size for an AMQP frame |
| integer value | How often to send heartbeats for consumer’s connections |
| integer value | How often times during the heartbeat_timeout_threshold we check the heartbeat. |
| integer value | Number of seconds after which the Rabbit broker is considered down if heartbeat’s keep-alive fails (0 disable the heartbeat). EXPERIMENTAL |
| floating point value | Set delay for reconnection to some host which has connection error |
| string value | EXPERIMENTAL: Possible values are: gzip, bz2. If not set compression will not be used. This option may not be available in future versions. |
| string value | Determines how the next RabbitMQ node is chosen in case the one we are currently connected to becomes unavailable. Takes effect only if more than one RabbitMQ node is provided in config. |
| integer value | How long to wait a missing client before abandoning to send it its replies. This value should not be longer than rpc_response_timeout. |
| floating point value | How long to wait before reconnecting in response to an AMQP consumer cancel notification. |
| integer value | Max number of not acknowledged message which RabbitMQ can send to notification listener. |
| boolean value | Persist notification messages. |
| floating point value | Reconnecting retry delay in case of connectivity problem during sending notification message |
| integer value |
Maximum number of connections to create above |
| integer value | Maximum number of connections to keep queued. |
| integer value | Lifetime of a connection (since creation) in seconds or None for no recycling. Expired connections are closed on acquire. |
| integer value | Threshold at which inactive (since release) connections are considered stale in seconds or None for no staleness. Stale connections are closed on acquire. |
| integer value | Default number of seconds to wait for a connections to available |
| boolean value | Try to use HA queues in RabbitMQ (x-ha-policy: all). If you change this option, you must wipe the RabbitMQ database. In RabbitMQ 3.0, queue mirroring is no longer controlled by the x-ha-policy argument when declaring a queue. If you just want to make sure that all queues (except those with auto-generated names) are mirrored across all nodes, run: "rabbitmqctl set_policy HA ^(?!amq\.).* {"ha-mode": "all"} " |
| string value | The RabbitMQ broker address where a single node is used. |
| list value | RabbitMQ HA cluster host:port pairs. |
| integer value | Maximum interval of RabbitMQ connection retries. Default is 30 seconds. |
| string value | The RabbitMQ login method. |
| integer value | Maximum number of RabbitMQ connection retries. Default is 0 (infinite retry count). |
| string value | The RabbitMQ password. |
| port value | The RabbitMQ broker port where a single node is used. |
| integer value | Specifies the number of messages to prefetch. Setting to zero allows unlimited messages. |
| integer value | How long to backoff for between retries when connecting to RabbitMQ. |
| integer value | How frequently to retry connecting with RabbitMQ. |
| integer value | Positive integer representing duration in seconds for queue TTL (x-expires). Queues which are unused for the duration of the TTL are automatically deleted. The parameter affects only reply and fanout queues. |
| string value | The RabbitMQ userid. |
| string value | The RabbitMQ virtual host. |
| integer value | Max number of not acknowledged message which RabbitMQ can send to rpc listener. |
| integer value | Time to live for rpc queues without consumers in seconds. |
| string value | Exchange name for receiving RPC replies |
| integer value | Max number of not acknowledged message which RabbitMQ can send to rpc reply listener. |
| integer value | Reconnecting retry count in case of connectivity problem during sending reply. -1 means infinite retry during rpc_timeout |
| floating point value | Reconnecting retry delay in case of connectivity problem during sending reply. |
| floating point value | Reconnecting retry delay in case of connectivity problem during sending RPC message |
| floating point value | Set socket timeout in seconds for connection’s socket |
| boolean value | Enable SSL |
`ssl_ca_file = ` | string value | SSL certification authority file (valid only if SSL enabled). |
`ssl_cert_file = ` | string value | SSL cert file (valid only if SSL enabled). |
`ssl_key_file = ` | string value | SSL key file (valid only if SSL enabled). |
| dict value | Arguments passed to ssl.wrap_socket |
`ssl_version = ` | string value | SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some distributions. |
| floating point value | Set TCP_USER_TIMEOUT in seconds for connection’s socket |
7.1.37. oslo_messaging_zmq
The following table outlines the options available under the [oslo_messaging_zmq]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| integer value | Number of seconds to wait for an ack from a cast/call. After each retry attempt this timeout is multiplied by some specified multiplier. |
| integer value | Number to multiply base ack timeout by after each retry attempt. |
| integer value | Expiration timeout in seconds of a sent/received message after which it is not tracked anymore by a client/server. |
| integer value | The default number of seconds that poll should wait. Poll raises timeout exception when timeout expired. |
| integer value | Default number of message sending attempts in case of any problems occurred: positive value N means at most N retries, 0 means no retries, None or -1 (or any other negative values) mean to retry forever. This option is used only if acknowledgments are enabled. |
| integer value | Maximum number of (green) threads to work concurrently. |
| boolean value | Wait for message acknowledgements from receivers. This mechanism works only via proxy without PUB/SUB. |
| string value | ZeroMQ bind address. Should be a wildcard (*), an ethernet interface, or IP. The "host" option should point or resolve to this address. |
| integer value | Number of retries to find free port number before fail with ZMQBindError. |
| integer value | Number of ZeroMQ contexts, defaults to 1. |
| string value | Name of this node. Must be a valid hostname, FQDN, or IP address. Must match "host" option, if running Nova. |
| string value | Directory for holding IPC sockets. |
| string value | MatchMaker driver. |
| integer value | Maximal port number for random ports range. |
| port value | Minimal port number for random ports range. |
| string value | Default serialization mechanism for serializing/deserializing outgoing/incoming messages |
| integer value | Maximum number of ingress messages to locally buffer per topic. Default is unlimited. |
| list value | List of publisher hosts SubConsumer can subscribe on. This option has higher priority then the default publishers list taken from the matchmaker. |
| boolean value | This option makes direct connections dynamic or static. It makes sense only with use_router_proxy=False which means to use direct connections for direct message types (ignored otherwise). |
| boolean value | Use PUB/SUB pattern for fanout methods. PUB/SUB always uses proxy. |
| boolean value | Use ROUTER remote proxy. |
| integer value | How many additional connections to a host will be made for failover reasons. This option is actual only in dynamic connections mode. |
| boolean value | This option configures round-robin mode in zmq socket. True means not keeping a queue when server side disconnects. False means to keep queue and messages even if server is disconnected, when the server appears we send all accumulated messages to it. |
| integer value | Number of seconds to wait before all pending messages will be sent after closing a socket. The default value of -1 specifies an infinite linger period. The value of 0 specifies no linger period. Pending messages shall be discarded immediately when the socket is closed. Positive values specify an upper bound for the linger period. |
| integer value | Expiration timeout in seconds of a name service record about existing target ( < 0 means no timeout). |
| integer value | Update period in seconds of a name service record about existing target. |
| integer value | Enable/disable TCP keepalive (KA) mechanism. The default value of -1 (or any other negative value) means to skip any overrides and leave it to OS default; 0 and 1 (or any other positive value) mean to disable and enable the option respectively. |
| integer value | The number of retransmissions to be carried out before declaring that remote end is not available. The default value of -1 (or any other negative value and 0) means to skip any overrides and leave it to OS default. |
| integer value | The duration between two keepalive transmissions in idle condition. The unit is platform dependent, for example, seconds in Linux, milliseconds in Windows etc. The default value of -1 (or any other negative value and 0) means to skip any overrides and leave it to OS default. |
| integer value | The duration between two successive keepalive retransmissions, if acknowledgement to the previous keepalive transmission is not received. The unit is platform dependent, for example, seconds in Linux, milliseconds in Windows etc. The default value of -1 (or any other negative value and 0) means to skip any overrides and leave it to OS default. |
7.1.38. oslo_policy
The following table outlines the options available under the [oslo_policy]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| boolean value |
This option controls whether or not to enforce scope when evaluating policies. If |
| string value | Default rule. Enforced when a requested rule is not found. |
| multi valued | Directories where policy configuration files are stored. They can be relative to any directory in the search path defined by the config_dir option, or absolute paths. The file defined by policy_file must exist for these directories to be searched. Missing or empty directories are ignored. |
| string value | The file that defines policies. |
| string value | Content Type to send and receive data for REST based policy check |
| string value | Absolute path to ca cert file for REST based policy check |
| string value | Absolute path to client cert for REST based policy check |
| string value | Absolute path client key file REST based policy check |
| boolean value | server identity verification for REST based policy check |
7.1.39. profiler
The following table outlines the options available under the [profiler]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Connection string for a notifier backend. Default value is messaging:// which sets the notifier to oslo_messaging. Examples of possible values:
|
| boolean value | Enables the profiling for all services on this node. Default value is False (fully disable the profiling feature). Possible values:
|
| string value | Document type for notification indexing in elasticsearch. |
| integer value | Elasticsearch splits large requests in batches. This parameter defines maximum size of each batch (for example: es_scroll_size=10000). |
| string value | This parameter is a time value parameter (for example: es_scroll_time=2m), indicating for how long the nodes that participate in the search will maintain relevant resources in order to continue and support it. |
| string value | Secret key(s) to use for encrypting context data for performance profiling. This string value should have the following format: <key1>[,<key2>,…<keyn>], where each key is some random string. A user who triggers the profiling via the REST API has to set one of these keys in the headers of the REST API call to include profiling results of this node for this particular project. Both "enabled" flag and "hmac_keys" config options should be set to enable profiling. Also, to generate correct profiling information across all services at least one key needs to be consistent between OpenStack projects. This ensures it can be used from client side to generate the trace, containing information from all possible resources. |
| string value | Redissentinel uses a service name to identify a master redis service. This parameter defines the name (for example: sentinal_service_name=mymaster). |
| floating point value | Redissentinel provides a timeout option on the connections. This parameter defines that timeout (for example: socket_timeout=0.1). |
| boolean value | Enables SQL requests profiling in services. Default value is False (SQL requests won’t be traced). Possible values:
|
7.1.40. pxe
The following table outlines the options available under the [pxe]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Default file system format for ephemeral partition, if one is created. |
| integer value | The permission that will be applied to the TFTP folders upon creation. This should be set to the permission such that the tftpserver has access to read the contents of the configured TFTP folder. This setting is only required when the operating system’s umask is restrictive such that ironic-conductor is creating files that cannot be read by the TFTP server. Setting to <None> will result in the operating system’s umask to be utilized for the creation of new tftp folders. It is recommended that an octal representation is specified. For example: 0o755 |
| integer value | Maximum size (in MiB) of cache for master images, including those in use. |
| integer value | Maximum TTL (in minutes) for old master images in cache. |
| string value | On the ironic-conductor node, directory where images are stored on disk. |
| string value | On the ironic-conductor node, directory where master instance images are stored on disk. Setting to the empty string disables image caching. |
| string value | The IP version that will be used for PXE booting. Defaults to 4. EXPERIMENTAL |
| string value | On ironic-conductor node, the path to the main iPXE script file. |
| boolean value | Enable iPXE boot. |
| integer value | Timeout value (in seconds) for downloading an image via iPXE. Defaults to 0 (no timeout) |
| boolean value | Download deploy and rescue images directly from swift using temporary URLs. If set to false (default), images are downloaded to the ironic-conductor node and served over its local HTTP server. Applicable only when ipxe_enabled option is set to true. |
| string value | Additional append parameters for baremetal PXE boot. |
| string value | Bootfile DHCP parameter. |
| dict value | Bootfile DHCP parameter per node architecture. For example: aarch64:grubaa64.efi |
| string value | On ironic-conductor node, template file for PXE configuration. |
| dict value | On ironic-conductor node, template file for PXE configuration per node architecture. For example: aarch64:/opt/share/grubaa64_pxe_config.template |
| string value | On ironic-conductor node, directory where master TFTP images are stored on disk. Setting to <None> disables image caching. |
| string value | ironic-conductor node’s TFTP root path. The ironic-conductor must have read/write access to this path. |
| string value | IP address of ironic-conductor node’s TFTP server. |
| string value | Bootfile DHCP parameter for UEFI boot mode. |
| string value | On ironic-conductor node, template file for PXE configuration for UEFI boot loader. |
7.1.41. service_catalog
The following table outlines the options available under the [service_catalog]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Authentication URL |
| string value | Authentication type to load |
| string value | PEM encoded Certificate Authority to use when verifying HTTPs connections. |
| string value | PEM encoded client certificate cert file |
| string value | Optional domain ID to use with v3 and v2 parameters. It will be used for both the user and project domain in v3 and ignored in v2 authentication. |
| string value | Optional domain name to use with v3 API and v2 parameters. It will be used for both the user and project domain in v3 and ignored in v2 authentication. |
| string value | Domain ID to scope to |
| string value | Domain name to scope to |
| string value |
Always use this endpoint URL for requests for this client. NOTE: The unversioned endpoint should be specified here; to request a particular API version, use the |
| boolean value | Verify HTTPS connections. |
| string value | PEM encoded client certificate key file |
| string value | The maximum major version of a given API, intended to be used as the upper bound of a range with min_version. Mutually exclusive with version. |
| string value | The minimum major version of a given API, intended to be used as the lower bound of a range with max_version. Mutually exclusive with version. If min_version is given with no max_version it is as if max version is "latest". |
| string value | User’s password |
| string value | Domain ID containing project |
| string value | Domain name containing project |
| string value | Project ID to scope to |
| string value | Project name to scope to |
| string value | The default region_name for endpoint URL discovery. |
| string value | The default service_name for endpoint URL discovery. |
| string value | The default service_type for endpoint URL discovery. |
| string value | Scope for system operations |
| string value | Tenant ID |
| string value | Tenant Name |
| integer value | Timeout value for http requests |
| string value | Trust ID |
| string value | User’s domain id |
| string value | User’s domain name |
| string value | User id |
| string value | Username |
| list value | List of interfaces, in order of preference, for endpoint URL. |
| string value | Minimum Major API version within a given Major API version for endpoint URL discovery. Mutually exclusive with min_version and max_version |
7.1.42. snmp
The following table outlines the options available under the [snmp]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| integer value | Seconds to wait for power action to be completed |
| integer value | Time (in seconds) to sleep between when rebooting (powering off and on again) |
| integer value | Maximum number of UDP request retries, 0 means no retries. |
| floating point value | Response timeout in seconds used for UDP transport. Timeout should be a multiple of 0.5 seconds and is applicable to each retry. |
7.1.43. ssl
The following table outlines the options available under the [ssl]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | CA certificate file to use to verify connecting clients. |
| string value | Certificate file to use when starting the server securely. |
| string value | Sets the list of available ciphers. value should be a string in the OpenSSL cipher list format. |
| string value | Private key file to use when starting the server securely. |
| string value | SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some distributions. |
7.1.44. swift
The following table outlines the options available under the [swift]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Authentication URL |
| string value | Authentication type to load |
| string value | PEM encoded Certificate Authority to use when verifying HTTPs connections. |
| string value | PEM encoded client certificate cert file |
| string value | Optional domain ID to use with v3 and v2 parameters. It will be used for both the user and project domain in v3 and ignored in v2 authentication. |
| string value | Optional domain name to use with v3 API and v2 parameters. It will be used for both the user and project domain in v3 and ignored in v2 authentication. |
| string value | Domain ID to scope to |
| string value | Domain name to scope to |
| string value |
Always use this endpoint URL for requests for this client. NOTE: The unversioned endpoint should be specified here; to request a particular API version, use the |
| boolean value | Verify HTTPS connections. |
| string value | PEM encoded client certificate key file |
| string value | The maximum major version of a given API, intended to be used as the upper bound of a range with min_version. Mutually exclusive with version. |
| string value | The minimum major version of a given API, intended to be used as the lower bound of a range with max_version. Mutually exclusive with version. If min_version is given with no max_version it is as if max version is "latest". |
| string value | User’s password |
| string value | Domain ID containing project |
| string value | Domain name containing project |
| string value | Project ID to scope to |
| string value | Project name to scope to |
| string value | The default region_name for endpoint URL discovery. |
| string value | The default service_name for endpoint URL discovery. |
| string value | The default service_type for endpoint URL discovery. |
| integer value | Maximum number of times to retry a Swift request, before failing. |
| string value | Scope for system operations |
| string value | Tenant ID |
| string value | Tenant Name |
| integer value | Timeout value for http requests |
| string value | Trust ID |
| string value | User’s domain id |
| string value | User’s domain name |
| string value | User id |
| string value | Username |
| list value | List of interfaces, in order of preference, for endpoint URL. |
| string value | Minimum Major API version within a given Major API version for endpoint URL discovery. Mutually exclusive with min_version and max_version |
7.1.45. xclarity
The following table outlines the options available under the [xclarity]
group in the /etc/ironic/ironic.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | IP address of XClarity controller. |
| string value | Password for XClarity controller username. |
| port value | Port to be used for XClarity operations. |
| string value | Username to access the XClarity controller. |