Train Series Release Notes

15.6.0-22

New Features

  • Pure Storage FlashArray driver: added configuration option pure_iscsi_cidr_list for setting several network CIDRs for iSCSI target connection. Both IPv4 and IPv6 is supported. The default still allows all IPv4 targets.

Upgrade Notes

  • This release introduces a new configuration option, vmdk_allowed_types, that specifies the list of VMDK image subformats that Cinder will allow. The default setting allows only the ‘streamOptimized’ and ‘monolithicSparse’ subformats, which do not use named extents.

Security Issues

  • This release introduces a new configuration option, vmdk_allowed_types, that specifies the list of VMDK image subformats that Cinder will allow in order to prevent exposure of host information by modifying the named extents in a VMDK image. The default setting allows only the ‘streamOptimized’ and ‘monolithicSparse’ subformats, which do not use named extents.

  • As part of the fix for Bug #1996188, cinder is now more strict in checking that the disk_format recorded for an image (as revealed by the Image Service API image-show response) matches what cinder detects when it downloads the image. Thus, some requests to create a volume from a source image that had previously succeeded may fail with an ImageUnacceptable error.

Bug Fixes

  • Bug #1935688: Cinder only supports uploading a volume of an encrypted volume type as an image to the Image service in raw format using a bare container type. Previously, os-volume_upload_image action requests to the Block Storage API specifying different format option values were accepted, but would result in a later failure. This condition is now checked at the API layer, and os-volume_upload_image action requests on a volume of an encrypted type that specify unsupported values for disk_format or container_format now result in a 400 (Bad Request) response.

  • PowerMax driver bug #1939139: Fix on create snapshot operation that exists when using PowerMax OS 5978.711 and later.

  • RBD driver bug #1947518: Corrected a regression caused by the fix for Bug #1931004 that was attempting to access the glance images RBD pool with write privileges when creating a volume from an image.

  • Bug #1965847: Fixed issue where importing a backup record for a backup_id that currently existed had the unfortunate side effect of deleting the existing backup record.

  • Bug #1996188: Fixed issue where a VMDK image file whose createType allowed named extents could expose host information. This change introduces a new configuration option, vmdk_allowed_types, that specifies the list of VMDK image subformats that Cinder will allow. The default setting allows only the ‘streamOptimized’ and ‘monolithicSparse’ subformats.

  • NetApp ONTAP bug #1906291: Fix volume losing its QoS policy on the backend after moving it (migrate or retype with migrate) to a NetApp NFS backend.

  • NFS driver bug #1860913: Fixed instance uses base image file when it is rebooted after online snapshot creation.

  • Pure Storage FlashArray driver bug 1910143: Parameter pure_iscsi_cidr is now IPv4/v6 agnostic.

  • Bug #1931004: Fixed use of incorrect stripe unit in RBD image clone causing volume-from-image to fail when using raw images backed by Ceph.

15.6.0

Bug Fixes

  • IBM Spectrum Virtualize driver Bug #1890254: Fix check_vdisk_fc_mappings is not deleting all flashcopy mappings while deleting source volume, when multiple clones and snapshots are created using common source volume.

  • Bug #1890591: IBM Spectrum Virtualize Family: Fixed issue in do_setup of StorwizeSVCCommonDriver to save pool information in stats during initialisation.

  • Bug #1915800: Add support for ports filtering in XtremIO driver.

  • Bug #1904892: Fix cinder manage operations for NFS backends using IPv6 addresses in the NFS server address. These were previously rejected by the Cinder API.

  • RBD driver bug #1907964: Add support for fast-diff on backup images stored in Ceph. Provided fast-diff is supported by the backend it will automatically be enabled and used. With fast-diff enabled, the generation of diffs between images and snapshots as well as determining the actual data usage of a snapshot is speed up significantly.

  • Bug #1920237: The backup manager calls volume remove_export() but does not wait for it to complete when detaching a volume after backup. This caused problems when a subsequent operation started on that volume before it had fully detached.

  • Pure Storage FlashArray driver fix to ensure cinder_tempest_plugin consistency group tests pass.

15.5.0

Upgrade Notes

  • This release contains a fix for Bug #1908315, which changes the default value of the policy governing the Block Storage API action Reset group snapshot status to make the action administrator-only. This policy was inadvertently changed to be admin-or-owner during the Queens development cycle.

    The policy is named group:reset_group_snapshot_status.

    • If you have a custom value for this policy in your cinder policy configuration file, this change to the default value will not affect you.

    • If you have been aware of this regression and like the current (incorrect) behavior, you may add the following line to your cinder policy configuration file to restore that behavior:

      "group:reset_group_snapshot_status": "rule:admin_or_owner"
      

      This setting is not recommended by the Cinder project team, as it may allow end users to put a group snapshot into an invalid status with indeterminate consequences.

    For more information about the cinder policy configuration file, see the policy.yaml section of the Cinder Configuration Guide.

  • 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.

Bug Fixes

  • Bug #1888951: Fixed an issue with creating a backup from snapshot with NFS volume driver.

  • 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 #1908315: Corrected the default checkstring for the group:reset_group_snapshot_status policy to make it admin-only. This policy governs the Block Storage API action Reset group snapshot status, which by default is supposed to be an adminstrator-only action.

  • Bug #1883490: Fixed incorrect response of listing volumes with filters.

  • Bug #1863806: os-reset_status notifications for volumes, snapshots, and backups were being sent to nonstandard publisher_ids relative to other cinder notifications for volumes, snapshots, and backups. Now they are also sent to the following standard publisher_ids, where most people would expect to find them:

    • ‘volume’ for volume status resets

    • ‘snapshot’ for snapshot status resets

    • ‘backup’ for backup status resets

  • 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.

  • NetApp SolidFire driver Bug #1896112: Fixes an issue that may duplicate volumes during creation, in case the SolidFire backend successfully processes a request and creates the volume, but fails to deliver the result back to the driver (the response is lost). When this scenario occurs, the SolidFire driver will retry the operation, which previously resulted in the creation of a duplicate volume. This fix adds the sf_volume_create_timeout configuration option (default value: 60 seconds) which specifies an additional length of time that the driver will wait for the volume to become active on the backend before raising an exception.

  • NetApp SolidFire driver Bug #1891914: Fix an error that might occur on cluster workload rebalancing or system upgrade, when an operation is made to a volume at the same time its connection is being moved to a secondary node.

15.4.1

New Features

  • 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.

Known Issues

  • PowerMax driver - Disabling inuse storage assisted migration to a metro or asynchronous replicated volume type as this operation will not facilitate FC scanning or iSCSI login of the target array.

Bug Fixes

  • Fixed bug #1859652 to allow retyping an attached volume to SolidFire.

  • Bug #1887908: In NEC driver, fix live-migration failure with FC.

  • 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.

  • 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 #1884268: Fixed issue where non-admin users could not show a volume transfer by name.

15.4.0

Prelude

The Cinder project team would like to point out some issues addressed by this release:

  • The online data migrations for Train have been updated to address an upgrade issue (Bug #1893107). The issue does not manifest itself in the Train release of cinder, but under specific circumstances it can prevent a cinder database upgrade from Train to Ussuri. See the “Upgrade Notes” and “Bug Fixes” sections below for more information.

  • This release improves the handling of the __DEFAULT__ volume-type (see “Other Notes”, below) and fixes Bug #1879578, in which the default type was applied too aggressively (see the discussion of this issue in “Bug Fixes”, below).

  • Operators affected by OSSN-0086 should note that this release updates the os-brick library used by cinder to version 2.10.5 in order to address an issue associated with the previous fixes for Bug #1823200.

Known Issues

  • HPE 3PAR driver now supports networks with duplicated FQDNs via configuration option unique_fqdn_network so attaching in these networks will work (bug #1834695).

Upgrade Notes

  • 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 for default_volume_type. See Bug #1886632 for more information about this change.

  • This release modifies the online database migrations to address an an upgrade issue (Bug #1893107). The issue does not manifest itself in the Train release of cinder, but under specific circumstances it can prevent a cinder database upgrade from Train to Ussuri.

    This upgrade notice applies to you only if all of the following conditions are met:

    1. You upgraded to Train from Stein

    2. Before upgrading from Stein, you did not purge the cinder database

    3. Your original upgrade from Stein was to cinder version 15.3.0 or earlier.

      Note

      If you are upgrading a Stein installation directly to this release (cinder 15.4.0) or later, this notice does not apply to you.

    If all the above three items apply to you, as part of your upgrade to cinder 15.4.0 you should re-run the online database migrations contained in this release. This will prepare your cinder database for an eventual upgrade to the Ussuri release.

    Note

    The online database migrations in this release require the existence of a volume type named __DEFAULT__. A __DEFAULT__ volume type was created as part of your original installation of/upgrade to a Train release of cinder. If you have renamed (or renamed and deleted) the __DEFAULT__ volume type, you must re-create it before running the online migrations. (If you renamed it, you don’t have to un-rename it; you can create a new one just for the purposes of the online database migration.)

    If necessary, you can create a new __DEFAULT__ volume type as follows using the Block Storage API, or by using the python-cinderclient or python-openstackclient to do the equivalent:

    API request: POST /v3/{project_id}/types

    Request body:

    {
        "volume_type": {
            "name": "__DEFAULT__",
            "description": "Default Volume Type",
            "os-volume-type-access:is_public": true
        }
    }
    

    The __DEFAULT__ volume type may safely be renamed (or renamed and deleted) after you have run the online migrations as long as the default_volume_type configuration option is set to a valid existing volume type.

  • This release updates the os-brick library used by Cinder to version 2.10.5 to correct hopefully the final problem with the fix for Bug #1823200 in the previous os-brick release.

    See the os-brick 2.10.5 release notes for more information.

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 configured default_volume_type cannot be deleted, however, the __DEFAULT__ volume type may not be deleted if it is the value of that configuration option.

  • Fix UnboundLocalError on the Brocade lookup driver on southbound client creation failure during the device mapping retrieval (Bug #1888550).

  • Add Python 3 support to the Brocade Zone Manager driver. (bug #1888548).

  • 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 #1866860).

  • NetApp SolidFire driver: Fixed an issue that causes failback to fail after a volume service restart. This change fixes bug 1859653.

  • Cinder no longer allows an incremental backup to be created while having the parent backup in another project.

  • Fix volume migration fails in the same ceph RBD pool. Bug 1871524.

  • Fix bug #1874134, 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 #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 type

    • if a snapshot_id is supplied in the request, the volume type is inferred from the volume type associated with the snapshot

    • if an imageRef is supplied in the request, and the image has a cinder_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 #1893107: The Ussuri release changes the cinder database schema to make the volume_type_id column in the volumes and snapshots tables non-nullable because all volumes have been required to have a volume type since the Train release. The online database migration in the cinder Train series (release 15.3.0 or earlier), however, did not process soft-deleted rows, leaving the possibility that there could be a deleted volume or snapshot with a null volume_type_id, which in turn will make the database upgrade fail when the non-nullability constraint cannot be applied when a Train installation is upgraded to Ussuri.

    If you are upgrading to this release from an earlier release in the Train series (that is, you are upgrading from cinder>=15.0.0,<=15.3.0), under specific circumstances you should re-run the online database migrations so that your database will be in the correct state when you eventually upgrade to a Ussuri release. See the “Upgrade Notes” for more information.

  • Bug #1873738: RBD Driver: Added cleanup for residue destination file if the copy image to encrypted volume operation fails.

  • 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 1697422)

  • 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 #1886042).

  • NetApp ONTAP: Fixes bug 1839384 Detaching any instance from multiattached volume terminates connection. Now the connection is terminated only if there’re no other instances using the same initiator.

  • Fix revert to snapshot not working for non admin users when using the snapshot’s name (bug #1889758).

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.

15.3.0

Upgrade Notes

  • This release updates the os-brick library used by Cinder to version 2.10.4 to correct a problem with the fix for Bug #1823200 in the previous os-brick release.

    See the os-brick 2.10.4 release notes for more information.

Bug Fixes

  • Bug #1875959: Fixed issue where NetApp ONTAP NFS driver would fail to flexclone a Glance image.

15.2.0

Upgrade Notes

  • The fix for Bug #1823200 requires os-brick >= 2.10.3 but < 2.11.0.

Security Issues

  • Due to OSSN-0085: Cinder configuration option can leak secret key from Ceph backend, deployers using the rbd_keyring_conf option are advised to stop using it immediately. The option has been deprecated for removal as of Ussuri and will be removed in the Victoria development cycle.

Bug Fixes

  • Bug #1823200: This release contains an updated Dell EMC VxFlex OS driver. It must be used with os-brick >= 2.10.3 but < 2.11.0. 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.

  • PowerMax Driver - Allowing for default volume type in group operations where the array serial number is retrieved from the cinder.conf instead of the pool_name on the extra specs.

  • PowerMax Driver - Issue with upgrades from pre Pike to Pike and later. The device is not found when trying to snapshot a legacy volume.

  • 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. (bug 1858119)

  • HPE 3PAR driver: The detach issue for multiattach capability (Bug 1834660) was fixed in the Cinder 15.0.0 (Train) release, but due to an oversight, the fix has not been announced until now.

15.1.0

New Features

  • Added the image_conversion_cpu_limit and image_conversion_address_space_limit as configurable parameters. This adds configurability to the image conversion process to prevent the process from timing out when converting larger images.

Upgrade Notes

  • IBM Storwize drivers had been previously marked unsupported. Testing requirements have been addressed and they are now fully supported again. IBM Storwize drivers allow cinder to manage volumes both in iSCSI and FC environment.

Bug Fixes

  • The volume-transfers list calls (GET /v3/{project_id}/volume-transfers, GET /v3/{project_id}/volume-transfers/detail) were not recognizing name as a filterable attribute. That has been fixed in the current release.

  • PowerMax driver - fix to eliminate ‘cannot use the device for the function because it is in a Copy Session’ when attempting to delete a volume group that previously had a group snapshot created on and deleted from it.

  • Catch argument exceptions when configuring multiattach for rbd volumes. This allows multiattach images with flags already set to continue instead of raising an exception and failing.

15.0.1

Bug Fixes

  • An incorrect lock in the remotefs code, which is used for the NFS driver, and other similar drivers, resulted in concurrent clone volume operations failing. create_cloned_volume now locks on the source volume id, meaning multiple clone operations from the same source volume are serialized.

    A lock in the volume manager flow generally prevents this on normal clone volume operations, but this clone method in the driver is called for operations such as cloning from the cinder image-volume cache or cloning from a cinder backend used as a glance store.

15.0.0

New Features

  • Added MacroSAN drivers that allows cinder to manage volumes in ISCSI and FC environment

  • Zadara VPSA Driver: Added new driver authentication method to use VPSA API access key, and deprecate exisiting authentication method that used username and password combination. The deprecated config inputs will be removed in the next official release after Train.

  • When an encrypted volume is cloned, a new encryption key is generated for the new volume. This is currently implemented only for iSCSI/FC backends.

  • When uploading qcow2 images to Glance, image data will be compressed. This will generally result in less data transferred to Glance at the expense of higher CPU usage. This behavior is controlled by the “image_compress_on_upload” boolean option, which defaults to True.

  • Added Peer Persistence support in HPE 3PAR cinder driver.

  • Enabled multiattach capability for hpe3par driver.

  • A general framework to accommodate hardware compression accelerators for compression of volumes uploaded to the Image service (Glance) as images and decompression of compressed images used to create volumes is introduced.

    The only accelerator supported in this release is Intel QuickAssist Technology (QAT), which produces a compressed file in gzip format. Refer to this Cinder documentation for more information about using this feature.

    Additionally, the framework provides software-based compression using GUNzip tool if a suitable hardware accelerator is not available. Because this software fallback could cause performance problems if the Cinder services are not deployed on sufficiently powerful nodes, the default setting is not to enable compression on image upload or download.

    The compressed image of a volume will be stored in the Image service (Glance) with the container_format image property of compressed. See the Image service documentation for more information about this image container format.

  • Support for multiattach is enabled for HPE MSA Storage

  • NEC Driver: Added support to revert a volume to a snapshot.

  • NEC Driver: Added multiattach support.

  • NetApp SolidFire now reports QoS and efficiency stats allowing operators to use those values in consideration for weighting and filtering of their backends.

  • Added new configuration options to allow more specific control over some periodic processes. See the ‘Upgrade’ section for details.

  • Added revert to snapshot support for NexentaStor5 iSCSI and NFS drivers.

  • NexentaStor5 iSCSI and NFS drivers multiattach capability enabled.

  • Added support for creating, deleting, and updating consistency groups for NexentaStor5 iSCSI and NFS drivers.

  • Added support for taking, deleting, and restoring consistency group snapshots for NexentaStor5 iSCSI and NFS drivers.

  • Added consistency group capability to generic volume groups for NexentaStor5 iSCSI and NFS drivers.

  • Added volume manage/unmanage support for NexentaStor5 iSCSI and NFS drivers.

  • Added snapshot manage/unmanage support for NexentaStor5 iSCSI and NFS drivers.

  • Added the ability to list manageable volumes and snapshots for NexentaStor5 iSCSI and NFS drivers.

  • PowerMax for Cinder driver now supports extending in-use Metro RDF enabled volumes.

  • PowerMax driver - Volume deallocate and volume delete functionality have been combined into a single workflow.

  • All volumes and snapshots created using the PowerMax for Cinder driver now have additional metadata included pertaining to the details of the asset on the backend storage array.

  • Pure Storage FlashArray driver has added configuration option pure_host_personality for setting the host personality upon host creation (existing hosts are not affected).

  • Pure Storage FlashArray driver has added configuration option pure_iscsi_cidr for setting a network CIDR for iSCSI target connection. The default value will allow connections to all iSCSI targets.

  • Re-added Infortrend Cinder volume driver. The Infortrend driver, removed in Cinder 12.0.0 (Queens), has been restored in this release.

  • Added a new Cinder driver for RackScale Design NVMe-oF storage solution.

  • New Cinder driver for Seagate FC and iSCSI storage arrays.

  • The StorPool driver enables the multiattach and thin_provisioning capabilities.

  • Dell EMC Unity driver: Add consistent group support. Users could create a group type supporting consistent groups with specification ‘consistent_group_snapshot_enabled’: <is> True, then any groups created of that group type are consistent groups, otherwise they are generic groups. The supported operations are: create/delete consistent groups, add volumes to and remove volumes from consistent groups, create/delete consistent group snapshots, create consistent groups from snapshots, clone consistent groups.

  • Added support for UC-Series model to Synology Cinder driver.

  • Dell EMC Unity Driver: Added volume replication support.

  • Added a new default volume type __DEFAULT__ which will be used when

    • A new volume is created without a type

    • The default_volume_type option is unset in cinder.conf

    Then the volume will be assigned the __DEFAULT__ type.

  • VxFlex OS driver now supports VxFlex OS 3.0 features: storage pools with fine granularity layout, volume compression(SPEF).

Known Issues

  • In the Image service (Glance), the compressed container format identifier does not indicate a particular compression technology; it is up to the image consumer to determine what compression has been used, and there is no requirement that OpenStack services must support arbitrary compression technologies. For the upload and download of compressed images, Cinder supports only the gzip format.

    While you may expect that Cinder will be able to consume any image in compressed container format that Cinder has created, you should not expect Cinder to be able to successfully use an image in compressed format that it has not created itself.

  • SmartCompression feature is disabled for the NexentaStor5 NFS driver. Thick provisioned volumes created as files containing zeros are not being compressed with standard compression if SmartCompression feature is enabled. This functionality will be fixed in a later release.

Upgrade Notes

  • Add a new config option ‘zadara_access_key’: Zadara VPSA access key.

  • Added config option backup_mount_attempts to specify the number of attempts to mount NFS share in the NFS backup driver.

  • A new check is added to the cinder-status upgrade check CLI to check for the use of backup driver module path instead of full driver class path in the backup_driver configuration setting.

  • A warning has been added to the cinder-status upgrade check CLI if a policy.json file is present. Documentation has been updated to correct the file as policy.yaml if any policies need to be changed from their defaults.

  • A new check is added to the cinder-status upgrade check CLI to check for the configuration of CoprHD, HGST or ITRI DISCO drivers. These drivers were removed in the Stein release and should not be configured at the time of upgrade.

  • A new check is added to the cinder-status upgrade check CLI to check for the use of cinder.volume.drivers.windows.windows.WindowsDriver and a message is reported that the user needs to update the setting to cinder.volume.drivers.windows.iscsi.WindowsISCSIDriver if it is encountered.

  • The driver for Datera’s Storage Systems has been marked as unsupported and is now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use it.

  • The Cinder database can now only be upgraded with changes since the Queens release. In order to upgrade from a version prior to that, you must now upgrade to at least Queens first.

  • A new check is added to the cinder-status upgrade check CLI to check for the use of the deprecated cinder.quota.NestedDbQuotaDriver. This driver will be replaced by a new, OpenStack-wide, nested quota management.

  • DellEMC Unity: The fix of bug 1825469 changes the default value of the force_delete_lun_in_storagegroup option from False to True, which means luns will always be force deleted after upgrade.

  • The HPE MSA driver options hpmsa_backend_name and hpmsa_backend_type options were deprecated in favor of hpmsa_pool_name and hpmsa_pool_type to avoid confusion, and the hpmsa_api_protocol, hpmsa_verify_certificate, and hpmsa_verify_certificate_path options were deprecated in favor of the standard driver_use_ssl, driver_ssl_cert_verify, and driver_ssl_cert_path options. To retain the default behavior, add driver_use_ssl = true to back-end entries in cinder.conf before the deprecated options are removed in a future release.

  • The Huawei Fusionstorage driver has been marked as unsupported and is now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use the driver.

  • The IBM Flashsystem drivers have been marked as unsupported and are now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use them.

  • The IBM GPFS driver has been marked as unsupported and is now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use it.

  • The IBM Storage drivers (XIV & DS8k) have been marked as unsupported and are now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use them.

  • The IBM Storwize drivers have been marked as unsupported and are now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use them.

  • The Lenovo driver options lenovo_backend_name and lenovo_backend_type options were deprecated in favor of lenovo_pool_name and lenovo_pool_type to avoid confusion, and the lenovo_api_protocol, lenovo_verify_certificate, and lenovo_verify_certificate_path options were deprecated in favor of the standard driver_use_ssl, driver_ssl_cert_verify, and driver_ssl_cert_path options. To retain the default behavior, add driver_use_ssl = true to back-end entries in cinder.conf before the deprecated options are removed in a future release.

  • Added string config option compression_format in [default] section of cinder.conf to specify image compression format. Currently the only legal value for this option is gzip.

  • Added boolean config option allow_compression_on_image_upload in [default] section of cinder.conf to enable/disable image compression on image upload. The default value of this option is false, which means image compression is disabled.

  • The HPE LeftHand driver has been marked as unsupported and is now deprecated. enable_unsupported_drivers will need to be set to True in cinder.conf to continue to use them.

  • NEC Driver: Added support of more than 4 iSCSI portals for a node.

  • SolidFire supports Synchronous, Asynchronous and SnapshotsOnly replication modes. This adds the config option solidfire:replication_mode to specify the mode to be used by Cinder. Its value can be Sync, Async or SnapshotsOnly.

  • The periodic_interval configuration option was being used in too many places, and as a result, it had become difficult to tune specific periodic tasks without affecting other functionality. The following configuration options should now be used in place of periodic_interval:

    • backup_driver_init_check_interval

    • backup_driver_status_check_interval

    • scheduler_driver_init_wait_time

    • backend_stats_polling_interval

    See the help text for these options for more information. The default value of each option is 60, which has been the default value of periodic_interval.

    • If you have not modified periodic_interval, you should see no differences from current behavior.

    • If you have modified periodic_interval, please review the new options to determine which one(s) should be adjusted. Also, you should consider setting periodic_interval back to its default value of 60.

    A warning has been added to the cinder-status upgrade check CLI to detect whether the periodic_interval option has been modified from its default value to remind you which of the above situations currently applies to you.

    The periodic_interval configuration option still exists but its use is now restricted to providing a default periodicity for objects created from the cinder.service.Service class.

  • The Nexenta Edge storage driver has been removed after completion of its deprecation period without a reliable 3rd Party CI system being supported. Customers using the Nexenta Edge driver should not upgrade Cinder without first migrating all volumes from their Nexenta backend to a supported storage backend. Failure to migrate volumes will result in no longer being able to access volumes back by the Nexenta Edge storage backend.

  • Added a new config option nexenta_rest_connect_timeout. This option specifies the time limit (in seconds), within which the connection to NexentaStor management REST API server must be established.

  • Added a new config option nexenta_rest_read_timeout. This option specifies the time limit (in seconds), within which NexentaStor management REST API server must send a response.

  • Added a new config option nexenta_rest_backoff_factor. This option specifies the backoff factor to apply between connection attempts to NexentaStor management REST API server.

  • Added a new config option nexenta_rest_retry_count. This option specifies the number of times to repeat NexentaStor management REST API call in case of connection errors and NexentaStor appliance EBUSY or ENOENT errors.

  • Added a new config option nexenta_origin_snapshot_template. This option specifies template string to generate origin name of clone.

  • Added a new config option nexenta_group_snapshot_template. This option specifies template string to generate group snapshot name.

  • HPE Nimble Storage drivers had been previously marked unsupported. Testing requirements have been addressed and they are now fully supported again. HPE Nimble Storage drivers allow cinder to manage volumes both in iSCSI and FC environment.

  • Two new checks are added to the cinder-status upgrade check CLI to ensure that online data migrations from Queens onward have been completed.

  • The Oracle ZFSSA drivers have been marked as unsupported and are now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use them.

  • The PowerMax Cinder driver has removed the environment configuration option san_rest_port in favour of the Cinder standard option san_api_port.

  • The DataCore drivers were marked as unsupported in the Rocky release and have now been removed.

  • The DRBDManage driver is now removed. Customers using the DRBDManage driver should not upgrade Cinder without first migrating all volumes from their DRBDManage backend to a supported storage backend such as LINSTOR. Failure to migrate volumes will result in not being able to access volumes backed by the DRBDManage storage backend.

  • The Veritas HyperScale storage driver has been removed after completion of its deprecation period without a reliable 3rd Party CI system being supported. Customers using the Veritas HyperScale driver should not upgrade Cinder without first migrating all volumes from their Veritas backend to a supported storage backend. Failure to migrate volumes will result in no longer being able to access volumes backed by the Veritas HyperScale storage backend.

  • Dell EMC ScaleIO has been rebranded to VxFlex OS. The drivers cinder.volume.drivers.dell_emc.scaleio.driver.ScaleIODriver will now be updated to cinder.volume.drivers.dell_emc.vxflexos.driver.VxFlexOSDriver in cinder.conf. Driver configuration options that start with sio should also be updated to vxflexos. Existing sio configuration options will continue to work but will be removed in the V release. Online documentation will also change to reflect these changes.

  • The Sheepdog driver has been marked as unsupported and is now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use the driver.

  • New config option spdk_max_queue_depth is added for SPDK NVMe-oF target. It allows users to specify max queu depth.

  • The Tintri storage driver has been removed after completion of its deprecation period without a reliable 3rd Party CI system being supported. Customers using the Tintri driver should not upgrade Cinder without first migrating all volumes from their Tintri backend to a supported storage backend. Failure to migrate volumes will result in no longer being able to access volumes backed by the Tintri storage backend.

  • The Prophetstor driver has been marked as unsupported and is now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use it.

  • The Veritas Access driver has been marked as unsupported and is now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use it.

  • The db migration script will create a volume type named __DEFAULT__ The online migration will migrate all existing untyped volumes, snapshots to the __DEFAULT__ type. An invalid/non-existent type specified with default_volume_type option in cinder.conf will result in VolumeTypeNotFoundByName exception.

  • The Virtuozzo driver has been marked as unsupported and is now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use it.

  • VxFlex OS (ScaleIO) driver drops support for options, which were marked as deprecated in Pike release. Remove config options: sio_protection_domain_id, sio_protection_domain_name, sio_storage_pool_name, sio_storage_pool_id. Remove volume type options: sio:sp_name, sio:sp_id, sio:pd_name, sio:pd_id, sio:provisioning_type, sio:iops_limit, sio:bandwidth_limit.

Deprecation Notes

  • The driver for Datera’s Storage Systems has been marked as unsupported and is now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use it. If its support status does not change, it will be removed in the ‘U’ development cycle.

  • The cinder.quota.NestedDbQuotaDriver quota driver for handling nested projects is now deprecated. There is an OpenStack-wide effort to move to “unified limits” that will require changes in how quotas are handled for these types of configurations. The NestedDbQuotaDriver will continue to work until it is replaced with this new mechanism.

  • The configuration option sf_allow_template_caching for the SolidFire driver has been removed. Use image_volume_cache enabled equals True for a better template image cache that is managed from Cinder.

  • The HPE MSA driver options hpmsa_backend_name and hpmsa_backend_type options were deprecated in favor of hpmsa_pool_name and hpmsa_pool_type to avoid confusion, and the hpmsa_api_protocol, hpmsa_verify_certificate, and hpmsa_verify_certificate_path options were deprecated in favor of the standard driver_use_ssl, driver_ssl_cert_verify, and driver_ssl_cert_path options. To retain the default behavior, add driver_use_ssl = true to back-end entries in cinder.conf before the deprecated options are removed in a future release.

  • The Huawei Fusionstorage driver has been marked as unsupported due to a lack of Python3.7 support and is now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use them. If Python3.7 support is not demonstrated, the driver will be removed in the ‘U’ development cycle.

  • The IBM Flashsystem drivers have been marked as unsupported and are now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use them. If the support status does not change, the drivers will be removed in the ‘U’ development cycle.

  • The IBM GPFS driver has been marked as unsupported and is now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use it. If its support status does not change, it will be removed in the ‘U’ development cycle.

  • The IBM Storage drivers (XIV & DS8k) have been marked as unsupported and are now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use them. If the support status does not change, the drivers will be removed in the ‘U’ development cycle.

  • The IBM Storwize drivers have been marked as unsupported and are now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use them. If the support status does not change, they will be removed in the ‘U’ development cycle.

  • The Lenovo driver options lenovo_backend_name and lenovo_backend_type options were deprecated in favor of lenovo_pool_name and lenovo_pool_type to avoid confusion, and the lenovo_api_protocol, lenovo_verify_certificate, and lenovo_verify_certificate_path options were deprecated in favor of the standard driver_use_ssl, driver_ssl_cert_verify, and driver_ssl_cert_path options. To retain the default behavior, add driver_use_ssl = true to back-end entries in cinder.conf before the deprecated options are removed in a future release.

  • The HPE LeftHand driver has been marked as unsupported and is now deprecated. enable_unsupported_drivers will need to be set to True in cinder.conf to continue to use them. The driver will be removed in the Ussuri release.

  • NEC Driver: Deprecated nec_iscsi_portals_per_cont config option. The option was used to limit number of portals and is no longer needed.

  • The Oracle ZFSSA drivers have been been marked as unsupported and are now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use them. Oracle has indicated that they don’t plan to continue to support the drivers so they will be removed in the ‘U’ development cycle.

  • The DRBDManage driver is deprecated as of the Stein release and is removed in the Train release. Users should use the new LINSTOR driver instead.

  • The Sheepdog driver has been marked as unsupported and is now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use the driver. The driver is scheduled for removal in the ‘U’ release.

  • The Prophetstor driver has been marked as unsupported and is now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use it. If its support status does not change, it will be removed in the ‘U’ development cycle.

  • The Veritas Access driver has been marked as unsupported and is now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use it. If its support status does not change, it will be removed in the ‘U’ development cycle.

  • The Virtuozzo driver has been marked as unsupported and is now deprecated. enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use it. If its support status does not change, it will be removed in the ‘U’ development cycle.

  • The config option vmware_storage_profile is now deprecated and ignored. Setting this option results in performance degradation of the controller and put lot of load on vCenter server.

Bug Fixes

  • Solidfire fix extend volume with qos-Scaling to honor the increased size with increased iops on the extended volume.

  • Now cinder will be rollback the quota_usages table when failed to create an incremental backup if there doesn’t exist a parent backup or the backup is not in available state.

  • Fix python 3 incompatibility issues preventing NetApp cDOT driver from generating EMS logging messages (Bug #1833115).

  • Fixes a bug that prevented distributed file system drivers from creating snapshots during volume clone operations (NFS, WindowsSMBFS, VZstorage and Quobyte drivers). Fixing this allows creating snapshot based backups.

  • Fix DetachedInstanceError is not bound to a Session for VolumeAttachments. This affected VolumeList.get_all, and could make a service fail on startup and make it stay in down state.

  • DellEMC Unity: Fix bug 1825469. The fix enables the force_delete_lun_in_storagegroup option to True by default, which makes sure that luns can deleted even when they are still in storage groups.

  • The SolidFire replication was fixed. Several bugs were addressed (creating replicated volumes from snapshots, from volumes, retype a volume to a replicated type, managing a volume to a replicated type, correctly updating portal info on failover/failback and some minor other fixes). Closes bugs #1834013, #1751932.

  • This change fixes bug 1845483 - 3PAR: For Peer Persistence, add policy options in RCG. Following options are added after Remote Copy Group (RCG) is created: autoFailover, pathManagement, autoRecover

  • Bug 1809249 - 3PAR driver adds the config option hpe3par_target_nsp that can be set to the 3PAR backend to use when multipath is not enabled and the Fibre Channel Zone Manager is not used.

  • Fixed HPE MSA driver issue where a multi-attached volume could be unmapped while still in use.

  • Kaminario FC and iSCSI drivers: Fixed bug 1829398 where force detach would fail.

  • Fixed Lenovo driver issue where a multi-attached volume could be unmapped while still in use.

  • LVM iSCSI driver fix for IPv6 addresses for the different targets, IET, LIO, TGT, CXT, and SCST.

  • NetApp iSCSI drivers no longer use the discovery mechanism for multipathing and they always return all target/portals when attaching a volume. Thanks to this, volumes will be successfully attached even if the target/portal selected as primary is down, this will be the case for both, multipath and single path connections.

  • Rbd replication secondary device could set different user and keyring with primary cluster. Secondary secret_uuid value is configed in libvirt secret, and libvirtd using secondary secret reconnect to secondary cluster after Cinder failover host.

  • Dell EMC SC Driver: Fixes bug 1822229 to handle the volume mappings in the backend when a volume is attached to multiple instances on the same host.

  • Fixed issue where all Ceph RBD backups would be incremental after the first one. The driver now honors whether --incremental is specified or not.

  • Dell EMC VNX Driver: Fix bug 1796825, adding an option named vnx_async_migrate to accept the default setting for async migration.

  • Dell EMC VNX Cinder Driver: Fixes bug 1794646 to delete the LUN from the VNX storage. Because a temporary snapshot is created from the LUN during creating a volume from a snapshot and isn’t deleted, the LUN cannot be deleted before its snapshot is deleted. The fix makes sure the temp snapshot is deleted.

Other Notes

  • The Nexenta Edge storage driver was marked unsupported in Stein due to 3rd Party CI not meeting Cinder’s requirements. As a result the driver is removed starting from the Train release.

  • PowerMax driver - the minimum version of Unisphere for PowerMax required for Train is 9.1, so all the latest 91 REST endpoints will be used.

  • The PowerMax for Cinder driver now implements noCopy mode for links between SnapVX source and target. This change will improve space efficiency by using pointers instead of copied tracks when source and target volumes are linked.

  • The Veritas HyperScale storage driver was marked unsupported in Stein due to 3rd Party CI not meeting Cinder’s requirements. As a result the driver is removed starting from the Train release.

  • The Tintri storage driver was marked unsupported in Stein due to 3rd Party CI not meeting Cinder’s requirements. As a result the driver is removed starting from the Train release.