{"id":442,"sha1":"e3247359955011e688e98e35d507d47f7f724749","playbook":{"id":4,"items":{"plays":104,"tasks":1377,"results":1365,"hosts":2,"files":504,"records":0},"arguments":{"version":null,"verbosity":0,"private_key_file":null,"remote_user":null,"connection":"openstack.osa.ssh","timeout":null,"ssh_common_args":null,"sftp_extra_args":null,"scp_extra_args":null,"ssh_extra_args":null,"ask_pass":false,"connection_password_file":null,"force_handlers":true,"flush_cache":false,"become":false,"become_method":"sudo","become_user":null,"become_ask_pass":false,"become_password_file":null,"tags":["all"],"skip_tags":[],"check":false,"diff":false,"inventory":["/home/zuul/src/opendev.org/openstack/openstack-ansible/inventory/dynamic_inventory.py","/home/zuul/src/opendev.org/openstack/openstack-ansible/inventory/inventory.ini","/etc/openstack_deploy/inventory.ini"],"listhosts":false,"subset":null,"extra_vars":"Not saved by ARA as configured by 'ignored_arguments'","vault_ids":[],"ask_vault_pass":false,"vault_password_files":[],"forks":8,"module_path":null,"syntax":false,"listtasks":false,"listtags":false,"step":false,"start_at_task":null,"args":["setup-openstack.yml"]},"labels":[{"id":1,"name":"check:False"},{"id":2,"name":"tags:all"}],"started":"2025-12-08T13:39:52.478534Z","ended":"2025-12-08T14:14:54.510371Z","duration":"00:35:02.031837","name":null,"ansible_version":"2.18.6","client_version":"1.7.4","python_version":"3.12.3","server_version":"1.7.4","status":"failed","path":"/home/zuul/src/opendev.org/openstack/openstack-ansible/playbooks/setup-openstack.yml","controller":"aio1.openstack.local","user":"root"},"content":"---\n# Copyright 2014, Rackspace US, Inc.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n# Set the package install state for distribution packages\n# Options are 'present' and 'latest'\ncinder_package_state: \"{{ package_state | default('latest') }}\"\n\n# Set the host which will execute the shade modules\n# for the service setup. The host must already have\n# clouds.yaml properly configured.\ncinder_service_setup_host: \"{{ openstack_service_setup_host | default('localhost') }}\"\ncinder_service_setup_host_python_interpreter: >-\n  {{\n    openstack_service_setup_host_python_interpreter | default(\n      (cinder_service_setup_host == 'localhost') | ternary(ansible_playbook_python, ansible_facts['python']['executable']))\n  }}\n\n# Set installation method.\ncinder_install_method: \"{{ service_install_method | default('source') }}\"\ncinder_venv_python_executable: \"{{ openstack_venv_python_executable | default('python3') }}\"\n\ncinder_git_repo: https://opendev.org/openstack/cinder\ncinder_git_install_branch: master\ncinder_upper_constraints_url: >-\n  {{ requirements_git_url | default('https://releases.openstack.org/constraints/upper/' ~ requirements_git_install_branch | default('master')) }}\ncinder_git_constraints:\n  - \"--constraint {{ cinder_upper_constraints_url }}\"\n\ncinder_pip_install_args: \"{{ pip_install_options | default('') }}\"\n\n# Name of the virtual env to deploy into\ncinder_venv_tag: \"{{ venv_tag | default('untagged') }}\"\ncinder_bin: \"{{ _cinder_bin }}\"\n\n# Enable/Disable Barbican\ncinder_barbican_enabled: \"{{ (groups['barbican_all'] is defined) and (groups['barbican_all'] | length > 0) }}\"\n\n# Enable/Disable Ceilometer\ncinder_ceilometer_enabled: \"{{ (groups['ceilometer_all'] is defined) and (groups['ceilometer_all'] | length > 0) }}\"\n\n# Time period for which to generate volume usages. The options are hour, day,\n# month, or year. (string value)\ncinder_volume_usage_audit: hour\ncinder_volume_usage_audit_send_actions_enabled: true\n\ncinder_storage_availability_zone: nova\ncinder_default_availability_zone: \"{{ cinder_storage_availability_zone }}\"\n\ncinder_storage_address: 127.0.0.1\ncinder_management_address: \"{{ management_address | default('127.0.0.1') }}\"\ncinder_uwsgi_bind_address: \"{{ openstack_service_bind_address | default('0.0.0.0') }}\"\n\ncinder_nova_catalog_info: compute:nova:internalURL\ncinder_nova_catalog_admin_info: compute:nova:adminURL\n\ncinder_fatal_deprecations: false\n\n## Database info\ncinder_db_setup_host: \"{{ openstack_db_setup_host | default('localhost') }}\"\ncinder_db_setup_python_interpreter: >-\n  {{\n    openstack_db_setup_python_interpreter | default(\n      (cinder_db_setup_host == 'localhost') | ternary(ansible_playbook_python, ansible_facts['python']['executable']))\n  }}\ncinder_galera_address: \"{{ galera_address | default('127.0.0.1') }}\"\ncinder_galera_user: cinder\ncinder_galera_database: cinder\ncinder_galera_use_ssl: \"{{ galera_use_ssl | default(False) }}\"\ncinder_galera_ssl_ca_cert: \"{{ galera_ssl_ca_cert | default('') }}\"\ncinder_galera_port: \"{{ galera_port | default('3306') }}\"\ncinder_db_max_overflow: \"{{ openstack_db_max_overflow | default('50') }}\"\ncinder_db_max_pool_size: \"{{ openstack_db_max_pool_size | default('5') }}\"\ncinder_db_pool_timeout: \"{{ openstack_db_pool_timeout | default('30') }}\"\ncinder_db_connection_recycle_time: \"{{ openstack_db_connection_recycle_time | default('600') }}\"\n\n## Oslo Messaging\n\n# RabbitMQ\ncinder_oslomsg_heartbeat_in_pthread: \"{{ oslomsg_heartbeat_in_pthread | default(False) }}\"\n\n# RPC\ncinder_oslomsg_rpc_host_group: \"{{ oslomsg_rpc_host_group | default('rabbitmq_all') }}\"\ncinder_oslomsg_rpc_setup_host: \"{{ (cinder_oslomsg_rpc_host_group in groups) | ternary(groups[cinder_oslomsg_rpc_host_group][0], 'localhost') }}\"\ncinder_oslomsg_rpc_transport: \"{{ oslomsg_rpc_transport | default('rabbit') }}\"\ncinder_oslomsg_rpc_servers: \"{{ oslomsg_rpc_servers | default('127.0.0.1') }}\"\ncinder_oslomsg_rpc_port: \"{{ oslomsg_rpc_port | default('5672') }}\"\ncinder_oslomsg_rpc_use_ssl: \"{{ oslomsg_rpc_use_ssl | default(False) }}\"\ncinder_oslomsg_rpc_userid: cinder\ncinder_oslomsg_rpc_policies: []\n# vhost name depends on value of oslomsg_rabbit_quorum_queues. In case quorum queues\n# are not used - vhost name will be prefixed with leading `/`.\ncinder_oslomsg_rpc_vhost:\n  - name: /cinder\n    state: \"{{ cinder_oslomsg_rabbit_quorum_queues | ternary('absent', 'present') }}\"\n  - name: cinder\n    state: \"{{ cinder_oslomsg_rabbit_quorum_queues | ternary('present', 'absent') }}\"\ncinder_oslomsg_rpc_ssl_version: \"{{ oslomsg_rpc_ssl_version | default('TLSv1_2') }}\"\ncinder_oslomsg_rpc_ssl_ca_file: \"{{ oslomsg_rpc_ssl_ca_file | default('') }}\"\n\n# Notify\ncinder_oslomsg_notify_configure: \"{{ oslomsg_notify_configure | default(cinder_ceilometer_enabled) }}\"\ncinder_oslomsg_notify_host_group: \"{{ oslomsg_notify_host_group | default('rabbitmq_all') }}\"\ncinder_oslomsg_notify_setup_host: \"{{ (cinder_oslomsg_notify_host_group in groups) | ternary(groups[cinder_oslomsg_notify_host_group][0], 'localhost') }}\"\ncinder_oslomsg_notify_transport: \"{{ oslomsg_notify_transport | default('rabbit') }}\"\ncinder_oslomsg_notify_servers: \"{{ oslomsg_notify_servers | default('127.0.0.1') }}\"\ncinder_oslomsg_notify_port: \"{{ oslomsg_notify_port | default('5672') }}\"\ncinder_oslomsg_notify_use_ssl: \"{{ oslomsg_notify_use_ssl | default(False) }}\"\ncinder_oslomsg_notify_userid: \"{{ cinder_oslomsg_rpc_userid }}\"\ncinder_oslomsg_notify_password: \"{{ cinder_oslomsg_rpc_password }}\"\ncinder_oslomsg_notify_vhost: \"{{ cinder_oslomsg_rpc_vhost }}\"\ncinder_oslomsg_notify_ssl_version: \"{{ oslomsg_notify_ssl_version | default('TLSv1_2') }}\"\ncinder_oslomsg_notify_ssl_ca_file: \"{{ oslomsg_notify_ssl_ca_file | default('') }}\"\ncinder_oslomsg_notify_policies: []\n\n## RabbitMQ integration\ncinder_oslomsg_rabbit_quorum_queues: \"{{ oslomsg_rabbit_quorum_queues | default(True) }}\"\ncinder_oslomsg_rabbit_stream_fanout: \"{{ oslomsg_rabbit_stream_fanout | default(cinder_oslomsg_rabbit_quorum_queues) }}\"\ncinder_oslomsg_rabbit_transient_quorum_queues: \"{{ oslomsg_rabbit_transient_quorum_queues | default(cinder_oslomsg_rabbit_stream_fanout) }}\"\ncinder_oslomsg_rabbit_qos_prefetch_count: \"{{ oslomsg_rabbit_qos_prefetch_count | default(cinder_oslomsg_rabbit_stream_fanout | ternary(10, 0)) }}\"\ncinder_oslomsg_rabbit_queue_manager: \"{{ oslomsg_rabbit_queue_manager | default(cinder_oslomsg_rabbit_quorum_queues) }}\"\ncinder_oslomsg_rabbit_quorum_delivery_limit: \"{{ oslomsg_rabbit_quorum_delivery_limit | default(0) }}\"\ncinder_oslomsg_rabbit_quorum_max_memory_bytes: \"{{ oslomsg_rabbit_quorum_max_memory_bytes | default(0) }}\"\n\n## Coordintation\ncinder_coordination_driver: \"{{ coordination_driver | default('zookeeper') }}\"\ncinder_coordination_group: \"{{ coordination_host_group | default('zookeeper_all') }}\"\ncinder_coordination_enable: \"{{ cinder_active_active_cluster and (cinder_coordination_group in groups and groups[cinder_coordination_group] | length > 0) }}\"\ncinder_coordination_namespace: cinder\ncinder_coordination_client_ssl: \"{{ coordination_client_ssl | default(False) }}\"\ncinder_coordination_verify_cert: \"{{ coordination_verify_cert | default(True) }}\"\ncinder_coordination_port: \"{{ coordination_port | default(cinder_coordination_client_ssl | ternary('2281', '2181')) }}\"\ncinder_coordination_url: \"{{ _cinder_coordination_url | default() }}\"\n\n## Cinder User / Group\ncinder_system_user_name: cinder\ncinder_system_group_name: cinder\ncinder_system_comment: cinder system user\ncinder_system_shell: /bin/false\ncinder_system_home_folder: \"/var/lib/{{ cinder_system_user_name }}\"\ncinder_system_slice_name: cinder\n\n## Manually specified cinder UID/GID\n# Deployers can specify a UID for the cinder user as well as the GID for the\n# cinder group if needed. This is commonly used in environments where shared\n# storage is used, such as NFS or GlusterFS, and cinder UID/GID values must be\n# in sync between multiple servers.\n#\n# WARNING: Changing these values on an existing deployment can lead to\n#          failures, errors, and instability.\n#\n# cinder_system_user_uid = <UID>\n# cinder_system_group_gid = <GID>\n\ncinder_lock_dir: \"{{ openstack_lock_dir | default('/run/lock') }}\"\n\n## Cinder Auth\ncinder_service_admin_tenant_name: \"service\"\ncinder_service_admin_username: \"cinder\"\n\n## Cinder api service type and data\ncinder_service_project_domain_id: default\ncinder_service_user_domain_id: default\ncinder_service_user_name: cinder\ncinder_service_project_name: service\ncinder_service_role_names:\n  - admin\n  - service\ncinder_service_token_roles:\n  - service\ncinder_service_token_roles_required: \"{{ openstack_service_token_roles_required | default(True) }}\"\ncinder_service_region: \"{{ service_region | default('RegionOne') }}\"\ncinder_service_port: 8776\ncinder_service_proto: http\n\ncinder_service_name: cinder\ncinder_service_type: block-storage\ncinder_service_description: \"Cinder Volume Service\"\ncinder_service_publicuri_proto: \"{{ openstack_service_publicuri_proto | default(cinder_service_proto) }}\"\ncinder_service_adminuri_proto: \"{{ openstack_service_adminuri_proto | default(cinder_service_proto) }}\"\ncinder_service_internaluri_proto: \"{{ openstack_service_internaluri_proto | default(cinder_service_proto) }}\"\ncinder_service_publicuri: \"{{ cinder_service_publicuri_proto }}://{{ external_lb_vip_address }}:{{ cinder_service_port }}\"\ncinder_service_publicurl: \"{{ cinder_service_publicuri }}/v3\"\ncinder_service_adminuri: \"{{ cinder_service_adminuri_proto }}://{{ internal_lb_vip_address }}:{{ cinder_service_port }}\"\ncinder_service_adminurl: \"{{ cinder_service_adminuri }}/v3\"\ncinder_service_internaluri: \"{{ cinder_service_internaluri_proto }}://{{ internal_lb_vip_address }}:{{ cinder_service_port }}\"\ncinder_service_internalurl: \"{{ cinder_service_internaluri }}/v3\"\n\ncinder_service_v3_enabled: false\ncinder_service_v3_name: cinderv3\ncinder_service_v3_type: volumev3\ncinder_service_v3_description: \"Cinder Volume Service V3\"\ncinder_service_v3_publicuri_proto: \"{{ openstack_service_publicuri_proto | default(cinder_service_publicuri_proto) }}\"\ncinder_service_v3_adminuri_proto: \"{{ openstack_service_adminuri_proto | default(cinder_service_adminuri_proto) }}\"\ncinder_service_v3_internaluri_proto: \"{{ openstack_service_internaluri_proto | default(cinder_service_internaluri_proto) }}\"\ncinder_service_v3_publicuri: \"{{ cinder_service_v3_publicuri_proto }}://{{ external_lb_vip_address }}:{{ cinder_service_port }}\"\ncinder_service_v3_publicurl: \"{{ cinder_service_v3_publicuri }}/v3/%(tenant_id)s\"\ncinder_service_v3_adminuri: \"{{ cinder_service_v3_adminuri_proto }}://{{ internal_lb_vip_address }}:{{ cinder_service_port }}\"\ncinder_service_v3_adminurl: \"{{ cinder_service_v3_adminuri }}/v3/%(tenant_id)s\"\ncinder_service_v3_internaluri: \"{{ cinder_service_v3_internaluri_proto }}://{{ internal_lb_vip_address }}:{{ cinder_service_port }}\"\ncinder_service_v3_internalurl: \"{{ cinder_service_v3_internaluri }}/v3/%(tenant_id)s\"\n\ncinder_auth_strategy: keystone\n\n## Keystone authentication middleware\ncinder_keystone_auth_plugin: \"{{ cinder_keystone_auth_type }}\"\ncinder_keystone_auth_type: password\n\n## In order to enable the cinder backup you MUST set ``cinder_service_backup_program_enabled`` to \"true\"\ncinder_service_backup_program_enabled: false\n# cinder_service_backup_driver: Options include 'cinder.backup.drivers.swift.SwiftBackupDriver' or\n#                               'cinder.backup.drivers.ceph.CephBackupDriver'\ncinder_service_backup_driver: cinder.backup.drivers.swift.SwiftBackupDriver\n# cinder_service_backup_swift_auth: Options include 'per_user' or 'single_user', we default to\n#                                   'per_user' so that backups are saved to a user's swift account.\ncinder_service_backup_swift_auth: per_user\n# cinder_service_backup_swift_url: This is your swift storage url when using 'per_user', or keystone\n#                                  endpoint when using 'single_user'.  When using 'per_user', you\n#                                  can leave this as empty or as None to allow cinder-backup to\n#                                  obtain storage url from environment.\ncinder_service_backup_swift_url:\ncinder_service_backup_swift_auth_version: 2\ncinder_service_backup_swift_user:\ncinder_service_backup_swift_tenant:\ncinder_service_backup_swift_key:\ncinder_service_backup_swift_container: volumebackups\ncinder_service_backup_swift_object_size: 52428800\ncinder_service_backup_swift_retry_attempts: 3\ncinder_service_backup_swift_retry_backoff: 2\ncinder_service_backup_ceph_user: cinder-backup\ncinder_service_backup_ceph_pool: backups\ncinder_service_backup_compression_algorithm: zlib\ncinder_service_backup_metadata_version: 2\n\ncinder_swift_catalog_info: \"object-store:swift:internalURL\"\n\n## Cap the maximun number of threads / workers when a user value is unspecified.\ncinder_osapi_volume_workers_max: 16\ncinder_osapi_volume_workers: >-\n  {{ [[(ansible_facts['processor_vcpus'] // ansible_facts['processor_threads_per_core']) | default(1), 1] | max * 2, cinder_osapi_volume_workers_max] | min }}\n\n## Cinder iscsi\ncinder_target_helper_mapping:\n  RedHat: lioadm\n  Debian: tgtadm\ncinder_target_helper: \"{{ cinder_target_helper_mapping[ansible_facts['os_family']] }}\"\ncinder_iscsi_iotype: fileio\ncinder_iscsi_num_targets: 100\ncinder_iscsi_port: 3260\n\n## Cinder RPC\ncinder_rpc_executor_thread_pool_size: 64\ncinder_rpc_response_timeout: 60\n\n# (StrOpt) Method used to wipe old volumes (valid options are: none, zero)\ncinder_volume_clear: zero\n# (StrOpt) The flag to pass to ionice to alter the i/o priority of the process\n# used to zero a volume after deletion, for example \"-c3\" for idle only\n# priority.\ncinder_volume_clear_ionice: -c3\n\n# (IntOpt) Size in MiB to wipe at start of old volumes. 0 => all\ncinder_volume_clear_size: 0\n\ncinder_volume_name_template: volume-%s\n\n# osprofiler\ncinder_profiler_enabled: false\n# cinder_profiler_hmac_key is set in user_secrets.yml\ncinder_profiler_trace_sqlalchemy: false\n\ncinder_client_socket_timeout: 900\n\n## Cinder quota\ncinder_quota_volumes: 10\ncinder_quota_snapshots: 10\ncinder_quota_consistencygroups: 10\ncinder_quota_gigabytes: 1000\ncinder_quota_backups: 10\ncinder_quota_backup_gigabytes: 1000\n\n## General configuration\n# cinder_backends:\n#   lvm:\n#     volume_group: cinder-volumes\n#     volume_driver: cinder.volume.drivers.lvm.LVMVolumeDriver\n#     volume_backend_name: LVM_iSCSI\n#     extra_volume_types:\n#       - lvm_high_iops\n#       - lvm_low_iops\n\ncinder_manage_volume_types: true\n\n# Override generated device filter in lvm.conf\n# Example:\n# cinder_lvm_devices_filter_override:\n#  - '\"a/sd.*/\"'\n#  - '\"a/hd.*/\"'\ncinder_lvm_devices_filter_override: []\n\n# cinder_backend_lvm_inuse: True if current host has an lvm backend\ncinder_backend_lvm_inuse: '{{ (cinder_backends | default(\"\") | to_json).find(\"lvm\") != -1 }}'\n# cinder_backend_rbd_inuse: True if the current host has an rbd backend\ncinder_backend_rbd_inuse: '{{ (cinder_backends | default(\"\") | to_json).find(\"cinder.volume.drivers.rbd.RBDDriver\") != -1 }}'\n\n# Set to false if you want to explicitly disable active/active cluster\ncinder_active_active_cluster: \"{{ cinder_backend_rbd_inuse }}\"\ncinder_active_active_cluster_name: ceph\n\n## Policy vars\n# Provide a list of access controls to merge with the default\n# access controls in the service code.\n# cinder_policy_overrides:\n#   \"volume:create\": \"\"\n#   \"volume:delete\": \"\"\n\n# Comma separated list of Glance API servers\ncinder_glance_api_servers: >-\n  {{\n    (\n      glance_service_internalurl | default('http://localhost')\n    ) | urlsplit('scheme') ~ '://' ~ (\n      glance_service_internalurl | default('http://localhost')\n    ) | urlsplit('netloc')\n  }}\n\ncinder_service_in_ldap: \"{{ service_ldap_backend_enabled | default(False) }}\"\n\n# Common pip packages\ncinder_pip_packages:\n  - \"git+{{ cinder_git_repo }}@{{ cinder_git_install_branch }}#egg=cinder\"\n  - cryptography\n  - ecdsa\n  - httplib2\n  - keystonemiddleware\n  - osprofiler\n  - PyMySQL\n  - pymemcache\n  - python-memcached\n  - systemd-python\n  - \"tooz[{{ cinder_coordination_driver }}]\"\n\n# Specific pip packages provided by the user\ncinder_user_pip_packages: []\n\ncinder_api_init_overrides: {}\ncinder_scheduler_init_overrides: {}\ncinder_volume_init_overrides: {}\ncinder_backup_init_overrides: {}\n\n## Service Name-Group Mapping\ncinder_services:\n  cinder-scheduler:\n    group: cinder_scheduler\n    service_name: cinder-scheduler\n    init_config_overrides: \"{{ cinder_scheduler_init_overrides }}\"\n    start_order: 1\n    execstarts: \"{{ cinder_bin }}/cinder-scheduler\"\n    execreloads: \"/bin/kill -HUP $MAINPID\"\n  cinder-volume:\n    group: cinder_volume\n    service_name: cinder-volume\n    init_config_overrides: \"{{ cinder_volume_init_overrides }}\"\n    start_order: 2\n    execstarts: \"{{ cinder_bin }}/cinder-volume\"\n    execreloads: \"/bin/kill -HUP $MAINPID\"\n    environment:\n      MALLOC_ARENA_MAX: 1\n      MALLOC_MMAP_THRESHOLD_: 131072\n      MALLOC_TRIM_THRESHOLD_: 262144\n  cinder-backup:\n    group: cinder_backup\n    service_name: cinder-backup\n    condition: \"{{ cinder_service_backup_program_enabled | bool }}\"\n    init_config_overrides: \"{{ cinder_backup_init_overrides }}\"\n    start_order: 3\n    execstarts: \"{{ cinder_bin }}/cinder-backup\"\n    execreloads: \"/bin/kill -HUP $MAINPID\"\n    environment:\n      MALLOC_ARENA_MAX: 1\n      MALLOC_MMAP_THRESHOLD_: 131072\n      MALLOC_TRIM_THRESHOLD_: 262144\n  cinder-api:\n    group: cinder_api\n    service_name: cinder-api\n    init_config_overrides: \"{{ cinder_api_init_overrides }}\"\n    start_order: 4\n    wsgi_app: true\n    wsgi: \"cinder.wsgi.api:application\"\n    uwsgi_overrides: \"{{ cinder_api_uwsgi_ini_overrides }}\"\n    uwsgi_port: \"{{ cinder_service_port }}\"\n    uwsgi_tls: \"{{ cinder_backend_ssl | ternary(cinder_uwsgi_tls, {}) }}\"\n    uwsgi_bind_address: \"{{ cinder_uwsgi_bind_address }}\"\n\n# Cinder uWSGI settings\ncinder_wsgi_processes_max: 16\ncinder_wsgi_processes: \"{{ [[ansible_facts['processor_vcpus'] | default(1), 1] | max * 2, cinder_wsgi_processes_max] | min }}\"\ncinder_wsgi_threads: 1\ncinder_uwsgi_tls:\n  crt: \"{{ cinder_ssl_cert }}\"\n  key: \"{{ cinder_ssl_key }}\"\n\n# Define the following dictionary variable to enable qos settings on volumes.\n# cinder_qos_specs\n# - name: high-iops\n#   options:\n#     consumer: front-end\n#     read_iops_sec: 2000\n#     write_iops_sec: 2000\n#   cinder_volume_types:\n#     - volumes-1\n#     - volumes-2\n# - name: low-iops\n#   options:\n#     consumer: front-end\n#     write_iops_sec: 100\n\n## Tunable overrides\ncinder_policy_overrides: {}\ncinder_rootwrap_conf_overrides: {}\ncinder_api_paste_ini_overrides: {}\ncinder_cinder_conf_overrides: {}\ncinder_api_uwsgi_ini_overrides: {}\ncinder_resource_filters_overrides: {}\n\n## Set default cinder path in service units. The default override sets the\n## execution path for the cinder service.\ncinder_environment_overrides:\n  Service:\n    Environment: \"PATH={{ cinder_bin }}:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\n\ncinder_memcached_servers: \"{{ memcached_servers }}\"\n\n###\n### Backend TLS\n###\n\n# Define if communication between haproxy and service backends should be\n# encrypted with TLS.\ncinder_backend_ssl: \"{{ openstack_service_backend_ssl | default(False) }}\"\n\n# Storage location for SSL certificate authority\ncinder_pki_dir: \"{{ openstack_pki_dir | default('/etc/openstack_deploy/pki') }}\"\n\n# Delegated host for operating the certificate authority\ncinder_pki_setup_host: \"{{ openstack_pki_setup_host | default('localhost') }}\"\n\n# cinder server certificate\ncinder_pki_keys_path: \"{{ cinder_pki_dir ~ '/certs/private/' }}\"\ncinder_pki_certs_path: \"{{ cinder_pki_dir ~ '/certs/certs/' }}\"\ncinder_pki_intermediate_cert_name: \"{{ openstack_pki_service_intermediate_cert_name | default('ExampleCorpIntermediate') }}\"\ncinder_pki_regen_cert: \"\"\ncinder_pki_san: \"{{ openstack_pki_san | default('DNS:' ~ ansible_facts['hostname'] ~ ',IP:' ~ management_address) }}\"\ncinder_pki_certificates:\n  - name: \"cinder_{{ ansible_facts['hostname'] }}\"\n    provider: ownca\n    cn: \"{{ ansible_facts['hostname'] }}\"\n    san: \"{{ cinder_pki_san }}\"\n    signed_by: \"{{ cinder_pki_intermediate_cert_name }}\"\n\n# cinder destination files for SSL certificates\ncinder_ssl_cert: /etc/cinder/cinder.pem\ncinder_ssl_key: /etc/cinder/cinder.key\n\n# Installation details for SSL certificates\ncinder_pki_install_certificates:\n  - src: \"{{ cinder_user_ssl_cert | default(cinder_pki_certs_path ~ 'cinder_' ~ ansible_facts['hostname'] ~ '-chain.crt') }}\"\n    dest: \"{{ cinder_ssl_cert }}\"\n    owner: \"{{ cinder_system_user_name }}\"\n    group: \"{{ cinder_system_user_name }}\"\n    mode: \"0644\"\n  - src: \"{{ cinder_user_ssl_key | default(cinder_pki_keys_path ~ 'cinder_' ~ ansible_facts['hostname'] ~ '.key.pem') }}\"\n    dest: \"{{ cinder_ssl_key }}\"\n    owner: \"{{ cinder_system_user_name }}\"\n    group: \"{{ cinder_system_user_name }}\"\n    mode: \"0600\"\n\n# EPEL repo for EL distro path\ncinder_centos_epel_key: >-\n  {{ centos_epel_key | default('http://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-' ~ ansible_facts['distribution_major_version']) }}\ncinder_centos_epel_mirror: \"{{ centos_epel_mirror | default('http://download.fedoraproject.org/pub/epel') }}\"\n\ncinder_extra_gpg_keys: \"{{ _cinder_extra_gpg_keys }}\"\ncinder_extra_repos: \"{{ _cinder_extra_repos }}\"\n\n# Define user-provided SSL certificates\n# cinder_user_ssl_cert: <path to cert on ansible deployment host>\n# cinder_user_ssl_key: <path to cert on ansible deployment host>\n\n# Database cleanup\n# Periodically purge shadow tables, where archived records are stored\ncinder_purge_deleted: false\n# When to start purge task.\ncinder_purge_deleted_on_calendar: \"*-*-* 01:00:00\"\n# Purge events that are older then the number of days below.\ncinder_purge_deleted_before_days: \"364\"\n# Delay the timer by a randomly selected amount of time.\ncinder_purge_deleted_randomized_delay_sec: 0\n","created":"2025-12-08T13:39:56.829236Z","updated":"2025-12-08T13:39:56.829271Z","path":"/home/zuul/src/opendev.org/openstack/openstack-ansible-os_cinder/defaults/main.yml"}