17e6e629f5
Allow cinder-volume, nova-compute and nova-libvirtd to be configured to use NFS. In order to mount and work with NFS shares, several containers needed the NFS packages installed during build time. One somewhat significant change is the addition of an explicit bind volume for nova-compute that has shared mounts enabled. According to docker-run(1), the shared mount propagation flag can only be specified for bind mounted Docker volumes and not named volumes. In an NFS setup, cinder-volume mounts the NFS shares so that it can create and manage the Cinder volumes. When a new instance is created with a Cinder volume or a Cinder volume is attached to an existing instance, nova-compute mounts the Cinder volume from the NFS share for nova-libvirtd. In order for nova-libvirtd to then see those Cinder volumes the shared mounts flag must be enabled for the Docker volume. Remove the rpcbind container as it is only necessary for operators who are using NFSv3 or lower. There is no known need for this currently however, this container can be added in the future should an operator require it. Co-authored-by: Ryan Hallisey <rhallise@redhat.com> Co-authored-by: Andrew Widdersheim <amwiddersheim@gmail.com> Change-Id: Iad77c05bce8876bdcc69b7ec22edd50e3bf48b9f Closes-Bug: #1530515 Partially implements: blueprint nfs-support-in-cinder
82 lines
3.6 KiB
YAML
82 lines
3.6 KiB
YAML
---
|
|
project_name: "cinder"
|
|
|
|
####################
|
|
# Ceph
|
|
####################
|
|
ceph_cinder_pool_type: "{{ ceph_pool_type }}"
|
|
ceph_cinder_cache_mode: "{{ ceph_cache_mode }}"
|
|
ceph_cinder_backup_pool_type: "{{ ceph_pool_type }}"
|
|
ceph_cinder_backup_cache_mode: "{{ ceph_cache_mode }}"
|
|
|
|
# Due to Ansible issues on include, you cannot override these variables. Please
|
|
# override the variables they reference instead.
|
|
cinder_pool_name: "{{ ceph_cinder_pool_name }}"
|
|
cinder_pool_type: "{{ ceph_cinder_pool_type }}"
|
|
cinder_cache_mode: "{{ ceph_cinder_cache_mode }}"
|
|
cinder_backup_pool_name: "{{ ceph_cinder_backup_pool_name }}"
|
|
cinder_backup_pool_type: "{{ ceph_cinder_backup_pool_type }}"
|
|
cinder_backup_cache_mode: "{{ ceph_cinder_backup_cache_mode }}"
|
|
|
|
|
|
####################
|
|
# Database
|
|
####################
|
|
cinder_database_name: "cinder"
|
|
cinder_database_user: "cinder"
|
|
cinder_database_address: "{{ kolla_internal_fqdn }}:{{ database_port }}"
|
|
|
|
|
|
####################
|
|
# Docker
|
|
####################
|
|
cinder_volume_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kolla_install_type }}-cinder-volume"
|
|
cinder_volume_tag: "{{ openstack_release }}"
|
|
cinder_volume_image_full: "{{ cinder_volume_image }}:{{ cinder_volume_tag }}"
|
|
|
|
cinder_scheduler_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kolla_install_type }}-cinder-scheduler"
|
|
cinder_scheduler_tag: "{{ openstack_release }}"
|
|
cinder_scheduler_image_full: "{{ cinder_scheduler_image }}:{{ cinder_scheduler_tag }}"
|
|
|
|
cinder_backup_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kolla_install_type }}-cinder-backup"
|
|
cinder_backup_tag: "{{ openstack_release }}"
|
|
cinder_backup_image_full: "{{ cinder_backup_image }}:{{ cinder_backup_tag }}"
|
|
|
|
cinder_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kolla_install_type }}-cinder-api"
|
|
cinder_api_tag: "{{ openstack_release }}"
|
|
cinder_api_image_full: "{{ cinder_api_image }}:{{ cinder_api_tag }}"
|
|
|
|
|
|
####################
|
|
# OpenStack
|
|
####################
|
|
cinder_admin_endpoint: "{{ admin_protocol }}://{{ kolla_internal_fqdn }}:{{ cinder_api_port }}/v1/%(tenant_id)s"
|
|
cinder_internal_endpoint: "{{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ cinder_api_port }}/v1/%(tenant_id)s"
|
|
cinder_public_endpoint: "{{ public_protocol }}://{{ kolla_external_fqdn }}:{{ cinder_api_port }}/v1/%(tenant_id)s"
|
|
cinder_v2_admin_endpoint: "{{ admin_protocol }}://{{ kolla_internal_fqdn }}:{{ cinder_api_port }}/v2/%(tenant_id)s"
|
|
cinder_v2_internal_endpoint: "{{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ cinder_api_port }}/v2/%(tenant_id)s"
|
|
cinder_v2_public_endpoint: "{{ public_protocol }}://{{ kolla_external_fqdn }}:{{ cinder_api_port }}/v2/%(tenant_id)s"
|
|
|
|
cinder_logging_debug: "{{ openstack_logging_debug }}"
|
|
|
|
cinder_keystone_user: "cinder"
|
|
|
|
openstack_cinder_auth: "{'auth_url':'{{ openstack_auth.auth_url }}','username':'{{ openstack_auth.username }}','password':'{{ openstack_auth.password }}','project_name':'{{ openstack_auth.project_name }}'}"
|
|
|
|
|
|
####################
|
|
# Cinder
|
|
####################
|
|
cinder_backends:
|
|
- name: "rbd-1"
|
|
driver: "ceph"
|
|
enabled: "{{ enable_ceph | bool and cinder_backend_ceph | bool }}"
|
|
- name: "lvm-1"
|
|
driver: "lvm"
|
|
enabled: "{{ enable_cinder_backend_lvm | bool }}"
|
|
- name: "nfs-1"
|
|
driver: "nfs"
|
|
enabled: "{{ enable_cinder_backend_nfs | bool }}"
|
|
|
|
cinder_enabled_backends: "{{ cinder_backends|selectattr('enabled', 'equalto', true)|list }}"
|