Zed Series Release Notes¶
18.0.0.0b1-258¶
New Features¶
The service setup in keystone for cinder will now be executed through delegation to the
cinder_service_setup_hostwhich, by default, islocalhost(the deploy host). Deployers can opt to rather change this to the utility container by implementing the following override inuser_variables.yml.cinder_service_setup_host: "{{ groups['utility_all'][0] }}"
Added variables cinder_active_active_cluster and cinder_active_active_cluster_name that allow to explicitly enable or disable active/active feature, and set cluster name.
The list of enabled filters for the Cinder scheduler, scheduler_default_filters in cinder.conf, could previously be defined only via an entry in
cinder_cinder_conf_overrides. You now have the option to instead define a list variable,cinder_scheduler_default_filters, that defines the enabled filters. This is helpful if you either want to disable one of the filters enabled by default (at the time of writing, these are AvailabilityZoneFilter, CapacityFilter, and CapabilitiesFilter), or if conversely you want to add a filter that is normally not enabled, such as DifferentBackendFilter or InstanceLocalityFilter.For example, to enable the InstanceLocalityFilter in addition to the normally enabled scheduler filters, use the following variable.
cinder_scheduler_default_filters: - AvailabilityZoneFilter - CapacityFilter - CapabilitiesFilter - InstanceLocalityFilter
Cinder is deployed with Active-Active enabled by default if you are using Ceph as a backend storage.
The role now supports using the distribution packages for the OpenStack services instead of the pip ones. This feature is disabled by default and can be enabled by simply setting the
cinder_install_methodvariable todistro.–
Introduced new variable
cinder_volume_usage_audit_send_actions_enabledto allow the deployer to disable the send actions option in cinder-volume-usage-audit service unit. To have lowest possible footprint, the default value would be true to not change the behaviour of the cinder-volume-usage-audit in existing deployments.
Deployers can now define a cinder-backend volume type explicitly private or public with option
publicset to true or false.
Support separate oslo.messaging services for RPC and Notifications to enable operation of separate and different messaging backend servers in cinder.
Known Issues¶
Due to a change in how backend_host is defined when using Ceph, all the Cinder volumes will restart under the same backend name. This will mean that any volumes which previously were assigned to the host or container that hosted the volume will no longer be manageable. The workaround for this is to use the cinder-manage volume update_host command to move those volumes to the new backend host. This known issue will be resolved soon with an upgrade playbook.
The previous way of using a common backend_host across all deployments was not recommended by the Cinder team and it will cause duplicate messages that cause problems in the environment.
Upgrade Notes¶
In Stein, Cinder stopped supporting configuring backup drivers without the full class path. This means that you must now use the following values for
cinder_service_backup_driver.cinder.backup.drivers.swift.SwiftBackupDrivercinder.backup.drivers.ceph.CephBackupDriver
If you do not make this change, the Cinder backup service will refuse to start properly.
Variable
cinder_enable_v2_apiis set toFalseby default. This will result in Cinder v2 API removal from keystone catalog during upgrade. If you want to preserve v2 API you must overridecinder_enable_v2_apiin user_variables.yml
The variable cinder_iscsi_helper has been replaced by the new variable which is cinder_target_helper due to the fact that iscsi_helper has been deprecated in Cinder.
It is possible that you may need to use the cinder-manage command to migrate volumes to a specific host. In addition, you will have to remove the old
rbd:volumesservice which will be stale.
Variable
cinder_service_internaluri_insecurehas been replaced withkeystone_service_internaluri_insecurethat is used across all roles for the exact same purpose.
Cinder v2 API is now fully removed from Cinder service. With that os_cinder role ensures v2 endpoint is not present anymore in the catalog and remove endpoints if they’re present.
Deprecation Notes¶
The variable
cinder_requires_pip_packagesis no longer required and has therefore been removed.
The log path,
/var/log/cinderis no longer used to capture service logs. All logging for the cinder service will now be sent directly to the systemd journal.
The rabbitmq server parameters have been replaced by corresponding oslo.messaging RPC and Notify parameters in order to abstract the messaging service from the actual backend server deployment. - cinder_oslomsg_rpc_servers replaces cinder_rabbitmq_servers - cinder_oslomsg_rpc_port replaces cinder_rabbitmq_port - cinder_oslomsg_rpc_use_ssl replaces cinder_rabbitmq_use_ssl - cinder_oslomsg_rpc_userid replaces cinder_rabbitmq_userid - cinder_oslomsg_rpc_vhost replaces cinder_rabbitmq_vhost - cinder_oslomsg_notify_servers replaces cinder_rabbitmq_telemetry_servers - cinder_oslomsg_notify_port replaces cinder_rabbitmq_telemetry_port - cinder_oslomsg_notify_use_ssl replaces cinder_rabbitmq_telemetry_use_ssl - cinder_oslomsg_notify_userid replaces cinder_rabbitmq_telemetry_userid - cinder_oslomsg_notify_vhost replaces cinder_rabbitmq_telemetry_vhost
Bug Fixes¶
Fixes a file descriptor leak which may impact services which use the oslo.messaging RabbitMQ heartbeat mechanism.
18.0.0.0b1¶
Upgrade Notes¶
The Cinder v1 API and the variable to enable it,
cinder_enable_v1_api, have been removed. Existing keystone registered endpoints and service for cinder v1 will be removed during an upgrade.
The
cinder_enable_v3_apivariable has been removed as it had no effect.
17.0.0.0b2¶
Other Notes¶
Added support for specifying GID and UID for cinder system user by defining
cinder_system_user_uidandcinder_system_group_gid. This setting is optional.
16.0.0.0rc1¶
New Features¶
The
cinder-apiservice has moved to run as a uWSGI application. You can set the max number of WSGI processes, the number of processes, threads, and buffer size utilizing thecinder_wsgi_processes_max,cinder_wsgi_processes,cinder_wsgi_threads, andcinder_wsgi_buffer_size. Additionally, you can override any settings in the uWSGI ini configuration file using thecinder_api_uwsgi_ini_overridessetting. The uWSGI application will listen on the address specified bycinder_uwsgi_bind_addresswhich defaults to0.0.0.0.
16.0.0.0b3¶
New Features¶
The
os_cinderrole now provides for doing online data migrations once the db sync has been completed. The data migrations will not be executed until the boolean variablecinder_all_software_updatedis true. This variable will need to be set by the playbook consuming the role.
Deprecation Notes¶
Remove
cinder_rpc_backendoption due to deprecation of rpc_backend option in oslo.messaging.
16.0.0.0b2¶
New Features¶
Added
cinder_auth_strategyvariable to configure Cinder’s auth strategy since Cinder can work in noauth mode as well.
New variables have been added to allow a deployer to customize a cinder systemd unit file to their liking.
The task dropping the cinder systemd unit files now uses the
config_templateaction plugin allowing deployers access to customize the unit files as they see fit without having to load extra options into the defaults and pollute the generic systemd unit file with jinja2 variables and conditionals.
The ability to disable the certificate validation when checking and interacting with the internal cinder endpoint has been implemented. In order to do so, set the following in
/etc/openstack_deploy/user_variables.yml.cinder_service_internaluri_insecure: yes
Deprecation Notes¶
Remove
cinder_glance_api_versionoption due to deprecation of glance_api_version option in Cinder.
16.0.0.0b1¶
New Features¶
Capping the default value for the variable
cinder_osapi_volume_workersto 16 when the user doesn’t configure this variable. Default value is half the number of vCPUs available on the machine with a capping value of 16.
Add support for the cinder v3 api. This is enabled by default, but can be disabled by setting the
cinder_enable_v3_apivariable tofalse.
For the
os_cinderrole, the systemd unitTimeoutSecvalue which controls the time between sending a SIGTERM signal and a SIGKILL signal when stopping or restarting the service has been reduced from 300 seconds to 120 seconds. This provides 2 minutes for long-lived sessions to drain while preventing new ones from starting before a restart or a stop. TheRestartSecvalue which controls the time between the service stop and start when restarting has been reduced from 150 seconds to 2 seconds to make the restart happen faster. These values can be adjusted by using thecinder_*_init_config_overridesvariables which use theconfig_templatetask to change template defaults.
Upgrade Notes¶
The variables
cinder_sigkill_timeoutandcinder_restart_waithave been removed. The previous default values have now been set in the template directly and can be adjusted by using thecinder_*_init_overridesvariables which use theconfig_templatetask to change template defaults.
Deprecation Notes¶
The
cinder_keystone_auth_pluginvariable has been deprecated.cinder_keystone_auth_typeshould be used instead to configure authentication type.
15.0.0.0rc1¶
Upgrade Notes¶
The global override
cinder_nfs_clientis replaced in favor of fully supporting multi backends configuration via the cinder_backends stanza.
15.0.0.0b2¶
Upgrade Notes¶
The
cinderproject removed theshredvalue for thevolume_clearoption. The default for theos_cinderOpenStack-Ansible role has changed tozero.
15.0.0.0b1¶
New Features¶
Deployers can now define the override
cinder_rpc_executor_thread_pool_sizewhich defaults to 64
Deployers can now define the override
cinder_rpc_response_timeoutwhich defaults to 60
Additional volume-types can be created by defining a list named
extra_volume_typesin the desired backend of the variable(s)cinder_backends
Deployers can now define the varible
cinder_qos_specsto create qos specs and assign those specs to desired cinder volume types.
Upgrade Notes¶
The variables
cinder_requirements_git_repoandcinder_requirements_git_install_branchhave been removed in favour of using the URL/path to the upper-constraints file using the variablepip_install_upper_constraintsinstead.
14.0.0.0rc2¶
New Features¶
CentOS7/RHEL support has been added to the os_cinder role.
14.0.0.0b3¶
New Features¶
The os_cinder role now supports the ability to configure whether apt/yum tasks install the latest available package, or just ensure that the package is present. The default action is to ensure that the latest package is present. The action taken may be changed to only ensure that the package is present by setting
cinder_package_statetopresent.
Upgrade Notes¶
The variable
cinder_apt_packageshas been renamed tocinder_distro_packages.
The variable
cinder_volume_apt_packageshas been renamed tocinder_volume_distro_packages.
The variable
cinder_lvm_volume_apt_packageshas been renamed tocinder_lvm_volume_distro_packages.
The os_cinder role always checks whether the latest package is installed when executed. If a deployer wishes to change the check to only validate the presence of the package, the option
cinder_package_stateshould be set topresent.
14.0.0.0b2¶
New Features¶
The
os_cinderrole now supports Ubuntu 16.04.
Upgrade Notes¶
Installation of cinder and its dependent pip packages will now only occur within a Python virtual environment. The
cinder_venv_enabledandcinder_venv_binvariables have been removed.
14.0.0.0b1¶
Upgrade Notes¶
The database create and user creates have been removed from the
os_cinderrole. These tasks have been relocated to the playbooks.