ef12bf04ed
Based on [1], this patch implements changes to the playbook which executes the cinder deployment in a play per host group, serialised to ensure that: 1. The services are changed in the right order. 2. The services remain available at all times during an upgrade. 3. Online data migrations are actioned once all versions of software are at the same levels. 4. If services are sharing a host/container then the role execution will not execute twice on the same host. [1] https://docs.openstack.org/developer/cinder/upgrade.html#minimal-downtime-upgrade-procedure Depends-On: Id95cae40f736ea2c84200955fccdb44ea3bc1dd8 Depends-On: If5729671cb69f928df660ec2d9ba83fe3f567946 Depends-On: I9aacda78f92355374af3f4ab24d2d9a9b47491ed Change-Id: I0bdb51ce0d8b3b9a145d29ef6808e1fe595924e2
51 lines
2.2 KiB
YAML
51 lines
2.2 KiB
YAML
---
|
|
# Copyright 2016, Rackspace US, Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
# The MySQL details for the cinder service
|
|
cinder_galera_user: cinder
|
|
cinder_galera_database: cinder
|
|
cinder_galera_address: "{{ galera_address }}"
|
|
|
|
# The address used to listen for communications
|
|
cinder_management_address: "{{ ansible_host }}"
|
|
|
|
# The address used for communications with the glance service
|
|
cinder_glance_host: "{{ internal_lb_vip_address }}"
|
|
cinder_glance_service_port: "{{ glance_service_port }}"
|
|
|
|
# If there are Swift hosts in the environment, then use it as the default Glance store
|
|
# This is specifically duplicated from glance_all for the cinder_glance_api_version
|
|
# setting below.
|
|
glance_default_store: "{{ ((groups['swift_all'] is defined) and (groups['swift_all'] | length > 0)) | ternary('swift', 'file') }}"
|
|
|
|
# cinder_backend_lvm_inuse: True if current host has an lvm backend
|
|
cinder_backend_lvm_inuse: '{{ (cinder_backends|default("")|to_json).find("cinder.volume.drivers.lvm.LVMVolumeDriver") != -1 }}'
|
|
cinder_service_in_ldap: "{{ service_ldap_backend_enabled }}"
|
|
cinder_glance_api_servers: "{{ glance_api_servers }}"
|
|
|
|
# Ensure that the package state matches the global setting
|
|
cinder_package_state: "{{ package_state }}"
|
|
|
|
# The system user for all cinder services
|
|
cinder_system_user_name: cinder
|
|
|
|
# venv fetch configuration
|
|
cinder_venv_tag: "{{ venv_tag }}"
|
|
cinder_bin: "/openstack/venvs/cinder-{{ cinder_venv_tag }}/bin"
|
|
cinder_venv_download_url: "{{ venv_base_download_url }}/cinder-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
|
|
# If there are any Barbican hosts in the environment, then enable its usage
|
|
cinder_barbican_enabled: "{{ (groups['barbican_all'] is defined) and (groups['barbican_all'] | length > 0) }}"
|