Train Series Release Notes


New Features

  • The ironic::conductor class now supports the following two new parameters.

    • heartbeat_interval

    • heartbeat_timeout

  • The new ironic::disk_utils class has been added.

  • It is now possible to disable sequential ip addressing in the ironic inspector dnsmasq service. The ironic::inspector class has the new parameter dnsmasq_dhcp_sequential_ip (defaults to: true). Set it to false to disable sequential ip addressing.

  • The new ironic::keystone::authtoken::interface parameter has been added, which can be used to set the interface parameter in authtoken middleware.

  • Adds support for the ironic.conf parameters [pxe]ipxe_bootfile_name and [pxe]ipxe_config_template which are utilized by the ipxe boot interface in Ironic. These settings use the manifest parameters ironic::drivers::pxe::ipxe_bootfile_name and ironic::drivers::pxe::ipxe_config_template respectively.

  • Adds support for the ironic.conf parameter [pxe]uefi_ipxe_bootfile_name to be explicitly set using the ironic::drivers::pxe::uefi_ipxe_bootfile_name manifest parameter.

  • The new ironic::pxe::uefi_ipxe_bootfile_name parameter has been added. This parameter is used to determine name of the efi file used to boot nodes with UEFI + iPXE.

Upgrade Notes

  • The manifest now no longer applies override defaults for a number of ironic.conf settings, as they match the default settings the project utilizes. These manifest parameters are ironic::drivers::pxe::pxe_bootfile_name, ironic::drivers::pxe::pxe_config_template, ironic::drivers::pxe::tftp_root, ironic::drivers::pxe::tftp_master_path.

Bug Fixes

  • Fixed an issue where dnsmasq DHCP configuration for ironic- inspector would point to the wrong UEFI iPXE bootfile. See bug: 1952652.

  • Fixes a potential issue where use of the ironic::drivers::pxe::ipxe_enabled parameter would cause settings specific to ipxe to be set overriding the pxe boot interface’s defaults in Ironic. This resulted in operators being unable to choose to boot a node from pxe and not ipxe. Now the settings are not overriden as the ironic::drivers::pxe::ipxe_enabled parameter.

  • Fixes support for ppc64le to allow its operation to co-exist with pxe_transfer_protocol being set to http. This is because the ppc64le archtecture does not use an intermediate boot loader to perform PXE operations, and only supports use of TFTP based transfers.


New Features

  • Supports configuring max_command_attempts and command_timeout in ironic::drivers::agent.

  • For baremetal operations on DHCPv6-stateful networks multiple IPv6 addresses can now be allocated for neutron ports created for provisioning, cleaning, rescue or inspection. The new parameter ironic::neutron::dhcpv6_stateful_address_count controls the number of addresses to allocate.

  • The parameter ironic::pxe::ipxe_name_base has been added, which allows alternative ipxe files to be copied to /tftpboot/ipxe.efi. For example, setting this to ‘ipxe-snponly’ on CentOS8 would result in the source file being /usr/share/ipxe/ipxe-snponly-x86_64.efi.

  • New parameter, ironic::keystone::auth::roles is introduced to configure customized role for ironic user in keystone identity.

Bug Fixes

  • For DHCPv6 PXE boot, the Client Architecture option code (61) as defined in is different than the one for DHCP. This is used to determine if booting over EFI. This change sets the DHCPv6 bootfile-url when booting PXE over EFI.


New Features

  • New parameter added for [pxe]/ip_version in ironic::drivers::pxe. It is used to set the IP version that will be used for PXE booting. Bug: 1845746.

  • Adds support for boot_retry_timeout and boot_retry_check_interval in ironic::drivers::pxe.

  • Supports configuring ironic::conductor::allow_provisioning_in_maintenance.

Bug Fixes

  • It was not possible to configre Ironic Inspector DHCP (dnsmasq) service to provide the MTU option. This caused inspection to fail when operating on a network with <1500 bytes MTU. See bug: 1845487.

  • The dnsmasq configuration written for ironic-inspector did not work with IPv6 addressing. Router addresses should be provided by router advertisements, DHCPv6 does not support a router option. 1844573.


New Features

  • Allows configuring the default deploy and rescue kernel/ramdisk via the new parameters deploy_kernel, deploy_ramdisk, rescue_kernel and rescue_ramdisk in the ironic::conductor manifest.

  • Allow users to run the RabbitMQ heartbeat over a native python thread in the oslo.messaging RabbitMQ driver, by using the rabbit_heartbeat_in_pthread option in configuration.

Upgrade Notes

  • The deprecated pki related options check_revocations_for_cached and hash_algorithms option has been removed.

  • The deprecated parameter ironic::conductor::enabled_drivers has been removed. Use new-style hardware types and the ironic::conductor::enabled_hardware_types parameter instead.

  • The deprecated parameter ironic::drivers::inspector::enabled has been removed. Use ironic::drivers::hardware_interfaces::enabled_inspect_interfaces to enable ironic-inspector support.

Deprecation Notes

  • The parameter ironic::drivers::inspector::service_url is deprecated and has no effect. Use ironic::drivers::inspector::endpoint_override.

  • The parameter ironic::glance::api_servers is deprecated and has no effect. Use ironic::glance::endpoint_override.

  • The parameter ironic::neutron::api_endpoint is deprecated and has no effect. Use ironic::neutron::endpoint_override.


New Features

  • Add support to configure [oslo_middleware]/max_request_body_size with $max_request_body_size.

Other Notes

  • app.wsgi script in ironic is deprecated from long in favor of ironic-api-wsgi script, wsgi_script_source default is changed to use ironic-api-wsgi instead of app.wsgi.


New Features

  • Allow configuring the default_python_interpreter parameter for the ansible deploy interface in the ironic::drivers::ansible manifest.

  • Add openstackclient installation to the client class.

  • Expose the service_token_roles_required` and ``service_token_roles parameters in both ::ironic::api::authtoken and ironic::inspector::authtoken

  • Adds ironic::rpc_transport parameter to define remote procedure call transport between conductor and API processes.

Upgrade Notes

  • The deprecated ironic::inspector::debug is removed, please use the dhcp_debug parameter.

Deprecation Notes

  • database_idle_timeout is deprecated and will be removed in a future release. Please use database_connection_recycle_time instead.

Bug Fixes

  • dnsmasq.conf require netmask for IPv6 to be a prefix. If IPv6 netmask is used it will be converted to a prefix. See bug: 1828367