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_host
which, 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_method
variable todistro
.–
Introduced new variable
cinder_volume_usage_audit_send_actions_enabled
to 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
public
set 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.SwiftBackupDriver
cinder.backup.drivers.ceph.CephBackupDriver
If you do not make this change, the Cinder backup service will refuse to start properly.
Variable
cinder_enable_v2_api
is set toFalse
by 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_api
in 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:volumes
service which will be stale.
Variable
cinder_service_internaluri_insecure
has been replaced withkeystone_service_internaluri_insecure
that 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_packages
is no longer required and has therefore been removed.
The log path,
/var/log/cinder
is 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_api
variable 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_uid
andcinder_system_group_gid
. This setting is optional.
16.0.0.0rc1¶
New Features¶
The
cinder-api
service 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_overrides
setting. The uWSGI application will listen on the address specified bycinder_uwsgi_bind_address
which defaults to0.0.0.0
.
16.0.0.0b3¶
New Features¶
The
os_cinder
role 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_updated
is true. This variable will need to be set by the playbook consuming the role.
Deprecation Notes¶
Remove
cinder_rpc_backend
option due to deprecation of rpc_backend option in oslo.messaging.
16.0.0.0b2¶
New Features¶
Added
cinder_auth_strategy
variable 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_template
action 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_version
option 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_workers
to 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_api
variable tofalse
.
For the
os_cinder
role, the systemd unitTimeoutSec
value 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. TheRestartSec
value 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_overrides
variables which use theconfig_template
task to change template defaults.
Upgrade Notes¶
The variables
cinder_sigkill_timeout
andcinder_restart_wait
have been removed. The previous default values have now been set in the template directly and can be adjusted by using thecinder_*_init_overrides
variables which use theconfig_template
task to change template defaults.
Deprecation Notes¶
The
cinder_keystone_auth_plugin
variable has been deprecated.cinder_keystone_auth_type
should be used instead to configure authentication type.
15.0.0.0rc1¶
Upgrade Notes¶
The global override
cinder_nfs_client
is replaced in favor of fully supporting multi backends configuration via the cinder_backends stanza.
15.0.0.0b2¶
Upgrade Notes¶
The
cinder
project removed theshred
value for thevolume_clear
option. The default for theos_cinder
OpenStack-Ansible role has changed tozero
.
15.0.0.0b1¶
New Features¶
Deployers can now define the override
cinder_rpc_executor_thread_pool_size
which defaults to 64
Deployers can now define the override
cinder_rpc_response_timeout
which defaults to 60
Additional volume-types can be created by defining a list named
extra_volume_types
in the desired backend of the variable(s)cinder_backends
Deployers can now define the varible
cinder_qos_specs
to create qos specs and assign those specs to desired cinder volume types.
Upgrade Notes¶
The variables
cinder_requirements_git_repo
andcinder_requirements_git_install_branch
have been removed in favour of using the URL/path to the upper-constraints file using the variablepip_install_upper_constraints
instead.
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_state
topresent
.
Upgrade Notes¶
The variable
cinder_apt_packages
has been renamed tocinder_distro_packages
.
The variable
cinder_volume_apt_packages
has been renamed tocinder_volume_distro_packages
.
The variable
cinder_lvm_volume_apt_packages
has 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_state
should be set topresent
.
14.0.0.0b2¶
New Features¶
The
os_cinder
role 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_enabled
andcinder_venv_bin
variables have been removed.
14.0.0.0b1¶
Upgrade Notes¶
The database create and user creates have been removed from the
os_cinder
role. These tasks have been relocated to the playbooks.