# Volume backends: ceph, ontap-nfs, ontap-iscsi, pure-fc # For DCN multi-backend Ceph, set cinder_volume_backend: ceph and populate cinder_dcn_clusters # Backup backends: ceph, swift, ontap-nfs cinder_volume_backend: "" cinder_backup_backend: "" # DCN multi-backend configuration # Each cluster entry creates a separate cinderVolume with its own AZ cinder_dcn_clusters: [] # Example: # - name: central # ceph_conf: /etc/ceph/central.conf # rbd_pool: volumes # availability_zone: central # rbd_secret_uuid: # optional, for libvirt # - name: dcn1 # ceph_conf: /etc/ceph/dcn1.conf # rbd_pool: volumes # availability_zone: dcn1 # rbd_secret_uuid: cinder_dcn_default_az: central cinder_api_patch: | spec: cinder: enabled: true apiOverride: route: {} template: databaseInstance: openstack databaseAccount: cinder secret: osp-secret cinderAPI: override: service: internal: metadata: annotations: metallb.universe.tf/address-pool: internalapi metallb.universe.tf/allow-shared-ip: internalapi {% if ipv6_enabled | default(false) -%} metallb.universe.tf/loadBalancerIPs: {{ internalapi_prefix_ipv6 | default('2620:cf:cf:bbbb') }}::50 {%- else -%} metallb.universe.tf/loadBalancerIPs: {{ internalapi_prefix | default('172.17.0') }}.80 {%- endif %} spec: type: LoadBalancer cinderScheduler: # Avoid deploying scheduler until we clean up old services replicas: 0 cinderBackup: networkAttachments: - storage replicas: 0 # no backups by default cinderVolumes: volume1: networkAttachments: - storage replicas: 0 # no volumes by default cinder_scheduler_patch: | spec: cinder: enabled: true template: cinderScheduler: replicas: 1 cinder_volume_backend_patch: | spec: cinder: enabled: true template: cinderVolumes: volume1: networkAttachments: - storage replicas: 1 customServiceConfig: | [tripleo_ceph] backend_host=hostgroup volume_backend_name=tripleo_ceph volume_driver=cinder.volume.drivers.rbd.RBDDriver rbd_ceph_conf=/etc/ceph/ceph.conf rbd_user=openstack rbd_pool=volumes rbd_flatten_volume_from_snapshot=False report_discard_supported=True cinder_backup_ceph_patch: | spec: cinder: enabled: true template: cinderBackup: networkAttachments: - storage replicas: 1 customServiceConfig: | [DEFAULT] backup_driver=cinder.backup.drivers.ceph.CephBackupDriver backup_ceph_conf=/etc/ceph/ceph.conf backup_ceph_user=openstack backup_ceph_pool=backups cinder_backup_swift_patch: | spec: cinder: enabled: true template: cinderBackup: networkAttachments: - storage replicas: 1 customServiceConfig: | [DEFAULT] backup_driver = cinder.backup.drivers.swift.SwiftBackupDriver # Below are defaults, explicit for illustration purposes backup_swift_auth = per_user keystone_catalog_info = identity:Identity Service:publicURL swift_catalog_info = object-store:swift:publicURL # The path where we find cinder.conf generated by puppet-tripleo cinder_tripleo_path: "/var/lib/config-data/puppet-generated/cinder/etc/cinder/cinder.conf" # nfs shares path used in the tripleo for cinder netapp nfs backend cinder_tripleo_nfs_shares_config_path: "/var/lib/config-data/cinder/etc/cinder/shares.conf" # The path where we temporarily save cinder.conf fetched from TripleO controller node cinder_conf_path: "/tmp/cinder.conf" # The path where we temporarily save shares.conf fetched from TripleO controller node cinder_nfs_shares_conf_path: "/tmp/shares.conf" # The backend names generated by puppet-tripleo cinder_netapp_backend: "tripleo_netapp" cinder_pure_backend: "tripleo_pure" # List of netapp credentials to be captured from tripleo cinder.conf cinder_volume_netapp_vars: - netapp_login - netapp_password - netapp_server_hostname - netapp_vserver - netapp_pool_name_search_pattern # List of pure credentials to be captured from tripleo cinder cinder_volume_pure_vars: - san_ip - pure_api_token # Vars for cinder-backup cinder_backup_nfs_backup_mount_point_base: "/var/lib/cinder/backup" cinder_retry_delay: 5 # Dictionary of nodeSelector key/values as keys of cinder-volume backend names cinder_volumes_nodeselector: {} # Dictionary of nodeSelector key/values cinder_backup_nodeselector: {}