Ussuri Series Release Notes

16.4.2-17

New Features

  • HPE 3PAR Driver: Add support of iSCSI driver for Primera 4.2 or higher versions.

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

  • Log a warning from the volume service when a volume driver’s get_volume_stats() call takes a long time to return. This can help deployers troubleshoot a cinder-volume service misbehaving due to a driver/backend performance issue.

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 specifies unsupported values for disk_format or container_format now result in a 400 (Bad Request) response.

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

  • PowerMax driver bug #1929429: Fixes child/parent storage group check so that a pattern match is not case sensitive. For example, myStorageGroup should equal MYSTORAGEGROUP and mystoragegroup.

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

16.4.2

Bug Fixes

  • 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 #1931004: Fixed use of incorrect stripe unit in RBD image clone causing volume-from-image to fail when using raw images backed by Ceph.

16.4.1

Bug Fixes

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

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

16.4.0

Bug Fixes

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

16.3.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) behaviour, you may add the following line to your Cinder policy configuration file to restore that behaviour:

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

Bug Fixes

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

  • 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 Virtualise Family: Fixed issue in do_setup of StorwizeSVCCommonDriver to save pool information in stats during initialisation.

  • 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 1913449: Fix RBD driver _update_volume_stats() failing when using Ceph Pacific Python RADOS libraries. This failed because we were passing a str instead of bytes to cluster.mon_command()

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

16.2.1

Upgrade Notes

  • 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 #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 compatibility 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 #1883490: Fixed incorrect response of listing volumes with filters.

16.2.0

Prelude

This release contains a partial fix for an upgrade issue. If you are upgrading a Train deployment of cinder to Ussuri, under specific circumstances you may need to take actions outside the normal upgrade process in order to accomplish a successful upgrade. In particular, there may be changes you must make in your Train deployment before you upgrade. See the “Upgrade Notes” and “Bug Fixes” sections of these release notes for details.

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

  • 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 3.0.3 in order to address an issue associated with the previous fixes for Bug #1823200.

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

  • Due to Bug #1893107, under specific circumstances, some operators may need to take actions outside the normal upgrade process to upgrade from Train to Ussuri. See the “Upgrade Notes” and “Bug Fixes” sections of these release notes for more details.

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 behaviour whether or not you have set a value for default_volume_type. See Bug #1886632 for more information about this change.

  • This release partially fixes an upgrade issue (Bug #1893107) that under some circumstances could prevent a Cinder database upgrade from Train to Ussuri. The issue would occur if you had upgraded an unpurged Stein database to Train, and then attempted to upgrade the still unpurged database to Ussuri. If this describes your situation, please read further, because in order to avert this issue, there are some steps you may need to take in your Train deployment before you upgrade 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

    If all of the above apply to you, your upgrade path from Train to Ussuri is slightly more complicated than usual and may require some actions in your Train deployment before you upgrade. Please pick the least inconvenient of the following options:

    1. Upgrade your Train deployment to Cinder 15.4.0 or more recent and re-run the online database migrations in your Train deployment.

      • This migration requires the existence of a __DEFAULT__ volume type. If you have renamed (or renamed and deleted) the __DEFAULT__ volume type in Train, 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.

      • After the online database migrations from cinder 15.4.0 or more recent have run, you may upgrade to Ussuri in the normal way.

    2. Upgrade to Ussuri, but run the online database migrations before you run the db_sync. (The normal ordering is to run db_sync first, and then run the online migrations.)

      • If you have renamed (or renamed and deleted) the __DEFAULT__ volume type in Train, you must re-create it in your Train deployment before upgrading to Ussuri. This will ensure that the __DEFAULT__ volume type will be present in the database when you run the Ussuri online database migrations.

        Use the directions above if you need to re-create the __DEFAULT__ volume type.

        Once your Ussuri upgrade is completed, the __DEFAULT__ volume type may safely be renamed (or renamed and deleted) as long as the default_volume_type configuration option is set to a valid existing volume type.

    3. While in your Train deployment, purge the cinder database. This will remove soft-deleted volumes and snapshots and allow you to upgrade to Ussuri in the regular way.

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

    See the os-brick 3.0.3 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).

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

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

  • 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 #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 behaviour, 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 #1887908: In NEC driver, fix live-migration failure with FC.

  • 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 migration in cinder 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 would make the database upgrade fail in Ussuri when the non-nullability constraint could not be applied.

    The issue is partially fixed in the current release (“partially” because in specific circumstances, an operator may need to take some actions outside the normal upgrade process). 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).

  • Bug #1884268: Fixed issue where non-admin users could not show a volume transfer by name.

  • PowerMax Driver - Concurrent live migrations can sometimes fail when one thread deletes a storage group that another thread may need.

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

16.1.0

Upgrade Notes

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

Security Issues

Bug Fixes

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

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

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

16.0.0

Prelude

Welcome to the Ussuri release of the OpenStack Block Storage service (Cinder). The cinder team would like to bring the following points to your attention. Details may be found below.

  • With this release, the Block Storage API version 3 has reached microversion 3.60.

  • Python 2 is no longer supported. The minimum version of Python that may be used with this release is Python 3.6.

  • The unsupported driver removal policy has been revised. See the “Known Issues” section of this document for more information.

New Features

  • Huawei Cinder Driver Support Dorado V6 Storage.(iSCSI, FC)

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

  • Added the property src_backup_id to the volume’s metadata, to record from which backup the new volume was created. If the src_backup_id exists in the volume’s metadata, it will be updated. When restoring from a chain of incremental backups, src_backup_id is set to the last incremental backup used for the restore.

  • The Datera driver now supports API v2.2, IOPS/GB and BW/GB settings, LDAP and CHAP, extended metadata attributes during volume creation and attachment. Most retype operations do not detach volumes any more. Manageable Snapshots can be listed. Flash and Hybrid capacity information added.

  • The LINSTOR Driver for Cinder now supports LINSTOR 0.9.12.

  • Fujitsu Driver: Added multiple pools support.

  • Ability to add minimum and maximum volume size restrictions which can be set on a per volume-type granularity. New volume type keys of ‘provisioning:min_vol_size’ and ‘provisioning:max_vol_size’.

  • PowerMax Driver - Support to allow the use of multiple replication modes on one backend array.

  • Dell EMC PowerMax driver now supports Unisphere storage group and array tagging to allow the user to specify a user defined tag to facilitate easy access and classification.

  • Dell EMC PowerMax driver now facilitates the user to override the short host name and port group name seen in PowerMax masking view and storage view terminology. This means the user can give more meaningful names, especially when the short host name exceeds 16 characters and the port group name exceeds 12 characters, which is the condition where the driver truncates these values.

  • RBD driver: support added for reverting a volume to the most recent snapshot taken.

    Please be aware of the following known issues with this operation and the Ceph storage backend:

    • Rolling back a volume to a snapshot overwrites the current volume with the data from the snapshot, and the time it takes to complete this operation increases with the size of the volume.

      It is faster to create a new volume from a snapshot. You may wish to recommend this option to your users whose use cases do not strictly require revert-to-snapshot.

    • The efficiency of revert-to-snapshot is also dependent upon the Ceph storage backend in use, namely, whether or not BlueStore is being used in your Ceph installation.

    Please consult the Ceph documentation for details.

  • Added SandStone driver that allows Cinder to manage volumes in iSCSI environment.

  • NetApp SolidFire driver: Enabled support for Active/Active (including replication) to the SolidFire driver. This allows users to configure SolidFire backends in clustered environments.

  • This release includes support for Glance multiple stores. An operator may now specify which Glance store will be used when a volume is uploaded to Glance as an image. Some details about this feature:

    • This feature is not directly user-facing. To enable it, an operator must add the field image_service:store_id in the volume-type extra-specs. The value of the field is a valid store identifier (id) configured in Glance, which may be discovered by making a GET /v2/info/stores call to the Image Service API.

    • If image_service:store_id is not set in the extra-specs for a volume-type, then any volume of that type uploaded as an image will be uploaded to the default store in Glance.

    • The image_service:store_id can only be set in the extra-specs for a volume-type when multiple glance stores are configured.

    • Cinder validates proposed Glance store identifiers by contacting Glance at the time the image_service:store_id is added to a volume-type’s extra-specs. Thus the Image Service API must be available when a volume-type is updated.

  • Beginning with microversion 3.60, users may apply time comparison filters to the volume summary list and volume detail list requests by using the created_at or updated_at fields. Time must be expressed in ISO 8601 format. See the Block Storage API v3 Reference for details.

  • Dell EMC Unity Driver: Added consistency group replication support. The storops library version 1.2.3 or newer is required.

  • Dell EMC Unity driver: Add efficient retype support when new type uses the same Unity device.

  • Dell EMC Unity driver: Add tiering policy configuration support for volume.

  • This release includes support for Glance automatic image colocation. When a volume originally created from an image is uploaded to the Image service, Cinder passes Glance a reference to the original image. Glance may use this information to colocate the new image data in the same image store(s) as the original image data. Consult the Glance documentation for more information.

  • VxFlex OS driver now supports VxFlex OS 3.5.x.

  • VxFlex OS driver now supports storage-assisted volume migration.

  • VxFlex OS driver now supports OpenStack volume replication v2.1 for VxFlex OS v3.5.0 storage backends.

  • VxFlex OS driver now supports storage-assisted revert volume to snapshot.

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

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

  • RBD driver: There are some known issues concerning the revert-to-snapshot support added in this release.

    • The time it takes to complete the revert-to-snapshot operation increases with the size of the volume. It is faster to create a new volume from a snapshot.

    • The efficiency of revert-to-snapshot depends upon the Ceph storage backend in use, particularly whether or not BlueStore is being used in your Ceph installation.

    Please consult the Ceph documentation for details.

  • For the convenience of operators, the unsupported driver removal policy was changed during the Ussuri development cycle to allow unsupported drivers to remain in the Cinder source code repository at the discretion of the Cinder team (basically, this means the vendor has not explicitly declared the driver EOL or the vendor has expressed interest in getting the third-party CI system working again). Be aware, however, that such drivers are subject to immediate removal if they begin failing the general Cinder gating tests.

    The following drivers were classified as unsupported in the Train release and continue as unsupported in this release:

    • IBM FlashSystem drivers: FC and iSCSI

    • ProphetStor drivers: FC and iSCSI

    • Veritas ACCESS iSCSI driver

    • Virtuozzo Storage driver

    For completeness, here is the list of drivers first marked unsupported in the Ussuri release. See the “Deprecation Notes” section of this document for details.

    • Brocade Fibre Channel Zone Manager driver

    • Veritas Clustered NFS driver

    In order to use an unsupported driver, enable_unsupported_driver must be set to True in the driver’s section in the cinder.conf file. If you are the consumer of such a driver, we encourage you to contact the vendor to make them aware of your concerns.

  • A key aspect of supported drivers is that there is a fully functioning third-party CI system that reports on all proposed changes to the Cinder code. However, the fact that there are ‘unsupported’ drivers at all indicates that third-party CI systems are unfortunately not always fully functioning. You may consult the report at the following link to learn the extent to which a particular driver’s CI system is reporting on the development branch of Cinder:

    http://cinderstats.ivehearditbothways.com/cireport.txt

Upgrade Notes

  • IBM GPFS drivers had been previously marked unsupported. Testing requirements have been addressed and they are now fully supported again. IBM GPFS drivers allow Cinder to manage volumes.

  • The LINSTOR driver for Cinder supports LINSTOR 0.9.12. The driver supports LINSTOR backend using REST API.

    The new driver adds ‘linstor_autoplace_count’ configuration option that specifies the number of volume replicas.

  • Python 2.7 support has been dropped. The last release of Cinder to support py2.7 is OpenStack Train. The minimum version of Python now supported by Cinder is Python 3.6.

  • The Huawei FusionStorage driver had previously been marked unsupported. The 3rd Party CI has been restored, and the driver is now fully supported in the Ussuri release.

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

  • IBM Spectrum Virtualize Family (previously known as Storwize) drivers had been previously marked unsupported. Testing requirements have been addressed and they are now fully supported again. IBM Spectrum Virtualize Family drivers allow Cinder to manage volumes both in iSCSI and FC environments.

  • The IET iSCSI target driver has been marked deprecated and will be removed in the “V” release. The IET iSCSI target project is no longer active and is not supported by all distributions. It is recommended to migrate to a supported distribution and iSCSI target prior to upgrading.

  • The Brocade Fibre Channel Zone Manager driver has been marked as unsupported and is now deprecated. It is subject to removal during the “V” development cycle, following the standard OpenStack deprecation policy. The config option enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use it in this release.

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

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

  • Dell EMC PS Series storage driver is not supported and removed starting from the Ussuri release. It was marked as deprecated in the Train release.

  • The HPE Lefthand Driver (iSCSI) was marked unsupported in the Train release as the StoreVirtual product line has gone EOL and the LeftHand OS no longer receives upgrades. The driver has been removed in this release. All data on backends powered by HPE LeftHand OS should be migrated to a supported storage backend before upgrading your Cinder installation.

  • If you have backup_driver_status_check_interval option in your cinder.conf we recommend you to use backup_driver_stats_polling_interval to avoid deprecation warnings in logs.

  • SPDK target and volume drivers have been updated with new SPDK specific RPC calls due to deprecation of some old RPC calls. Starting from Ussuri release SPDK release v19.10 or higher is required.

  • The Sheepdog driver was marked unsupported in the Train release and has now been removed. All data on Sheepdog backends should be migrated to a supported backend before upgrading your Cinder installation.

  • The following drivers were classified as unsupported in the Train release and continue as unsupported in this release. See the “Known Issues” section of this document for details.

    • IBM FlashSystem drivers: FC and iSCSI

    • ProphetStor drivers: FC and iSCSI

    • Veritas ACCESS iSCSI driver

    • Virtuozzo Storage driver

    In order to use an unsupported driver, enable_unsupported_driver must be set to True in the driver’s section in the cinder.conf file. If you are the consumer of such a driver, we encourage you to contact the vendor to make them aware of your concerns.

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

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

  • VMware vmdk driver: The VMware vmdk driver had its get_volume_stats removed in a previous release due to a potential performance hit of 20% at a high load. The problem with reporting unknown back to the scheduler, is that it effectively removes Cinder’s ability to properly schedule based on capacity utilisation. When this driver is enabled in a heterogeneous environment without properly reporting utilisation statistics, the scheduler’s capacity filter will always allow this driver to service a provisioning request. Without reporting the backend stats, the capacity filter also can’t determine the reserved_percentage as well as the max_over_subscription_ratio. To enable the collection of stats set vmware_enable_volume_stats to True in the driver section of cinder.conf. The default setting is False. Keep in mind that there may be a degradation in performance on the vCenter when enabling this setting.

  • The volume_extension:volume_type_encryption policy, which was deprecated in Stein, has been un-deprecated for the convenience of operators who would like to set the policies for the create, get, update, and delete operations for a volume type’s encryption type in one place. The default value for this policy target has not changed.

    As a reminder, the finer-grained policies are:

    • volume_extension:volume_type_encryption:create

    • volume_extension:volume_type_encryption:get

    • volume_extension:volume_type_encryption:update

    • volume_extension:volume_type_encryption:delete

    The default values for these policies have also not changed. See the sample Cinder policy file for more information.

Deprecation Notes

  • The Datera driver removed v2 API support and the usage of initiator-groups

  • The configuration option rbd_keyring_conf for the Ceph cinder driver presents a security risk and the option is hereby deprecated and scheduled to be removed early in the ‘V’ development cycle, following the standard OpenStack deprecation policy. For more information, see OSSN-0085: Cinder configuration option can leak secret key from Ceph backend.

  • The IET iSCSI target driver has been marked deprecated and will be removed in the “V” release. The IET iSCSI target project is no longer active and is not supported by all distributions. It is recommended to migrate to a supported distribution and iSCSI target prior to upgrading.

  • The Brocade Fibre Channel Zone Manager driver has been marked as unsupported and is now deprecated. It is subject to removal during the “V” development cycle, following the standard OpenStack deprecation policy. The config option enable_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to continue to use it in this release.

  • backup_driver_status_check_interval config option is renamed to backup_driver_stats_polling_interval to be similar with volume drivers configuration. Old option name support will be dropped in U release.

  • In this release, sending os-reset_status notifications to the following nonstandard publisher_ids is DEPRECATED:

    • ‘volumeStatusUpdate’ for volume status resets

    • ‘volumeStatusUpdate’ for snapshot status resets

    • ‘backupStatusUpdate’ for backup status resets

    The notifications continue to be published to the above during the deprecation period. Beginning with this release, the os-reset_status notifications are also sent to the following standard publisher_ids:

    • ‘volume’ for volume status resets

    • ‘snapshot’ for snapshot status resets

    • ‘backup’ for backup status resets

    This will allow consumers of these notifications to make a smooth transition. In the Victoria release, os-reset_status notifications will only be sent to the standard publisher_ids.

  • The following drivers were deprecated in the Train release but have not yet been removed. They continue as unsupported and deprecated in this release. See the “Known Issues” section of this document for details.

    • IBM FlashSystem drivers: FC and iSCSI

    • ProphetStor drivers: FC and iSCSI

    • Veritas ACCESS iSCSI driver

    • Virtuozzo Storage driver

    In order to use an unsupported driver, enable_unsupported_driver must be set to True in the driver’s section in the cinder.conf file. If you are the consumer of such a driver, we encourage you to contact the vendor to make them aware of your concerns.

  • The Veritas Clustered NFS 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. It its support status does not change the driver will be removed in the ‘V’ 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.

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 early in the ‘V’ development cycle.

Bug Fixes

  • Fixes a bug that prevented creation of Quobyte volumes from snapshots during snapshot backups. This now allows backing up volumes with existing snapshots. Partially fixes bug 1703405 .

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

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

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

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

  • Fixes a bug that could cause mount failures with the Quobyte driver if the quobyte_volume_url setting was changed in a running system.

  • Datera driver: fixes in retyping / QoS, Glance interoperability, fast clones, IP pools, volume templates and initiators, Unicode character support, scalability issues

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

  • 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

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

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

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

  • os-reset_status notifications for volumes, snapshots and backups will now go to the standard publisher id for volume, snapshot and backup like all other notifications for volume, snapshot and backup.

  • VMware vmdk driver: The collection of volume stats, which had been disabled, may now be turned on by using the vmware_enable_volume_stats configuration option. The default for this option is False (no stats collection). Be aware that enabling volume stats may cause performance issues under high load.

Other Notes

  • The Datera driver went under a major driver revamp/restructure and a new separate Datera Python-SDK requirement has been introduced

  • PowerMax driver - the minimum version of Unisphere for PowerMax for the current release is 9.1.0.5. It is however recommended to install the Security Releases(SR) of Unisphere for PowerMax if they become available.

  • PowerMax Driver - Two new replication specific configuration options sync_interval and sync_retries have been added to PowerMax cinder configuration. These configuration options determine how many times to retry checks to see if a SnapVX copy mode has completed with a replication enabled volume, and how long to wait between retries.