tripleo-heat-templates/deployment/manila/manila-backend-cephfs.yaml
silvacarloss e7f90201bb Add parameters for manila storage availability zones
Manila supports the configuration of storage availability zones
for each share back end in the cloud. Add
ManilaStorageAvailabilityZone parameter that configures manila's
DEFAULT/storage_availability_zone.

Adds the corresponding Manila<>AvailabilityZone parameter for
each of the manila back ends on this repository. This parameter
is not mandatory, and it defaults to the one configured in the
DEFAULT session of the Manila configuration file.

Depends-On: Ic71545d786b851e7d3f3ce8502e913b81fc70059
Change-Id: I78a64e779d1e55e6ee8de5004457dce7c7906504
2021-09-27 14:26:47 -03:00

120 lines
4.2 KiB
YAML

heat_template_version: wallaby
description: >
Openstack Manila Cephfs backend
parameters:
ServiceData:
default: {}
description: Dictionary packing service data
type: json
ServiceNetMap:
default: {}
description: Mapping of service_name -> network name. Typically set
via parameter_defaults in the resource registry. Use
parameter_merge_strategies to merge it with the defaults.
type: json
RoleName:
default: ''
description: Role name on which the service is applied
type: string
RoleParameters:
default: {}
description: Parameters specific to the role
type: json
EndpointMap:
default: {}
description: Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
type: json
CephClusterName:
type: string
default: ceph
description: The Ceph cluster name.
constraints:
- allowed_pattern: "[a-zA-Z0-9]+"
description: >
The Ceph cluster name must be at least 1 character and contain only
letters and numbers.
CephConfigPath:
type: string
default: "/var/lib/tripleo-config/ceph"
description: |
The path where the Ceph Cluster config files are stored on the host.
# CephFS backend params:
ManilaCephFSDataPoolName:
default: manila_data
type: string
ManilaCephFSBackendName:
type: string
default: cephfs
ManilaCephFSAvailabilityZone:
default: ''
description: >
The availability zone of the CephFS backend.
When set, it overrides the default ManilaStorageAvailabilityZone.
type: string
ManilaCephFSDriverHandlesShareServers:
type: boolean
default: false
ManilaCephFSShareBackendName:
type: string
default: 'cephfs'
ManilaCephFSCephFSAuthId:
type: string
default: 'manila'
ManilaCephFSCephVolumeMode:
type: string
default: '0755'
ManilaCephFSCephFSProtocolHelperType:
default: CEPHFS
description: Protocol type ('CEPHFS' or 'NFS') when cephfs back end
is enabled. Set via manila cephfs environment files.
type: string
constraints:
- allowed_values: ['CEPHFS', 'NFS']
# Deprecated parameters
ManilaCephFSCephFSEnableSnapshots:
type: boolean
description: |
Enable snapshot support in CephFS driver. Note that this parameter has
no effect now and snapshot support is always enabled.
default: false
parameter_groups:
- label: deprecated
description: |
The following parameters are deprecated and will be removed. They should not
be relied on for new deployments. If you have concerns regarding deprecated
parameters, please contact the TripleO development team on IRC or the
OpenStack mailing list.
parameters:
- ManilaCephFSCephFSEnableSnapshots
outputs:
role_data:
description: Role data for the Manila Cephfs backend.
value:
service_name: manila_backend_cephfs
config_settings:
map_merge:
- manila::backend::cephfs::title: {get_param: ManilaCephFSBackendName}
manila::backend::cephfs::driver_handles_share_servers: {get_param: ManilaCephFSDriverHandlesShareServers}
manila::backend::cephfs::pool_name: {get_param: ManilaCephFSDataPoolName}
manila::backend::cephfs::share_backend_name: {get_param: ManilaCephFSShareBackendName}
manila_cephfs_ceph_conf_path: {get_param: CephConfigPath}
manila::backend::cephfs::cephfs_conf_path:
list_join:
- ''
- - /etc/ceph/
- {get_param: CephClusterName}
- .conf
manila::backend::cephfs::cephfs_auth_id: {get_param: ManilaCephFSCephFSAuthId}
manila::backend::cephfs::cephfs_cluster_name: {get_param: CephClusterName}
manila::backend::cephfs::cephfs_volume_mode: {get_param: ManilaCephFSCephVolumeMode}
manila::backend::cephfs::cephfs_protocol_helper_type: {get_param: ManilaCephFSCephFSProtocolHelperType}
- if:
- { equals: [ { get_param: ManilaCephFSAvailabilityZone }, '' ] }
- { }
- manila::backend::cephfs::backend_availability_zone: { get_param: ManilaCephFSAvailabilityZone }