Current Series Release Notes

Current Series Release Notes

12.1.0-91

New Features

  • Adds option ‘allow_deleting_available_nodes’ to control whether nodes in state ‘available’ should be deletable (which is and stays the default). Setting this option to False will remove ‘available’ from the list of states in which nodes can be deleted from ironic. It hence provides protection against accidental removal of nodes which are ready for allocation (and is meant as a safeguard for the operational effort to bring nodes into this state). For backwards compatibility reasons, the default value for this option is True. The other states in which nodes can be deleted from ironic (‘manageable’, ‘enroll’, and ‘adoptfail’) remain unchanged. This option can be changed without service restart.

  • Adds capability to hardware type idrac for creating and deleting RAID sets without rebooting the baremetal node. This realtime mechanism is supported on PERC H730 and H740 RAID controllers that are running firmware version 25.5.5.0005 or later.

  • Adds reset_idrac and known_good_state cleaning steps to hardware type idrac. reset_idrac actually resets the iDRAC; known_good_state also resets the iDRAC and clears the Lifecycle Controller job queue to make sure the iDRAC is in good state.

  • API version 1.58 allows backfilling allocations for existing deployed nodes by providing node to POST /v1/allocations.

  • Adds REST API endpoint for updating an existing allocation. Only name and extra fields are allowed to be updated.

  • A new option enable_mdns allows to enable publishing the baremetal API endpoint via mDNS as specified in the API SIG guideline.

  • Adds a [conductor]send_sensor_data_for_undeployed_nodes option to enable ironic to collect and transmit sensor data for all nodes for which sensor data collection is available. By default, this option is not enabled which aligns with the prior behavior of sensor data collection and transmission where such data was only collected if an instance_uuid was present to signify that the node has been or is being deployed. With this change set to True, operators may be able to identify hardware in a faulty state through the sensor data and take action before an instance workload is deployed.

  • The Smart-Nic functionality that was added to the Bare Metal Service during the Stein cycle can now be used with a Train version of the Networking Service (neutron) as Smart-Nic support merged into that project during the Train development cycle.

Upgrade Notes

  • This change requires python-dracclient version 3.0.0 and later.

  • commit_required is no longer present in the dictionary returned by the set_bios_config vendor passthru call in the idrac hardware type. commit_required was split into two keys: is_commit_required and is_reboot_required, which indicate the actions necessary to complete setting the BIOS settings. commit_required was removed in python-dracclient version 3.0.0.

  • Removes deprecated option [ilo]/power_retry. Please use [conductor]/soft_power_off_timeout instead.

  • The configuration option [DEFAULT]/hash_distribution_replicas was deprecated in the Stein cycle. It has been removed and is no longer supported.

  • The configuration option [DEFAULT]enabled_drivers is removed. The option was deprecated in Rocky, and setting this option has raised an exception preventing conductor from starting since then. [DEFAULT]enabled_hardware_types should be used instead.

Deprecation Notes

  • The configuration option [DEFAULT]/fatal_exception_format_errors is now deprecated. Please use the configuration option [ironic_lib]/fatal_exception_format_errors instead.

Bug Fixes

  • Fixes an issue that can occur in CI and in physical deployments where the Networking Service performs a pre-flight operation which can exceed the prior default for 30 seconds. The new default is 45 seconds, and operators can tune the setting via the [neutron]request_timeout setting.

  • Fixes node last_error and maintenance_reason overflow with too long error messages, preventing the object from being correctly committed to database. The maximum message length can be customized through a new configuration parameter, [DEFAULT]/log_in_db_max_size (default, 4096 characters).

  • Fixes a deployment issue encountered during deployment, more precisely during the configdrive partition creation step. On some specific devices like NVMe drives, the created configdrive partition could not be correctly identified (required to dump data onto it afterward). https://storyboard.openstack.org/#!/story/2005764

  • Fixes an issue regarding the ansible deployment interface cleaning workflow. Handling the error in the driver and returning nothing caused the manager to consider the step done and go to the next one instead of interrupting the cleaning workflow.

  • Fixes an issue with the ansible deployment interface where raw images could not be streamed correctly to the host.

  • Fixes deployment with the ansible deploy interface and instance images with GPT partition table.

  • Fixes traceback on cleaning of nodes with the redfish hardware type if their BMC does not support BIOS settings.

  • Fixes an issue where the sensor data parsing method for the ipmitool interface lacked the ability to handle the automatically included ipmitool debugging information when the debug option is set to True in the ironic.conf file. As such, extra debugging information supplied by the underlying ipmitool command is disregarded. More information can be found in story 2005331.

  • Fixes an issue where deploy fails during node preparation if the node capabilities are passed as string.

  • Fixes GRUB configuration file generation procedure when building bootable ISO images that include user EFI boot loader image. Prior to this fix, no bootable ISO image could be generated unless EFI boot loader is extracted from deploy ISO image.

  • Fixes an issue when the image source is a local file, the image will be truncated to 2G and fails deployment due to image corruption.

  • Fixes binary files upload to Swift. Prior to this fix, binary file upload to Swift might fail at unicode characters interpretation.

  • The internal JSON RPC server now binds to :: by default, allowing it to work correctly with IPv6.

  • This fix binds the jsonschema to use draft-04 for raid schema. The jsonschema 3.0.1 supports draft-03, draft-04, draft-06 and draft-07 and by default the validate function uses latest draft validator. Draft-04 is the latest draft in the jsonschema 2.6. Hence binding the schema to draft-04 validator makes it compliant for both jsonschema 2.6 and jsonschema 3.0.1.

  • Fixes the duplication of the “ipxe” tag when using IPv6, which leads to the dhcp server possibly returning an incorrect response to the DHCPv6 client.

  • Fixes an issue where nodes in the process of deployment may have metrics data collected and transmitted during the deployment process which may erroneously generate alarms depending on the operator’s monitoring configuration. This was due to a database filter relying upon the indicator of an instance_uuid as opposed to the state of a node.

  • No longer tries to create a temporary URL with zero lifetime if the deploy_callback_timeout option is set to zero. The default of 1800 seconds is used in that case. Use the new configdrive_swift_temp_url_duration option to override.

Other Notes

  • Use the module exception from ironic-lib. Update ironic-lib minimum version required to 2.17.1.

Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.