3894883871
This patch adds support for external Ceph clusters for Cinder. For clean integration the backend configuration mechanism had to be slightly adjusted. We now have the option to enable multiple backends for Cinder independently. Currently, the flags cinder_backend_iscsi and cinder_backend_ceph are used to toggle backends. Documentation on how to use external ceph was added. Change-Id: I7e0267b90d62d6d881f24f063cdb894422ec8618 Partially-Implements: Blueprint: external-ceph
104 lines
3.6 KiB
Django/Jinja
104 lines
3.6 KiB
Django/Jinja
[DEFAULT]
|
|
debug = {{ cinder_logging_debug }}
|
|
|
|
log_dir = /var/log/kolla/cinder
|
|
use_forwarded_for = true
|
|
|
|
# Set use_stderr to False or the logs will also be sent to stderr
|
|
# and collected by Docker
|
|
use_stderr = False
|
|
|
|
enable_v1_api=false
|
|
volume_name_template = volume-%s
|
|
|
|
glance_api_servers = {{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ glance_api_port }}
|
|
glance_api_version = 2
|
|
|
|
os_region_name = {{ openstack_region_name }}
|
|
|
|
{% if enable_ceph | bool and cinder_backend_ceph | bool %}
|
|
default_volume_type = rbd-1
|
|
enabled_backends = rbd-1
|
|
{% elif cinder_backend_iscsi | bool %}
|
|
enabled_backends = {{ cinder_volume_backend_name }}
|
|
{% endif %}
|
|
|
|
{% if service_name == "cinder-backup" and enable_ceph | bool and cinder_backend_ceph | bool %}
|
|
backup_driver = cinder.backup.drivers.ceph
|
|
backup_ceph_conf = /etc/ceph/ceph.conf
|
|
backup_ceph_user = cinder-backup
|
|
backup_ceph_chunk_size = 134217728
|
|
backup_ceph_pool = {{ ceph_cinder_backup_pool_name }}
|
|
backup_ceph_stripe_unit = 0
|
|
backup_ceph_stripe_count = 0
|
|
restore_discard_excess_bytes = true
|
|
{% endif %}
|
|
|
|
osapi_volume_listen = {{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['address'] }}
|
|
osapi_volume_listen_port = {{ cinder_api_port }}
|
|
|
|
api_paste_config = /etc/cinder/api-paste.ini
|
|
nova_catalog_info = compute:nova:internalURL
|
|
|
|
auth_strategy = keystone
|
|
|
|
[oslo_messaging_notifications]
|
|
{% if enable_ceilometer | bool %}
|
|
driver = messagingv2
|
|
{% endif %}
|
|
|
|
[database]
|
|
connection = mysql+pymysql://{{ cinder_database_user }}:{{ cinder_database_password }}@{{ cinder_database_address }}/{{ cinder_database_name }}
|
|
max_retries = -1
|
|
|
|
[keystone_authtoken]
|
|
auth_uri = {{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_public_port }}
|
|
auth_url = {{ admin_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_admin_port }}
|
|
auth_type = password
|
|
project_domain_id = default
|
|
user_domain_id = default
|
|
project_name = service
|
|
username = {{ cinder_keystone_user }}
|
|
password = {{ cinder_keystone_password }}
|
|
|
|
memcache_security_strategy = ENCRYPT
|
|
memcache_secret_key = {{ memcache_secret_key }}
|
|
memcached_servers = {% for host in groups['memcached'] %}{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ memcached_port }}{% if not loop.last %},{% endif %}{% endfor %}
|
|
|
|
|
|
[oslo_concurrency]
|
|
lock_path = /var/lib/cinder/tmp
|
|
|
|
[oslo_messaging_rabbit]
|
|
rabbit_userid = {{ rabbitmq_user }}
|
|
rabbit_password = {{ rabbitmq_password }}
|
|
rabbit_ha_queues = true
|
|
rabbit_hosts = {% for host in groups['rabbitmq'] %}{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
|
|
|
|
|
|
{% if cinder_backend_iscsi | bool %}
|
|
[{{ cinder_volume_backend_name }}]
|
|
volume_group = {{ cinder_volume_group }}
|
|
volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver
|
|
volume_backend_name = {{ cinder_volume_backend_name }}
|
|
iscsi_ip_address = {{ hostvars[groups['tgtd'][0]]['ansible_' + hostvars[groups['tgtd'][0]]['storage_interface']]['ipv4']['address'] }}
|
|
iscsi_helper = {{ cinder_iscsi_helper }}
|
|
iscsi_protocol = {{ cinder_iscsi_protocol }}
|
|
|
|
{% elif enable_ceph | bool and cinder_backend_ceph | bool %}
|
|
[rbd-1]
|
|
volume_driver = cinder.volume.drivers.rbd.RBDDriver
|
|
rbd_pool = {{ ceph_cinder_pool_name }}
|
|
rbd_ceph_conf = /etc/ceph/ceph.conf
|
|
rbd_flatten_volume_from_snapshot = false
|
|
rbd_max_clone_depth = 5
|
|
rbd_store_chunk_size = 4
|
|
rados_connect_timeout = -1
|
|
rbd_user = cinder
|
|
rbd_secret_uuid = {{ rbd_secret_uuid }}
|
|
report_discard_supported = True
|
|
{% endif %}
|
|
|
|
[privsep_entrypoint]
|
|
helper_command=sudo cinder-rootwrap /etc/cinder/rootwrap.conf privsep-helper --config-file /etc/cinder/cinder.conf
|