Pike Series Release Notes

Pike Series Release Notes

11.0.0

Prelude

Drivers supporting consistent group snapshot in generic volume groups reports “consistent_group_snapshot_enabled = True” instead of “consistencygroup_support = True”. As a result, a spec such as “consistencygroup_support: ‘<is> True’” in either group type or volume type will cause the scheduler not to choose the backend that does not report “consistencygroup_support = True”. In order to create a generic volume group that supports consistent group snapshot, “consistent_group_snapshot_enable: ‘<is> True’” should be set in the group type specs and volume type extra specs, and “consistencygroup_support: ‘<is> True’” should not be set in group type spec and volume type extra specs.

New Features

  • HPE 3PAR driver adds following functionalities Creating thin/dedup compresssed volume. Retype for tpvv/tdvv volumes to be compressed. Migration of compressed volumes. Create compressed volume from compressed volume/snapshot source. Compression support to create cg from source.
  • Added consistency group capability to generic volume groups in the HPE 3PAR driver.
  • Add consistent group capability to generic volume groups in Lefthand driver.
  • Add consistent group capability to generic volume groups in the SolidFire driver.
  • Added attribute connection_info to attachment object.
  • Add filters support to get_pools API v3.28.
  • Added like operator support to filters for the following resources:

    - volume
    - snapshot
    - backup
    - group
    - group-snapshot
    - attachment
    - message
    
  • Added periodic task to clean expired messages in cinder scheduler, also added a configuration option message_reap_interval to handle the interval.
  • Added resource_filters API to retrieve configured resource filters.
  • Add revert to snapshot API and support in LVM driver.
  • Add volume-type filter to API Get-Pools
  • Added RBD keyring configuration parameter rbd_keyring_conf to define custom path of Ceph keyring file.
  • Allow users to specify the copy speed while using Huawei driver to create volume from snapshot or clone volume, by the new added metadata ‘copyspeed’. For example, user can add –metadata copyspeed=1 when creating volume from source volume/snapshot. The valid optional range of copyspeed is [1, 2, 3, 4], respectively representing LOW, MEDIUM, HIGH and HIGHEST.
  • Added new BoolOpt backup_ceph_image_journals for enabling the Ceph image features required to support RBD mirroring of Cinder backup pool.
  • Add user_id field to snapshot list/detail and snapshot show.
  • Add consistent group capability to generic volume groups in CoprHD driver.
  • Added datera_disable_profiler boolean config option.
  • Added Cinder fast-retype support to Datera EDF driver.
  • Added Volume Placement extra-specs support to Datera EDF driver.
  • Fixed ACL multi-attach bug in Datera EDF driver.
  • Fixed a few scalability bugs in the Datera EDF driver.
  • Add consistency group capability to Generic Volume Groups in the Dell EMC SC driver.
  • Add replication consistency group support in DS8K cinder driver.
  • DS8K driver adds two new properties into extra-specs so that user can specify pool or lss or both of them to allocate volume in their expected area.
  • Added ability to specify multiple storage pools in the FalconStor driver.
  • Added generalized resource filter support in list volume, list backup, list snapshot, list group, list group-snapshot, list attachment, list message and list pools APIs.
  • Generic group is added into quota management.
  • Added consistent group capability to generic volume groups in GPFS driver.
  • Add CG capability to generic volume groups in Huawei driver.
  • Add mirrored volume support in IBM SVC/Storwize driver.
  • In IBM Storwize_SVC driver, user could specify only one IO group per backend definition. The user now may specify a comma separated list of IO groups, and at the time of creating the volume, the driver will select an IO group which has the least number of volumes associated with it. The change is backward compatible, meaning single value is still supported.
  • Added support for volume compression in INFINIDAT driver. Compression is available on InfiniBox 3.0 onward. To enable volume compression, set infinidat_use_compression to True in the backend section in the Cinder configuration file.
  • Add CG capability to generic volume groups in INFINIDAT driver.
  • Support for iSCSI in INFINIDAT InfiniBox driver.
  • Added support for QoS in the INFINIDAT InfiniBox driver. QoS is available on InfiniBox 4.0 onward.
  • Added support for get all distinct volumes’ metadata from volume-summary API.
  • Enable backup snapshot optimal path by implementing attach and detach snapshot in the NEC driver.
  • Added generic volume group capability to NetApp cDot drivers with support for write consistent group snapshots.
  • a [nova] section is added to configure the connection to the compute service, which is needed to the InstanceLocalityFilter, for example.
  • Availability zones may now be configured per backend in a multi-backend configuration. Individual backend sections can now set the configuration option backend_availability_zone. If set, this value will override the [DEFAULT] storage_availability_zone setting.
  • Added periodic task to clean expired reservation in cinder scheduler. Added a configuration option reservation_clean_interval to handle the interval.
  • Added consistent group capability to generic volume groups in ProphetStor driver.
  • Allow rbd driver to manage existing snapshot.
  • Introduced replication group support and added group action APIs enable_replication, disable_replication, failover_replication and list_replication_targets.
  • Added consistency group support to generic volume groups in ScaleIO Driver.
  • Added ability to list all manageable volumes within ScaleIO Driver.
  • Added new APIs on microversion 3.32 to support dynamically changing log levels in Cinder services without restart as well as retrieving current log levels, which is an easy way to ping via the message broker a service.
  • New config format to allow for using shared Volume Driver configuration defaults via the [backend_defaults] stanza. Config options defined there will be used as defaults for each backend enabled via enabled_backends.
  • The SMBFS driver now exposes share information to the scheduler via pools. The pool names are configurable, defaulting to the share names.
  • Add consistency group capability to generic volume groups in Storwize drivers.
  • Add global mirror with change volumes(gmcv) support and user can manage gmcv replication volume by SVC driver. An example to set a gmcv replication volume type, set property replication_type as “<in> gmcv”, property replication_enabled as “<is> True” and set property drivers:cycle_period_seconds as 500.
  • Add ability to extend in-use volume. User should be aware of the whole environment before using this feature because it’s dependent on several external factors below:

    • nova-compute version - needs to be the latest for Pike.
    • only the libvirt compute driver supports this currently.
    • only iscsi and fibre channel volume types are supported on the nova side currently.

    Administrator can disable this ability by updating the volume:extend_attached_volume policy rule.

  • Added metadata support for backup source. Now users can create/update metadata for a specified backup.
  • Supported project_id admin filters to limits API.
  • Add support for sorting backups by “name”.
  • Support to sort snapshots with “name”.
  • Add thin clone support in the Unity driver. Unity storage supports the thin clone of a LUN from OE version 4.2.0. It is more efficient than the dd solution. However, there is a limit of thin clone inside each LUN family. Every time the limit reaches, a new LUN family will be created by a dd-copy, and then the volume clone afterward will use the thin clone of the new LUN family.
  • The cinder-manage online_data_migrations command now prints a tabular summary of completed and remaining records. The goal here is to get all your numbers to zero. The previous execution return code behavior is retained for scripting.
  • Added NFS based driver for Veritas Access.
  • Add consistent group snapshot support to generic volume groups in VMAX driver version 3.0.
  • VMAX driver version 3.0, replacing SMI-S with Unisphere REST. This driver supports VMAX3 hybrid and All Flash arrays.
  • Adding compression functionality to VMAX driver version 3.0.
  • Adding Live Migration functionality to VMAX driver version 3.0.
  • Adding Qos functionality to VMAX driver version 3.0.
  • Adding Replication V2.1 functionality to VMAX driver version 3.0.
  • Add retype functionality to VMAX driver version 3.0.
  • VMware VMDK driver now supports volume type extra-spec option vmware:adapter_type to specify the adapter type of volumes in vCenter server.
  • Added config option vmware_adapter_type for the VMware VMDK driver to specify the default adapter type for volumes in vCenter server.
  • Adds QoS support for VNX Cinder driver.
  • Add consistent replication group support in VNX cinder driver.
  • Added volume backend driver for Veritas HyperScale storage.
  • The Windows iSCSI driver now returns multiple portals when available and multipath is requested.
  • Add consistent group capability to generic volume groups in XIV, Spectrum Accelerate and A9000/R storage systems.
  • Added independent and shared types for qos classes in XIV & A9000. Shared type enables to share bandwidth and IO rates between volumes of the same class. Independent type gives each volume the same bandwidth and IO rates without being affected by other volumes in the same qos class.
  • Add consistency group replication support in XIVA9000 Cinder driver.

Upgrade Notes

  • The Cinder database can now only be upgraded from changes since the Mitaka release. In order to upgrade from a version prior to that, you must now upgrade to at least Mitaka first, then to Pike or later.
  • Some of DISCO driver options were incorrectly read from [DEFAULT] section in the cinder.conf. Now those are correctly read from [<backend_id>] section. This includes following options:

    • disco_client
    • disco_client_port
    • rest_ip
    • choice_client
    • disco_src_api_port
    • retry_interval

    Also some options are renamed (note that 3 of them were both moved and renamed):

    • rest_ip to disco_rest_ip
    • choice_client to disco_choice_client
    • volume_name_prefix to disco_volume_name_prefix
    • snapshot_check_timeout to disco_snapshot_check_timeout
    • restore_check_timeout to disco_restore_check_timeout
    • clone_check_timeout to disco_clone_check_timeout
    • retry_interval to disco_retry_interval

    Old names and locations are still supported but support will be removed in the future.

  • Support for Dot Hill AssuredSAN arrays has been removed.
  • The Hitachi NAS Platform iSCSI driver was marked as not supported in the Ocata realease and has now been removed.
  • INFINIDAT volume driver now requires the ‘infinisdk’ python module to be installed.
  • The Blockbridge 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 it.
  • The Coho 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 Falconstor 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 it.
  • The Infortrend 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 Nimble 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 QNAP 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 it.
  • The Reduxio driver has been marked unsupported and is now deprecated. use_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to use it.
  • The Synology 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 Tegile 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 Violin drivers have been marked as unsupported and are now deprecated. enable_unsupported_drivers will need to be set to True in cinder.conf to continue to use them.
  • The X-IO 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 ZTE 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 default value for pure_replica_interval_default used by Pure Storage volume drivers has changed from 900 to 3600 seconds.
  • The service filter for service list API was deprecated 3 years ago in 2013 July (Havana). Removed this filter and please use “binary” instead.
  • Removing deprecated file cinder.middleware.sizelimit. In your api-paste.ini, replace cinder.middleware.sizelimit:RequestBodySizeLimiter.factory with oslo_middleware.sizelimit:RequestBodySizeLimiter.factory
  • The “backing-up” status is added to snapshot’s status matrix.
  • The coordination system used by Cinder has been simplified to leverage tooz builtin heartbeat feature. Therefore, the configuration options coordination.heartbeat, coordination.initial_reconnect_backoff and coordination.max_reconnect_backoff have been removed.
  • When managing volume types an OpenStack provider is now given more control to grant access to for different storage type operations. The provider can now customize access to type create, delete, update, list, and show using new entries in the cinder policy file.

    As an example one provider may have roles called viewer, admin, type_viewer, and say type_admin. Admin and type_admin can create, delete, update types. Everyone can list the storage types. Admin, type_viewer, and type_admin can view the extra_specs.

    “volume_extension:types_extra_specs:create”: “rule:admin or rule:type_admin”, “volume_extension:types_extra_specs:delete”: “rule:admin or rule:type_admin”, “volume_extension:types_extra_specs:index”: “”, “volume_extension:types_extra_specs:show”: “rule:admin or rule:type_admin or rule:type_viewer”, “volume_extension:types_extra_specs:update”: “rule:admin or rule:type_admin”

  • Cinder now defaults to using the Glance v2 API. The glance_api_version configuration option has been deprecated and will be removed in the 11.0.0 Queens release.
  • The VMware VMDK driver now enforces minimum vCenter version of 5.5.

Deprecation Notes

  • The Cinder v2 API has now been marked as deprecated. All new client code should use the v3 API. API v3 adds support for microversioned API calls. If no microversion is requested, the base 3.0 version for the v3 API is identical to v2.
  • Instead of using osapi_volume_base_url use public_endpoint. Both do the same thing.
  • The fss_pool option is deprecated. Use fss_pools instead.
  • The Hitachi Block Storage Driver (HBSD) and VSP driver have been marked as unsupported and are now deprecated. enable_unsupported_driver will need to be set to True in cinder.conf to continue to use them.
  • The Hitachi NAS NFS driver has been marked as unsupported and is now deprecated. enable_unsupported_driver will need to be set to True in cinder.conf to continue to use it.
  • The Blockbridge 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 it. If its support status does not change it will be removed in the next release.
  • The Coho 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, they will be removed in the Queens development cycle.
  • The Falconstor 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 it. If its support status does not change, they will be removed in the Queens development cycle.
  • The Infortrend 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 their support status does not change, they will be removed in the Queens development cycle.
  • The Nimble 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 the support status does not change, they will be removed in the Queens development cycle.
  • The QNAP 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 it. If its support status does not change it will be removed in the next release.
  • The Reduxio driver has been marked unsupported and is now deprecated. use_unsupported_driver will need to be set to True in the driver’s section in cinder.conf to use it. If its support status does not change, the driver will be removed in the Queens development cycle.
  • The Synology 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, the driver will be removed in the Queens development cycle.
  • The Tegile 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, they will be removed in the Queens development cycle.
  • The Violin drivers have been marked as unsupported and are now deprecated. enable_unsupported_drivers will need to be set to True in cinder.conf to continue to use them. If its support status does not change it will be removed in the next release.
  • The X-IO 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, they will be removed in the Queens development cycle.
  • The ZTE 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, they will be removed in the Queens development cycle.
  • The os_privileged_xxx and nova_xxx in the [default] section are deprecated in favor of the settings in the [nova] section.
  • Remove mirror policy parameter from huawei driver.
  • Support for ScaleIO 1.32 is now deprecated and will be removed in a future release.
  • The ScaleIO Driver has deprecated several options specified in cinder.conf: * sio_protection_domain_id * sio_protection_domain_name, * sio_storage_pool_id * sio_storage_pool_name. Users of the ScaleIO Driver should now utilize the sio_storage_pools options to provide a list of protection_domain:storage_pool pairs.
  • The ScaleIO Driver has deprecated the ability to specify the protection domain, as sio:pd_name, and storage pool, as sio:sp_name, extra specs in volume types. The supported way to specify a specific protection domain and storage pool in a volume type is to define a pool_name extra spec and set the value to the appropriate protection_domain_name:storage_pool_name.
  • The ‘smbfs_allocation_info_file_path’ SMBFS driver config option is now deprecated as we’re no longer using a JSON file to store volume allocation data. This file had a considerable chance of getting corrupted.

Bug Fixes

  • Add filter, sorter and pagination support in group snapshot listings.
  • Cinder stopped supporting single-backend configurations in Ocata. However, sample cinder.conf was still generated with driver-related options in [DEFAULT] section, where those options had no effect at all. Now all of driver options are listed in [backend_defaults] section, that indicates that those options are effective only in this section and [<backend_name>] sections listed in enabled_backends.
  • Fixed misleading error message when NetApp copyoffload tool is not in place during image cloning.
  • Modifying the extra-specs of an in use Volume Type was something that we’ve unintentionally allowed. The result is unexpected or unknown volume behaviors in cases where a type was modified while a volume was assigned that type. This has been particularly annoying for folks that have assigned the volume-type to a different/new backend device. In case there are customers using this “bug” we add a config option to retain the bad behavior “allow_inuse_volume_type_modification”, with a default setting of False (Don’t allow). Note this config option is being introduced as deprecated and will be removed in a future release. It’s being provided as a bridge to not break upgrades without notice.
  • Fixed issue where create and update api’s of volume-type and group_type were returning 500 error if boolean ‘is_public’ value passed in the form of string. Now user can pass following valid boolean values to these api’s: ‘0’, ‘f’, ‘false’, ‘off’, ‘n’, ‘no’, ‘1’, ‘t’, ‘true’, ‘on’, ‘y’, ‘yes’
  • Fixed consistency groups API which was always returning groups scoped to project ID from user context instead of given input project ID.
  • Now cinder will refresh the az cache immediately if previous create volume task failed due to az not found.
  • Prohibit the deletion of group if group snapshot exists.
  • Update backend state in scheduler when extending volume.
  • Add ‘display_name’ and ‘display_description’ validation for creating/updating snapshot and volume operations.
  • After transferring a volume without snapshots from one user project to another user project, if the receiving user uses cascade deleting, it will cause some exceptions in driver and volume will be error_deleting. Adding additional check to ensure there are no snapshots left in other project when cascade deleting a tranferred volume.
  • Creating a new volume from an image that was created from an encrypted Cinder volume now succeeds.
  • Fixed using of the user’s token in the nova client (bug #1686616)
  • Fix NFS backup driver, we now support multiple backups on the same container, they are no longer overwritten.
  • Fixes an issue where starting the Pure volume drivers with replication enabled and default values for pure_replica_interval_default would cause an error to be raised from the backend.
  • A bug in the Quobyte driver was fixed that prevented backing up volumes and snapshots
  • Fixes a bug that prevented the configuration of multiple redundant Quobyte registries in the quobyte_volume_url config option.
  • When backing up a volume from a snapshot, the volume status would be set to “backing-up”, preventing operations on the volume until the backup is complete. This status is now set on the snapshot instead, making the volume available for other operations.
  • Add all_tenants, project_id support in the attachment list and detail APIs.
  • The create volume api will now return 400 error instead of 404/500 if user passes non-uuid values to consistencygroup_id, source_volid and source_replica parameters in the request body.
  • Add ‘LUNType’ configuration verification for Huawei driver when connecting to Dorado array. Because Dorado array only supports ‘Thin’ lun type, so ‘LUNType’ only can be configured as ‘Thin’, any other type is invalid and if ‘LUNType’ not explicitly configured, by default use ‘Thin’ for Dorado array.
  • The Windows iSCSI driver now honors the configured iSCSI addresses, ensuring that only those addresses will be used for iSCSI traffic.
  • Oracle ZFSSA iSCSI - allows a volume to be connected to more than one connector at the same time, which is required for live-migration to work. ZFSSA software release 2013.1.3.x (or newer) is required for this to work.

Other Notes

  • Modify default lvm_type setting from thick to auto. This will result in Cinder preferring thin on init, if there are no LV’s in the VG it will create a thin-pool and use thin. If there are LV’s and no thin-pool it will continue using thick.
Creative Commons Attribution 3.0 License

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