Chapter 3. Creating the custom back end environment file The environment file that you create to configure custom back ends contains the settings for each back end that you want to define. It also contains other settings that are relevant to the deployment of a custom back end. For more information about environment files, see Environment Files in the Advanced Overcloud Customization guide. The following sample environment file defines two NetApp back ends, netapp1 and netapp2 : /home/stack/templates/custom-env.yaml 1 The following parameters are set to false , which disables other back end types: CinderEnableIscsiBackend : other iSCSI back ends. CinderEnableRbdBackend : Red Hat Ceph. CinderEnableNfsBackend : NFS. NovaEnableRbdBackend : ephemeral Red Hat Ceph storage. 2 The GlanceBackend parameter sets what the Image service uses to store images. The following values are supported: file : store images on /var/lib/glance/images on each Controller node. swift : use the Object Storage service for image storage. cinder : use the Block Storage service for image storage. 3 ControllerExtraConfig defines custom settings that are applied to all Controller nodes. The cinder::config::cinder_config class means the settings must be applied to the Block Storage (cinder) service. 4 The netapp1/volume_driver and netapp2/volume_driver settings follow the section / setting syntax. With the Block Storage service, each back end is defined in its own section in /etc/cinder/cinder.conf . Each setting that uses the netapp1 prefix is defined in a new [netapp1] back end section. 5 netapp2 settings are defined in a separate [netapp2] section. 6 The value prefix configures the preceding setting. 7 The cinder_user_enabled_backends class sets and enables custom back ends. Use this class only for user-enabled back ends, specifically, those defined in the cinder::config::cinder_config class. Do not use cinder_user_enabled_backends to list back ends that you can enable natively with director. These include Red Hat Ceph, NFS, and single back ends for supported NetApp or Dell appliances. For example, if you enable a Red Hat Ceph back end, do not list it in cinder_user_enabled_backends , enable it by setting CinderEnableRbdBackend to true . Note For more information about defining a Red Hat Ceph back end for OpenStack Block Storage, see the Deploying an Overcloud with Containerized Red Hat Ceph guide. To see the resulting /etc/cinder/cinder.conf settings from /home/stack/templates/custom-env.yaml , see Configuration from sample environment file .

Commands:
parameter_defaults: # 1 CinderEnableIscsiBackend : false CinderEnableRbdBackend : false CinderEnableNfsBackend : false NovaEnableRbdBackend : false GlanceBackend : file # 2 ControllerExtraConfig: # 3 cinder::config::cinder_config: netapp1 /volume_driver: # 4 value: cinder.volume.drivers.netapp.common.NetAppDriver netapp1/netapp_storage_family: value: ontap_7mode netapp1/netapp_storage_protocol: value: iscsi netapp1/netapp_server_hostname: value: 10.35.64.11 netapp1/netapp_server_port: value: 80 netapp1/netapp_login: value: root netapp1/netapp_password: value: p@USDUSDw0rd netapp1/volume_backend_name: value: netapp1 netapp2 /volume_driver: # 5 value : cinder.volume.drivers.netapp.common.NetAppDriver # 6 netapp2/netapp_storage_family: value: ontap_7mode netapp2/netapp_storage_protocol: value: iscsi netapp2/netapp_server_hostname: value: 10.35.64.11 netapp2/netapp_server_port: value: 80 netapp2/netapp_login: value: root netapp2/netapp_password: value: p@USDUSDw0rd netapp2/volume_backend_name: value: netapp2 cinder_user_enabled_backends: ['netapp1','netapp2'] # 7