Pike Series (8.0.0 - 9.1.x) Release Notes¶
9.1.7¶
Bug Fixes¶
Fixes an issue with a baremetal node that times out during cleaning. The ironic-conductor was attempting to change the node’s provision state to ‘clean failed’ twice, resulting in the node’s
last_error
being set incorrectly. This no longer happens. For more information, see story 2004299.
Fixes a bug where the number of CPU sockets was being returned by the
idrac
hardware type during introspection, instead of the number of virtual CPUs. See bug 2004155 for details.
Fixes an issue where the master instance image cache could not be disabled. The configuration option
[pxe]/instance_master_path
may now be set to the empty string to disable the cache.
9.1.6¶
Bug Fixes¶
Fixes an issue that caused the integrated Dell Remote Access Controller (iDRAC)
management
hardware interface implementation,idrac
, to fail to boot nodes in Unified Extensible Firmware Interface (UEFI) boot mode. That interface is supported by theidrac
hardware type. The issue is resolved for Dell EMC PowerEdge 13th and 14th generation servers. It is not resolved for PowerEdge 12th generation and earlier servers. For more information, see story 1656841.
Fixes an issue seen during node tear down where a port being deleted by the Bare Metal service could be deleted by the Compute service, leading to an unhandled error from the Networking service. See story 2002637 for further details.
9.1.5¶
Security Issues¶
Fixes an issue where an enabled console could be left running after a node was unprovisioned. This allowed a user to view the console even after the instance was gone. Ironic now stops the console during unprovisioning to block this.
Bug Fixes¶
Fixes a bug to get a node stuck in
deploying
state when the size of the configdrive exceeds the limitation of the database. In MySQL, the limitation is about 64KiB. With this fix, the provision state getsdeploy failed
in this case. See bug 1745630 for details.
Uses standard DHCP option codes instead of dnsmasq-specific option names, because different backends use different option names. This fixes the compatibility issues with neutron’s DHCP backends <https://bugs.launchpad.net/ironic/+bug/1717236>.
9.1.4¶
Bug Fixes¶
Fixes bug 1749755 causing timeouts to not work properly because an unsupported sqalchemy filter was being used.
When a conductor managing a node dies mid-cleaning the node would get stuck in the CLEANING state. Now upon conductor startup nodes in the CLEANING state will be moved to the CLEANFAIL state.
Fixes an issue with validation of Infiniband ports. Infiniband ports do not require the
local_link_connection
field to be populated as the network topology is discoverable by the Infiniband Subnet Manager. See bug 1753222 for details.
Adds
[swift]/endpoint_override
option to explicitly set the endpoint URL used for Swift. Ironic uses the Swift connection URL as a base for generation of some TempURLs. Added parameter enables operators to fix the problem when image is attached (via TempURL) as vmedia (e.g. in iLO driver) and BMC doesn’t have connectivity to public network. By default this parameter is not set for backward compatibility.
9.1.3¶
Security Issues¶
Sensitive information is now removed from a node’s
driver_info
andinstance_info
fields before sending it to the ramdisk during cleaning.
Bug Fixes¶
Adds missing
no-vendor
implementation to supported vendor interfaces of theidrac
hardware type.
No longer validates requested root partition size for whole-disk images using
iscsi
deploy interface, see bug 1742451 for details.
9.1.2¶
Bug Fixes¶
Fixes a problem when using boot from volume with the pxe boot interface, now when booting the correct iscsi initiator is used. bug 1724275
Fixes an issue where an ironic-conductor service was deemed dead because the service could not report its heartbeat due to the database connection experiencing an unexpected failure. Full tracebacks of these exceptions are now logged, and if the database connection recovers in a reasonable amount of time the service will still be available. See https://bugs.launchpad.net/ironic/+bug/1696296.
Fixes a problem when using ipmitool and rebooting a node which would cause a deploy to fail. Now when rebooting a node we check if the node is already powered off, if it is we don’t attempt to power off the node. This is because some BMCs will error if the node is already powered off and an ipmitool request is made to power it off. See https://bugs.launchpad.net/ironic/+bug/1718794 for details.
9.1.1¶
Prelude¶
This release includes a fix for a major race condition: use the ironic-dbsync online_data_migrations
command from this release. The one from older (9.0.0 - 9.1.0) releases could cause a a port’s physical_network information to be deleted from the database.
Upgrade Notes¶
Use the
ironic-dbsync online_data_migrations
command from this release. The one from older (9.0.0 - 9.1.0) releases could cause a a port’s physical_network information to be deleted from the database.
Critical Issues¶
Use the
ironic-dbsync online_data_migrations
command from this release. The one from older (9.0.0 - 9.1.0) releases could cause a a port’s physical_network information to be deleted from the database.
Bug Fixes¶
Fixes an issue when running
ironic-dbsync online_data_migrations
. The value of an object’s newversion
column might have been incorrectly changed from a newer object version to an older object version, due to a race condition. This is no longer the case.
Fixes an issue in boot from volume for
iscsi
deploy interface. Booting from a volume would fail for a node with theiscsi
deploy interface because the pxelinux.cfg file for the MAC address wasn’t created and the node would fail to boot. The pxelinux.cfg file is now created. See bug 1714436 for details.
Fixes an issue in boot from volume for a node with the
iscsi
deploy interface. It would fail if noimage_source
was provided in the node’sinstance_info
field because it would try to validate theimage_source
which didn’t exist. There is no need to specify theimage_source
and the validation is no longer being attempted. See bug 1714147 for details.
9.1.0¶
Prelude¶
The 9.1.0 (Pike) release includes many new features and bug fixes.
Please review the “Upgrade Notes” sections (for 8.0.0, 9.0.0, 9.0.1, and 9.1.0) which describe the required actions to upgrade your installation from 7.0.x (Ocata) to 9.1.0 (Pike).
A few major changes are worth mentioning. This is not an exhaustive list, and mostly includes changes from 9.0.0:
It is now possible to do rolling upgrades, starting with upgrading Ocata to Pike. For details, see https://docs.openstack.org/ironic/latest/admin/upgrade-guide.html.
The long-awaited support to boot from volumes is here. For details, see https://docs.openstack.org/ironic/latest/admin/boot-from-volume.html.
Full support for hardware types is available. There are hardware types for all classic drivers, and classic drivers can be upgraded to hardware types. The use of hardware types is preferred over the use of classic drivers, since classic drivers may be deprecated in the Queens release.
Adds the new
redfish
hardware type that supports the Redfish standard. For details, see https://docs.openstack.org/ironic/latest/admin/drivers/redfish.html.The Compute service is changing the way bare metal nodes are scheduled, and will be using the node’s
resource_class
to do this. For more details, see https://docs.openstack.org/ironic/latest/install/configure-nova-flavors.html#scheduling-based-on-resource-classes.The Bare Metal service can now incorporate physical network information when attaching virtual interfaces (VIFs) via the new
physical_network
field to the port object. For details, see https://docs.openstack.org/ironic/latest/admin/multitenancy.html#multitenancy-physnets.The ssh-based drivers have been removed from ironic. Please see the 9.0.0 “Upgrade Notes” section for more information.
New Features¶
Adds a new hardware type,
idrac
, for Dell EMC integrated Dell Remote Access Controllers (iDRAC).idrac
hardware type supports PXE-based provisioning using an iDRAC. It supports the following driver interfaces:boot:
pxe
console:
no-console
deploy:
iscsi
anddirect
inspect:
idrac
,inspector
, andno-inspect
management:
idrac
network:
flat
,neutron
, andnoop
power:
idrac
raid:
idrac
andno-raid
storage:
noop
andcinder
vendor:
idrac
Adds support for the following Boolean capabilities keys to
ilo
inspect interface:sriov_enabled
has_ssd
has_rotational
rotational_drive_4800_rpm
rotational_drive_5400_rpm
rotational_drive_7200_rpm
rotational_drive_10000_rpm
rotational_drive_15000_rpm
logical_raid_level_0
logical_raid_level_1
logical_raid_level_2
logical_raid_level_10
logical_raid_level_5
logical_raid_level_6
logical_raid_level_50
logical_raid_level_60
cpu_vt
hardware_supports_raid
has_nvme_ssd
nvdimm_n
logical_nvdimm_n
persistent_memory
Adds SNMP request timeout and retries settings for the SNMP UDP transport. Some SNMP devices take longer than others to respond. The new Ironic configuration settings
[snmp]/udp_transport_retries
and[snmp]/udp_transport_timeout
allow to change the number of retries and the timeout values respectively for the the SNMP driver.
Upgrade Notes¶
Updates required proliantutils version for iLO drivers to 2.4.0. This version of the library comes with quite a few features:
Adds support for Gen10 servers using Redfish protocol.
Provides support for one-pass disk erase using HPE SSA CLI through Proliant hardware manager in IPA.
local_gb
defaults to 0 (zero) when no disk could be discovered during inspection.
Bug Fixes¶
Fixes an issue that caused a node using a Dell EMC integrated Dell Remote Access Controller (iDRAC) classic driver,
pxe_drac
orpxe_drac_inspector
, to be placed in theclean failed
state after a doublemanage
/provide
cycle, instead of theavailable
state. For more information, see bug 1676387.
9.0.1¶
Prelude¶
The 9.0.1 release is an intermediary Pike release; it should be used instead of the intermediary 9.0.0 release, since 9.0.1 passes all the ironic CI tests.
Upgrade Notes¶
Adds ‘9.0’ and ‘pike’ as choices for the configuration option [default]/pin_release_version. This addresses failures with the unit and grenade tests.
9.0.0¶
New Features¶
Adds two new hardware types to support Cisco UCS Servers,
cisco-ucs-standalone
andcisco-ucs-managed
.cisco-ucs-standalone
supports driver interfaces for controlling UCS servers in standalone mode via either CIMC APIs or via IPMI.cisco-ucs-managed
is a superset ofcisco-ucs-standalone
and supports additional driver interfaces for controlling the UCS server via UCSM.To support these hardware types the following Ironic driver interfaces were made available to be configured on a node:
node.power_interface
can be set to:cimc
for CIMC API power control (power on/off, reboot, etc.)ucsm
for UCSM API power control (power on/off, reboot, etc.)
node.management_interface
can be set to:cimc
for CIMC API management control (setting the boot device, etc.)ucsm
for UCSM API management control (setting the boot device, etc.)
Adds support for generating Guru Meditation Reports (GMR) for both ironic-api and ironic-conductor services. GMR provides debugging information that can be used to obtain an accurate view on the current state of the system. For example, what threads are running, what configuration parameters are in effect, and more.
Adds support to provision an instance in UEFI secure boot for
irmc-pxe
boot interface.
Adds support for the Redfish standard via a new
redfish
hardware type. (There is no equivalent “classic” driver for this.) It uses two new interfaces:redfish
power interface supports all hard and soft power operationsredfish
management interface supports:getting and setting the boot device (PXE, disk, CD-ROM or BIOS)
making the configured boot device persistent or not
injecting NMI
Allows updating hardware interfaces on nodes in the
available
state.
New configuration option
[DEFAULT]/ldlinux_32
can be used to set the location of theldlinux.c32
file (from the syslinux package). The default behavior is to look for it in the following locations:/usr/lib/syslinux/modules/bios/ldlinux.c32
/usr/share/syslinux/ldlinux.c32
Adds support for storing the configdrive in Ceph Object Gateway (radosgw) instead of the OpenStack Object service (swift) using the compatible API.
Adds support to use the radosgw authentication mechanism that relies on a user name and a password instead of an authentication token. The following options must be specified in ironic configuration file:
[swift]/auth_url
[swift]/username
[swift]/password
Adds OSProfiler support. This cross-project profiling library provides the ability to trace various OpenStack requests through all OpenStack services that support it. For more information, see https://docs.openstack.org/ironic/latest/contributor/osprofiler-support.html.
Adds a boolean flag called
force_persistent_boot_device
into a node’sdriver_info
to enable persistent behavior when you set the boot device during deploy and cleaning operations. This flag will override a non-persistent behavior in the cleaning and deploy process. For more information, see https://bugs.launchpad.net/ironic/+bug/1703945.
Adds a new hardware type
ilo
for iLO 4 based Proliant Gen 8 and Gen 9 servers. This hardware type supports virtual media and PXE based boot using HPE iLO 4 management engine. The following driver interfaces are supported:boot:
ilo-virtual-media
andilo-pxe
console:
ilo
andno-console
deploy:
iscsi
anddirect
inspect:
ilo
,inspector
andno-inspect
management:
ilo
network:
flat
,noop
andneutron
power:
ilo
raid:
no-raid
andagent
The
ipmi
hardware type now supportsipmitool
vendor interface (similar to classic ipmitool drivers).
Adds new boot interface named
irmc-pxe
for PXE booting FUJITSU PRIMERGY servers.
Adds clean step
restore_irmc_bios_config
to restore BIOS config for a node with anirmc
-based driver during automatic cleaning.
Adds support for booting from remote volumes via the
irmc-virtual-media
boot interface. It enables boot configuration for iSCSI or FibreChannel via out-of-band network. For details, see the iRMC driver documentation.
Adds configuration option
[console]terminal_timeout
to allow setting the time (in seconds) of inactivity, after which a socat-based console terminates.
Adds version 1.33 of the REST API, which exposes the
storage_interface
field of the node resource. This version also exposesdefault_storage_interface
andenable_storage_interfaces
fields of the driver resource.There are 2 available storage interfaces:
noop
: This interface provides nothing regarding storage.cinder
: This interface enables a node to attach and detach volumes by leveraging cinder API.
A storage interface can be set when creating or updating a node. Enabled storage interfaces are defined via the
[DEFAULT]/enabled_storage_interfaces
configuration option. A default interface for a created node can be specified with[DEFAULT]/default_storage_interface
configuration option.
Adds
storage_interface
field to the node-related notifications:baremetal.node.create.*
(new payload version 1.2)baremetal.node.update.*
(new payload version 1.2)baremetal.node.delete.*
(new payload version 1.2)baremetal.node.maintenance.*
(new payload version 1.4)baremetal.node.console.*
(new payload version 1.4)baremetal.node.power_set.*
(new payload version 1.4)baremetal.node.power_state_corrected.*
(new payload version 1.4)baremetal.node.provision_set.*
(new payload version 1.4)
The OneView drivers now retain the next boot device in node’s internal info when setting a boot device is requested. It is applied on the node when it is power cycled.
Adds a new hardware type
oneview
for HPE OneView supported servers. This hardware type supports the following driver interfaces:boot:
pxe
console:
no-console
deploy:
oneview-direct
andoneview-iscsi
(based on “direct” and “iscsi” respectively)inspect:
oneview
andno-inspect
management:
oneview
network:
flat
,neutron
andno-op
power:
oneview
raid:
no-raid
andagent
Port group information (
mode
andproperties
fields) is now passed to Neutron via the port’sbinding:profile
field. This allows an ML2 driver to configure the port bonding automatically.
Adds a
physical_network
field to the port object in REST API version 1.34.This field specifies the name of the physical network to which the port is connected, and is empty by default. This field may be set by the operator to allow the Bare Metal service to incorporate physical network information when attaching virtual interfaces (VIFs).
The REST API endpoints related to ports provide support for the
physical_network
field. The multi-tenancy documentation provides information on how to configure and use physical networks.
Adds support for rolling upgrades, starting from upgrading Ocata to Pike. For details, see http://docs.openstack.org/ironic/latest/admin/upgrade-guide.html.
Adds a new hardware type
snmp
for SNMP powered systems. It supports the following driver interfaces:boot:
pxe
deploy:
iscsi
,direct
power:
snmp
management:
fake
Adds new configuration option
[console]/socat_address
to set the binding address for socat-based console. The default is the value of the[DEFAULT]my_ip
option of the conductor responsible for the node.
Adds support for volume connectors and volume targets with new API endpoints
/v1/volume/connectors
and/v1/volume/targets
. These endpoints are available with API version 1.32 or later. These new resources are used to connect a node to a volume. A volume connector represents connector information of a node such as an iSCSI initiator. A volume target provides volume information such as an iSCSI target. These endpoints are available:GET /v1/volume/connectors
for listing volume connectorsPOST /v1/volume/connectors
for creating a volume connectorGET /v1/volume/connectors/<UUID>
for showing a volume connectorPATCH /v1/volume/connectors/<UUID>
for updating a volume connectorDELETE /v1/volume/connectors/<UUID>
for deleting a volume connectorGET /v1/volume/targets
for listing volume targetsPOST /v1/volume/targets
for creating a volume targetGET /v1/volume/targets/<UUID>
for showing a volume targetPATCH /v1/volume/targets/<UUID>
for updating a volume targetDELETE /v1/volume/targets/<UUID>
for deleting a volume target
The Volume resources also can be listed as sub resources of nodes:
GET /v1/nodes/<node>/volume/connectors
GET /v1/nodes/<node>/volume/targets
Root endpoints of volume resources are also added. These endpoints provide links to volume connectors and volume targets:
GET /v1/volume
GET /v1/node/<node>/volume
When a volume connector or a volume target is created, updated, or deleted, these CRUD notifications can be emitted:
baremetal.volumeconnector.create.start
baremetal.volumeconnector.create.end
baremetal.volumeconnector.create.error
baremetal.volumeconnector.update.start
baremetal.volumeconnector.update.end
baremetal.volumeconnector.update.error
baremetal.volumeconnector.delete.start
baremetal.volumeconnector.delete.end
baremetal.volumeconnector.delete.error
baremetal.volumetarget.create.start
baremetal.volumetarget.create.end
baremetal.volumetarget.create.error
baremetal.volumetarget.update.start
baremetal.volumetarget.update.end
baremetal.volumetarget.update.error
baremetal.volumetarget.delete.start
baremetal.volumetarget.delete.end
baremetal.volumetarget.delete.error
Known Issues¶
The
restore_irmc_bios_config
clean step does not work for nodes using thepxe
boot interface with theirmc
hardware type. Theirmc-pxe
boot interface has to be used instead.
Upgrade Notes¶
Due to bug 1702158, the
conductor_hardware_interfaces
table could be created with MyISAM database engine, while all other tables in ironic database are using InnoDB engine. This could happen during initial installation, or upgrade to the Ocata release, if the system was using MySQL prior to version 5.5 or thedefault_storage_engine
option was set explicitly to ‘MyISAM’ inmy.cnf
. If this is the case, theconductor_hardware_interfaces
table needs to be manually migrated to InnoDB, and the foreign key constraint needs to be re-created:alter table conductor_hardware_interfaces engine='InnoDB'; alter table conductor_hardware_interfaces add constraint conductor_hardware_interfaces_ibfk_1 foreign key (conductor_id) references conductors(id);
Changes timestamp part of ramdisk log filename by replacing colon with dash. The
tar
command does not handle colon properly, and untar of the file with colon in filename will fail.
Adds the
[deploy]/object_store_endpoint_type
option to specify the type of endpoint to use for instance images and configdrive storage. Allowed values areswift
orradosgw
. The default isswift
.
Moves port creation logic from the API service to the conductor service. This is more consistent with port update operations and opens opportunities for conductor-side validations on ports. However, with this change, port creation may take longer, and this may limit the number of ports that can be created in parallel.
The new
ironic-dbsync online_data_migrations
command should be run after each upgrade to ensure all DB records are converted to the newest format. It must be run before starting the software as part of a new upgrade to the next named release. For more information about this command, see https://docs.openstack.org/ironic/latest/cli/ironic-dbsync.html.
The configuration option
[glance]glance_host
is now empty by default. If neither it nor[glance]glance_api_servers
are provided, ironic will now try fetching the Image service endpoint from the service catalog.
Adds new configuration option
[irmc]clean_priority_restore_irmc_bios_config
, which enables setting priority for therestore_irmc_bios_config
clean step. The default value for this option is 0, which means the clean step is disabled.
Ironic no longer falls back to loading authentication configuration options for accessing other services from the
[keystone_authtoken]
section. As a result, the following configuration sections now must contain proper authentication options for appropriate services:glance
neutron
swift
inspector
service_catalog
SSH-based power and management driver interfaces were removed from ironic. The drivers
pxe_ssh
,agent_ssh
andfake_ssh
are no longer available. Operators are required to ensure that these drivers are not used or enabled (in[DEFAULT]enabled_drivers
configuration file option) in their ironic installation before upgrade.
Following an upgrade to this release, all ports will have an empty
physical_network
field. Attachment of Virtual Interfaces (VIFs) will continue to function as in the previous release until any ports have their physical network field set.During a live upgrade to this release, the
physical_network
field will not be available. It will also not be possible to create ports which are members of a port group during a live upgrade, as the API service will be unable to validate the consistency of the request.
The pre-allocation model for OneView drivers was deprecated in Newton cycle (Ironic 6.1.0) and all pertaining code was marked for removal during Pike cycle. From now on, OneView drivers works only with dynamic allocation model.
Removes the deprecated DHCP provider method
update_port_address
. For users who created their own network interfaces or DHCP providers the logic should be moved to a custom network interface’sport_changed
andportgroup_changed
methods. The following methods should be implemented by custom network interfaces:vif_list
: List attached VIF IDs for a node.vif_attach
: Attach a virtual network interface to a node.vif_detach
: Detach a virtual network interface from a node.port_changed
: Handle any actions required when a port changes.portgroup_changed
: Handle any actions required when a port group changes.get_current_vif
: Return VIF ID attached to port or port group object.
The configuration option
[ilo]/clean_priority_erase_devices
was deprecated in the Newton cycle (6.1.0). It is no longer supported. Please use the option[deploy]/erase_devices_priority
instead.
Changing the
resource_class
field of a node in theactive
state or any of the transient states is no longer possible. Please update your scripts to only set a resource class for nodes that are not deployed to. Setting a resource class for nodes that do not have it is still possible.
Due to upcoming changes in the way Nova schedules bare metal nodes, all nodes in a deployment using Nova have to get the
resource_class
field populated before the upgrade. See enrollment documentation and flavor configuration documentation for details.Once you’ve migrated your flavors to resource classes, you should unset the deprecated
use_baremetal_filters
option in the Compute service configuration. Otherwise you’ll be using the filters incompatible with scheduling based on resource classes.
Deprecation Notes¶
The
[conductor]/configdrive_use_swift
and[glance]/temp_url_endpoint_type
options are deprecated and will be removed in the Queens release. Use[deploy]/configdrive_use_object_store
and[deploy]/object_store_endpoint_type
respectively instead.
Support for the
elilo
boot loader has been deprecated and will be removed in the Queens release cycle. The elilo boot loader has been orphaned as a project and dropped from the majority of Linux distributions. Please switch to thegrub2
boot loader.
Configuration option
[ipmi]/retry_timeout
is deprecated in favor of these new options:[ipmi]/command_retry_timeout
: timeout value to wait for an IPMI command to complete (be acknowledged by the baremetal node)[conductor]/power_state_change_timeout
: timeout value to wait for a power operation to complete, so that the baremetal node is in the desired new power state
The configuration options
[glance]glance_host
,[glance]glance_port
and[glance]glance_protocol
are deprecated in favor of either using[glance]glance_api_servers
or using the service catalog.
The use of the
pxe
boot interface with theirmc
hardware type has been deprecated. It is recommended to switch to the newirmc-pxe
boot interface as soon as possible.
Security Issues¶
OSProfiler support requires passing of trace information between various OpenStack services. This information is securely signed by one of the HMAC keys, defined in the
ironic.conf
configuration file. To allow cross-project tracing, the same key should be used for all OpenStack services.
Bug Fixes¶
Fixes netboot with virtual media boot in an environment using syslinux 5.00 or later, such as Ubuntu 16.04. It was broken by a change in the location of the
ldlinux.c32
file.
Fixes database schema that could cause the wrong database engine to be utilized for the
conductor_hardware_interfaces
table, if the system is using MySQL prior to version 5.5 or thedefault_storage_engine
option is set explicitly to ‘MyISAM’ inmy.cnf
. In this case, a table could be created with MyISAM engine, and the foreign key constraintconductor_id(conductors.id)
was ignored. See bug 1702158 for details.
Changes timestamp part of ramdisk log filename by replacing colon with dash. The
tar
command does not handle colon properly, and untar of the file with colon in filename will fail.
Fixes bug 1691808 causing RAID creation/deletion to frequently fail when using the iDRAC driver due to an Export Configuration job running. The fix requires the
python-dracclient
library of version 1.3.0 or higher.
Prevents the IPMI driver from needlessly checking status of the baremetal node if a power change action fails. Additionally, stops retrying power actions and power status polls on receipt of a non-retryable error from ipmitool. For more information, see bug 1675529.
A new configuration option
[conductor]/power_state_change_timeout
can be used to specify how many seconds to wait for a baremetal node to change the power state when a power action is requested.
Adds the capability for an operator to explicitly define the permission for created tftpboot folders. This provides the ability for ironic to be utilized with a restrictive umask, where the tftp server may not be able to read the file. Introduces a new configuration option
[pxe]/dir_permission
to specify the permission for the tftpboot directories to be created with.
Fix handling of whole disk images with disk identifier 0x00000000. Instances failed to boot as the identifier in the boot config was overwritten during config drive creation. See bug 1685093.
When the deletion of a swift temporary object fails because the object is no longer available in swift, a message is logged. The log level of this message was changed from
WARNING
toINFO
.
Fixes a multi-region issue where the region specified in the configuration file was ignored when getting the Identity service’s (keystone) URL.
Fixes an issue with the ‘noop’ network interface where listing the VIFs for a node fails with a HTTP 500 Internal Server Error.
Shutdown of conductor process should take less time, as we do not wait for completion of all periodic tasks.
DEBUG
-level logging from theoslo.messaging
library is no longer displayed by default.
Fixes an issue where some internal information for a node was not being saved to the database. See bug 1679297 for details.
Fixes a bug which caused boot device changes to be persistent in places where they did not need to be during cleaning and deployment phases, due to the default behavior of PXE interface forcing a persistent change. For more information, see bug 1701721.
Raises HTTP 400
Bad Request
(instead of HTTP 500Internal Server
) error on failure to validatepower
orinspect
interface parameters before performing a hardware inspection.
No longer allows changing the
resource_class
field foractive
nodes if it was already set to a non-empty value. Doing so would break the Compute scheduler.
Adds validation of
snmp_outlet
parameter to SNMP driver.
When returning lists of nodes, port groups, or ports, checks the sort key to make sure the field is available in the requested API version. A 406 (Not Acceptable) HTTP status is returned if the field is not available.
Other Notes¶
Adds a configuration section
cinder
and a requirement of cinder client (python-cinderclient).
The method
build_instance_info_for_deploy()
from theironic.drivers.modules.agent
module was deprecated in the Ocata cycle (version 7.0.0). It is no longer available. Please use the methodbuild_instance_info_for_deploy()
from theironic.drivers.modules.deploy_utils
module instead.
8.0.0¶
New Features¶
Adds DBDeadlock handling which may improve stability when using Galera. See https://bugs.launchpad.net/ironic/+bug/1639338. Number of retries depends on the configuration option
[database]db_max_retries
.
Adds possibility to attach/detach VIFs to/from active nodes.
Adds notifications for creation, updates, or deletions of port groups. Event types are formatted as follows:
baremetal.portgroup.{create, update, delete}.{start,end,error}
Also adds portgroup_uuid field to port notifications, port payload version bumped to 1.1.
Upgrade Notes¶
All DB API methods doing database writes now retry on deadlock. The
[database]db_max_retries
configuration option specifies the maximum number of times to retry, and can be customised if necessary.
The agent_pyghmi, pxe_ipminative, and fake_ipminative drivers have all been removed from ironic due to lack of testing. Nodes using these drivers should be changed to the agent_ipmitool or pxe_ipmitool driver.
Removes old messaging transport aliases. These are listed below with the new value that should be used.
ironic.rpc.impl_kombu
->rabbit
ironic.rpc.impl_qpid
->qpid
ironic.rpc.impl_zmq
->zmq
Updates required proliantutils version for iLO drivers to 2.2.1. This version has support for HPSUM firmware update and matches requirements to meet global-requirements.
Deprecation Notes¶
Support for the Image service v1 API has been deprecated along with the
[glance]/glance_api_version
configuration option and will be removed in the Queens release.
Bug Fixes¶
Fixes an issue which caused conductor’s periodic tasks to stop executing. See https://bugs.launchpad.net/ironic/+bug/1637210.
Fixes an issue with requests to the ironic API service sometimes timing out when running under Apache. This was due to mixing two concurrency models (for handling multiple threads).
Fixed a bug that was causing an increase in CPU usage over time.
An issue with hung iscsi sessions not being cleaned up in case of deploy failure.
Fixes an issue wherein agent based deploy do not call clean up the instance related configurations done on the Ironic node.
Fixes an issue with oneview driver trying to deallocate a node when an error is encountered while performing server profile application. Also ensures only those nodes that are managed by ironic can be deallocated.
Fixes issue with socat console support where an unlimited number of connections could be created, resulting in the prior session being destroyed. Connections are now limited to a single connection per server. Socat now closes the console connection upon disconnect or timeout 10min. To reconnect, users should re-activate the console.
Fixes failure to update a node’s driver from a hardware type to a classic driver.