Victoria Series Release Notes¶
17.0.1¶
Bug Fixes¶
Bug #1887962: PowerMax driver fix to rectify incorrectly deleted non-temporary snapshots when calling do_sync_check used in multiple operations due to missing check for temporary snapshot name.
Bug #1895510: IBM DS8K: Fixed compatability issue when using the IBM DS8K driver with storage version R9 and later.
RBD driver Bug #1898918: Fix thread block caused by the flatten operation during cloning a volume. Now the flatten operation is executed in a different thread.
RBD driver bug #1901241: Fixed an issue where decreasing the
rbd_max_clone_depth
configuration option would prevent volumes that had already exceeded that depth from being cloned.
Bug #1904440: When an iSCSI/FC encrypted volume was cloned, the rekey operation would stamp the wrong encryption key on the newly cloned volume. This resulted in a volume that could not be attached. It does not present a security problem.
Bug #1898587: Address cloning and api request timeout issues users may hit in certain environments, by allowing configuring timeout values for these operations through cinder configuration file.
17.0.0¶
Prelude¶
Welcome to the Victoria release of the OpenStack Block Storage service (cinder). With this release, the Block Storage API version 3 has reached microversion 3.62. The cinder team would like to bring the following points to your attention. Details may be found below.
Microversion 3.61 adds the
cluster_name
attribute to the volume detail response when called in an administrative context.Microversion 3.62 adds API calls to manage the default volume type for a specific project. See the Default volume types (default-types) section of the Block Storage API v3 Reference for more information.
The handling of the default volume type for a cinder installation has been improved in this release.
The cinder backup service has added support for the popular Zstandard compression algorithm. (The default is the venerable Deflate (zlib) algorithm.)
Many backend storage drivers have added features and fixed bugs.
New Features¶
Nimble driver now supports discard.
Added Multi-attach feature in Nimble driver.
Added an
included_domain_ips
option to the Dell EMC SC driver. This option takes a comma separated list of target IP addresses listed under the fault domains to whitelisted. This option only applies to the ISCSI driver.
Added new APIs on microversion 3.61 to show
cluster_name
attribute in the response body of volume details for admin.
We can now limit the number of concurrent backup/restore operations that a Cinder backup service can perform using the
backup_max_operations
configuration option.
SolidFire driver now supports IPv6 for management IP.
The NFS driver now supports the creation of encrypted volumes.
Add Dell EMC PowerStore Storage Driver (iSCSI, FC).
The oslo.middleware /healthcheck is now activated by default in the Cinder api-paste.ini. Operators can use it to configure HAproxy or the monitoring of Cinder APIs. Edit the
api-paste.ini
file and remove any healthcheck entries to disable this functionality.
New Cinder Hitachi driver based on REST API for Hitachi VSP storages.
NetApp ONTAP: Added support for Adaptive QoS policies that have been pre-created on the storage system, with the NetApp driver and clustered ONTAP version 9.4 or higher. To use this feature, configure a Cinder volume type with the following extra-specs:
netapp:qos_policy_group=<name_of_precreated_aqos_policy> netapp:qos_policy_group_is_adaptive="<is> True"
Note that a cluster scoped account must be used in the driver configuration in order to use QoS in clustered ONTAP.
This PowerMax driver moves the legacy shared volume from the masking view structure in Ocata and prior releases (when SMI-S was supported) to staging masking view(s) in Pike and later releases (U4P REST). In Ocata, the live migration process shared the storage group, containing the volume, among the different compute nodes. In Pike, we changed the masking view structure to facilitate a cleaner live migration process where only the intended volume is migrated without exposing other volumes in the storage group. The staging storage group and masking views facilitate a seamless live migration operation in upgraded releases.
PowerMax for Cinder driver now supports the ability to transition to a new primary array as part of the failover process if the existing primary array is deemed unrecoverable.
PowerMax for Cinder driver now supports Port Group and Port load balancing when attaching Nova Compute instances to volumes on the backend PowerMax.
Added support for project specific default volume types. Microversion 3.62 of the Block Storage API introduces new calls to set, get, and unset a default volume type for a specific project. Project specific defaults have higher priority than the default_volume_type option in cinder.conf
Add reverting to snapshot support in Pure Storage Cinder driver.
NetApp SolidFire driver: Added inter-cluster volume migration (storage assisted) support. This allows users to efficiently migrate volumes between different SolidFire backends.
Added the option
storwize_svc_retain_aux_volume
to IBM Storwize Driver which takesTrue
orFalse
. This option is to enable or disable retaining of auxiliary volume on secondary storage during delete of the volume on primary storage or moving the primary volume from mirror to non-mirror with replication enabled. The default value isFalse
.
Added support to cinder backup for use of the Zstandard compression algorithm. To use it, set the
backup_compression_algorithm
tozstd
in the cinder configuration file. (The default value for this option iszlib
.)
PowerMax Driver - support for using snap_ids instead of generations for better handling of volume snapshots (Change-Id I0edf2ac777bef888e760f711a94e3fe4f94262ae)
Known Issues¶
The Brocade Fibre Channel Zone Manager driver was marked ‘unsupported’ in the Ussuri release because the vendor declined to support Python 3, whereas all OpenStack releases beginning with Ussuri support Python 3 only.
In order to provide operators with a choice of FCZM drivers, the Cinder community decided to continue supporting the Brocade FCZM driver on a best-effort basis. See the “Bug Fixes” section of these notes for changes made to allow the driver to run in a Python 3 environment.
While the driver has been tested against the first Release Candidate for the cinder Victoria release, be aware that it does not have ongoing third-party CI. If you choose to use the driver, the configuration option
enable_unsupported_driver
must be set toTrue
in thefc-zone-manager
section in cinder.conf to allow its use in this release.
Upgrade Notes¶
Nimble specific extra-spec
nimble:multi-initiator
is removed. Common extra-spec multiattach is added.
The
default_volume_type
configuration option is now required to have a value. The default value is__DEFAULT__
, so you should see no change in behavior whether or not you have set a value fordefault_volume_type
. See Bug #1886632 for more information about this change.
The Brocade Fibre Channel Zone Manager driver was marked ‘unsupported’ in the Ussuri release, and it continues as ‘unsupported’ in this release. If you choose to use the driver, the configuration option
enable_unsupported_driver
must be set toTrue
in thefc-zone-manager
section in cinder.conf to allow its use.
The fix for Bug #1823200 requires
os-brick
version 3.1.0 or greater.
Due to the fix for Bug #1740950, the
host_name
field in any object in theattachments
array of the volume detail response is populated only when the call is made in an administrative context. Otherwise, its value is the JSONnull
value. This is consistent with prior API behavior, as it has always been possible for the value of that field to benull
.
IBM Spectrum Virtualize Family (previously known as Storwize) driver cannot delete volume which has host mapping in some rare cases while code_level of IBM Spectrum Virtualize Family storage lower than 7.7.0.0. Please upgrade to latest code to avoid this kind of issue.
The default value of the configuration option,
glance_num_retries
, has been changed to 3 in this release. Its former value was 0. The option controls how many times to retry a Glance API call in response to a HTTP connection failure, timeout or ServiceUnavailable status. By this change, Cinder can be more resilient to temporary failure and continue the request if a retry succeeds.
The “cinder-manage shell” set of commands has been removed.
RBD driver: the
rbd_keyring_conf
configuration option, which was deprecated in the Ussuri release, has been removed. If it is present in a configuration file, its value will silently be ignored. For more information, see OSSN-0085: Cinder configuration option can leak secret key from Ceph backend.
Prior to the Ussuri release,
os-reset_status
notifications for volumes, snapshots, and backups were sent to nonstandard publisher_ids. This behavior was deprecated in Ussuri, and notifications were sent to both the standard and nonstandard publisher_ids. In this release,os-reset_status
notifications, like all other notifications for volume, snapshot and backup, are sent only to the following standard publisher_ids:‘volume’ for volume status resets
‘snapshot’ for snapshot status resets
‘backup’ for backup status resets
Dell EMC VxFlex OS has been rebranded to PowerFlex. The driver
cinder.volume.drivers.dell_emc.vxflexos.driver.VxFlexOSDriver
has been renamed tocinder.volume.drivers.dell_emc.powerflex.driver.PowerFlexDriver
. Although in this release the volume manager will recognize the old driver name, that functionality will be removed in the Wallaby release, and thus we recommend that you update the driver name incinder.conf
at your earliest convenience.Existing vxFlex OS configuration options, whose usage was DEPRECATED in the Stein release, will no longer be recognized in this release. Thus all driver configuration options that start with
vxflexos
must be updated topowerflex
in yourcinder.conf
before you deploy this release.Before the Rocky release, this driver was named
cinder.volume.drivers.dell_emc.scaleio.driver.ScaleIODriver
. That name was deprecated in the Rocky release. In this release, the pre-Rocky name for this driver is no longer recognized and support for configuration options beginning withsio
has been removed. Thus any driver configuration options that start withsio
must be updated topowerflex
in yourcinder.conf
before you deploy this release.The online documentation has been updated to reflect these changes.
Deprecation Notes¶
Cinder TSM Backup Driver is deprecated and will be removed in Wallaby release.
Security Issues¶
Dell EMC VxFlex OS driver: This release contains a fix for Bug #1823200. See OSSN-0086 for details.
It was possible under certain circumstances for the host name of an instance to be leaked in the volume detail response. This has been fixed in the current release. The
host_name
field in any object in theattachments
array of the volume detail response is populated only when the call is made in an administrative context. Otherwise, its value is the JSONnull
value.
Bug Fixes¶
Bug #1886632: The system defined
__DEFAULT__
volume type is now treated as a regular volume-type and may be updated or deleted. Since the configureddefault_volume_type
cannot be deleted, however, the__DEFAULT__
volume type may not be deleted if it is the value of that configuration option.
Bug #1888550: Fix UnboundLocalError on the Brocade lookup driver on southbound client creation failure during the device mapping retrieval.
Bug #1888548: Add Python 3 support to the Brocade Zone Manager driver.
Bug #1866860: Fix AttributeError on the Brocade ZM driver when using setting REST_HTTP or REST_HTTPS as the fc_southbound_protocol option and an exception is raised by the client.
Bug #1823200: This release contains an updated Dell EMC VxFlex OS driver. It must be used with
os-brick
version 3.1.0 or greater and requires that a new configuration file be deployed on compute nodes, cinder nodes, and anywhere you would perform a volume attachment in your deployment. See the Dell EMC VxFlex OS (ScaleIO) Storage driver documentation for details about the configuration file, and see OSSN-0086 for more information about the security vulnerability.
Bug #1828386: Fix the bug that a volume retyped from another volume type to a replicated or multiattach type cannot have replication or multiattach enabled in rbd driver.
Bug #1859652: Fix to allow retyping an attached volume to SolidFire.
Bug #1869746: Cinder no longer allows an incremental backup to be created while having the parent backup in another project.
Bug #1874134: Fix for NetApp ONTAP driver allowing an iSCSI or FCP volume to be extended to a size up to 16TB regardless of its original size, even if it’s attached to an instance.
Bug #1874541: Fix a ZeroDivisionError when the SolidFire driver tried to update cluster capabilities.
Bug #1875570: Fixed issue with NFS backend where the image-volume cache was never used to create a volume, even when the cache was enabled.
Bug #1879578: A regression in the Train release caused Cinder to assign the default volume type too aggressively when a volume type was not specified in a volume-create request. As a result, some alternative methods of specifying the volume type were ignored and the default type (either configured by the operator or the system default) would be assigned.
This release restores the intended behavior, which is described as follows:
If a
volume_type
is not specified when a volume is created, Cinder tries to infer the volume type from other information in the volume-create request:if a
source_volid
is supplied in the request, the volume type is inferred from the source volume’s volume typeif a
snapshot_id
is supplied in the request, the volume type is inferred from the volume type associated with the snapshotif an
imageRef
is supplied in the request, and the image has acinder_img_volume_type
image property, the volume type is inferred from the value of that image property
Otherwise, the volume type is the default volume type configured by the operator, and if no volume type is so configured, the volume type is the system default volume type, namely,
__DEFAULT__
.When a volume type is specified explicitly in a volume-create call, Cinder will use the specified type. If the specified type cannot be assigned due to a conflict with other parameters in the volume-create call, however, the call will result in a 400 (Bad Request) response.
Bug #1887885: In NEC driver, fix a snapshot detach error.
Bug #1887908: In NEC driver, fix live-migration failure with FC.
Bug #1890241: During delete_group_snapshot on IBM storwize, in case of multiple snapshots in the group, delete flow exits if any one snapshot deletion fails, but it should update error state and continue with deleting other snapshots.
Bug #1890586: IBM Storwize: Fixed issues in check_flashcopy_rate that impacts the performance during Group Snapshot/Clone operations for bulk volumes.
Bug #1890588: IBM Storwize: Fixed issues in select_io_group that impacts the performance during Create_volume, Group Snapshot/Clone operations for bulk non-hyperswap volumes.
Bug #1896087: Volume status will be rolled back to the previous state if backup creation fails when backup service is not available
Bug #1870367 : Partially fixed NFS and Quobyte drivers by no longer allowing extending a volume while it is attached, to prevent failures due to Qemu internal locking mechanisms.
Bug #1873738: RBD Driver: Added cleanup for residue destination file if the copy image to encrypted volume operation fails.
Bug #1697422: Fix HPE 3PAR driver issue where volumes that were live migrated to it would end up being inaccessible. We would no longer be able to use the volume for any operation, such as attach, detach, delete, snapshot, etc.
Bug #1858119: Fix the HPE 3PAR driver’s attempt to rename the backend volume after it was migrated. If the original volume resides on the same 3PAR backend then the pre and post migration volume names are swapped. Otherwise, the newly migrated volume is renamed to match the original name.
Fixed volume group action in Active/Active HA deployment:
Bug #1740950: the
host_name
field in any object in theattachments
array of the volume detail response is populated only when the call is made in an administrative context. Otherwise, its value is the JSONnull
value.
Bug #1886042: Fix
unique_fqdn_network
configuration option for the Kaminario driver, as it was being ignored when defined in the driver section, which used to work.
Bug #1880971: Fix leaving mapped volumes on offline volume migration and revert to snapshot operations failure.
Bug #1883490: Fixed incorrect response of listing volumes with filters.
Fixed a problem with volume retype not honoring the existing volume’s Availability Zone if one isn’t specified.
Bug #1884268: Fixed issue where non-admin users could not show a volume transfer by name.
HPMSA driver: The HPE MSA driver was updated to avoid using deprecated command syntax that has been removed in the latest version of the MSA API. This is required to support the newest firmware in the MSA 2060/1060.
Bug #1839384: NetApp ONTAP: Detaching any instance from multiattached volume terminates connection. Now the connection is terminated only if there’re no other instances using the same initiator.
Bug #1875478: PowerMax Driver - Concurrent live migrations can sometimes fail when one thread deletes a storage group that another thread may need.
Bug #1894086: PowerMax Cinder driver addresses an issue whereby Unisphere REST iterators expire before all data can be read from them. The iterator expiration is now set to 180mins and deleted once all data has been read so no artifacts are left behind.
Bug #1889758: Fix revert to snapshot not working for non admin users when using the snapshot’s name.
PowerMax Driver - corrected handling of exceptions occurring during cleanup in the context of volume migration (Change-Id I0c0a96e21209c5abe359c6985fae7cee598c21ab)
REST API - fixed issue where the Get Current Log Levels for Cinder Services call in microversion 3.32 was ignoring the server name filter (Change-Id Iecb3faad9270f969185089cc291127b340483a46)
Additionally, the following bugs were addressed:
Bug #1888831: PowerMax Driver - Volume updates for volumes in groups not performed during failover
Bug #1867906: group-create-from-src doesn’t work in active/active mode
Bug #1886662: PowerMax Driver - Volumes not cleaned up after exception during migrate, retype, srdf protect creates/deletes blocks subsequent operations
Bug #1874187: PowerMax driver - Exception was not handled and breaks the flow while add/remove volumes to generic volume group
Bug #1886689: Rekey fails when provider is legacy provider class
Bug #1877976: PowerMax Driver - RDFG suspended on vol create exception
Bug #1877445: Pure Storage Driver - doesn’t handle synchronous replication CIDR filters properly
Bug #1875953: Virtuozzo driver - missing context in create_cloned_volume call
Bug #1863021: Eventlet monkey patch results in assert len(_active) == 1 AssertionError
Bug #1875640: PowerMax Driver - Failover lock not released during U4P failover during exception
Bug #1875959: NetApp ONTAP NFS driver - Unable to perform flexclone from glance share
Bug #1875433: PowerMax Driver - Retype from rep to rep leaving storage group suspended
Bug #1875432: PowerMax Driver - Live migration fails when an instance has more than one replication device
Bug #1871744: Glance retry failed: TypeError: get() got an unexpected keyword argument ‘schema_name’
Bug #1873463: Virtuozzo driver - copy_volume_to_image() needs to support glance multistore
Bug #1892057: PowerMax Driver - Missing force flag for rep group volume adds
Bug #1892718: PowerMax Driver - SRDF suspend can fail during _create_replica
Additionally, the following minor fixes for which no bugs were filed were made:
Other Notes¶
Beginning with the Train release, untyped volumes (that is, volumes with no volume-type) have been disallowed. To facilitate this, a
__DEFAULT__
volume-type was included as part of the Train database migration. In this release, handling of the default volume-type has been improved:The
default_volume_type
configuration option is required to have a value. The default value is__DEFAULT__
.A request to delete the currently configured
default_volume_type
will fail. (You can delete that volume-type, but you cannot do it while it is the value of the configuration option.)There must always be at least one volume-type defined in a Cinder installation. This is enforced by the type-delete call.
If the
default_volume_type
is misconfigured (that is, if the value refers to a non-existent volume-type), requests that rely on the default volume-type (for example, a volume-create request that does not specify a volume-type) will result in a HTTP 500 response.
In order to provide operators with a choice of Fibre Channel Zone Manager drivers, the Cinder community has decided to continue supporting the Brocade FCZM driver, which was marked ‘unsupported’ in the Ussuri release, on a best-effort basis.
The driver has been tested against the first Release Candidate for the cinder Victoria release, but it does not have ongoing third-party CI. If you use this driver, and would be interested in running third-party CI for it, please contact the Cinder project team.
PowerMax driver - the minimum version of Unisphere for PowerMax required for Victoria is 9.2, so all the latest 92 REST endpoints will be used.