Execution
Date
08 Dec 2025 13:57:07 +0000
Duration
00:24:46.17
Controller
aio1.openstack.local
User
root
Versions
Ansible
2.18.6
ara
1.7.4 / 1.7.4
Python
3.12.11
Summary
12
Hosts
1505
Tasks
1497
Results
32
Plays
487
Files
0
Records
File: /etc/ansible/ansible_collections/openstack/osa/playbooks/common/cinder.yml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 | --- # Copyright 2014, 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. - name: Install cinder services hosts: "{{ cinder_hosts }}" serial: "{{ cinder_serial }}" gather_facts: false user: root environment: "{{ deployment_environment_variables | default({}) }}" pre_tasks: - name: Setup installation variables ansible.builtin.include_role: name: openstack.osa.install_defaults defaults_from: "{{ install_method }}" public: true apply: tags: - always tags: - always # In order to ensure that any container, software or # config file changes which causes a container/service # restart do not cause an unexpected outage, we drain # the load balancer back end for this container. - name: Disabling haproxy backends ansible.builtin.include_role: name: openstack.osa.haproxy_endpoint_manage apply: tags: - always vars: haproxy_backend: cinder_api-back haproxy_state: disabled when: - "'cinder_api' in group_names" - "groups['cinder_api'] | length > 1" tags: - always - name: Determine storage bridge IP address ansible.builtin.include_role: name: openstack.osa.dynamic_address_fact vars: network_address: "storage_address" tags: - always - name: Configure container (cinder-volume) when lvm is in-use ansible.builtin.include_role: name: "openstack.osa.{{ container_tech | default('lxc') }}_container_setup" vars: extra_container_config: - "lxc.autodev=0" - "lxc.cgroup.devices.allow=a *:* rmw" - "lxc.mount.entry=udev dev devtmpfs defaults 0 0" extra_container_config_no_restart: - "lxc.start.order=39" when: - "not is_metal" - "'cinder_volume' in group_names" - "cinder_backend_lvm_inuse | bool" - name: Configure container (other services) ansible.builtin.include_role: name: "openstack.osa.{{ container_tech | default('lxc') }}_container_setup" when: - "not is_metal" - "not ( 'cinder_volume' in group_names and cinder_backend_lvm_inuse | bool )" - name: Including unbound-clients tasks ansible.builtin.include_role: name: openstack.osa.unbound_clients when: - hostvars['localhost']['resolvconf_enabled'] | bool - name: Add volume group block device to cinder # noqa: no-changed-when ansible.builtin.shell: | set -o pipefail {% if item.value.volume_group is defined %} if [ "$(pvdisplay | grep -B1 {{ item.value.volume_group }} | awk '/PV/ {print $3}')" ];then for device in `pvdisplay | grep -B1 {{ item.value.volume_group }} | awk '/PV/ {print $3}'` do lxc-device -n {{ container_name }} add $device done fi {% else %} echo "{{ item.key }} volume_group not defined" {% endif %} args: executable: /bin/bash with_dict: "{{ cinder_backends | default({}) }}" when: - container_tech | default('lxc') == 'lxc' - physical_host != container_name - cinder_backend_lvm_inuse | bool delegate_to: "{{ physical_host }}" - name: Trigger udevadm # noqa: no-changed-when ansible.builtin.command: udevadm trigger delegate_to: "{{ physical_host }}" when: cinder_backend_lvm_inuse | bool roles: - role: "os_cinder" cinder_storage_address: "{{ storage_address }}" - role: "openstack.osa.system_crontab_coordination" tags: - crontab post_tasks: # Now that container changes are done, we can set # the load balancer back end for this container # to available again. - name: Enabling haproxy backends ansible.builtin.include_role: name: openstack.osa.haproxy_endpoint_manage apply: tags: - always vars: haproxy_backend: cinder_api-back haproxy_state: enabled when: - "'cinder_api' in group_names" - "groups['cinder_api'] | length > 1" tags: - always |