Change flat network name for nosdn fdio scenario
[apex-tripleo-heat-templates.git] / puppet / services / ceph-external.yaml
1 heat_template_version: pike
2
3 description: >
4   Ceph External service.
5
6 parameters:
7   CephClientKey:
8     description: The Ceph client key. Can be created with ceph-authtool --gen-print-key.
9     type: string
10     hidden: true
11   CephClientUserName:
12     default: openstack
13     type: string
14   CephClusterFSID:
15     type: string
16     description: The Ceph cluster FSID. Must be a UUID.
17   CephExternalMonHost:
18     default: ''
19     type: string
20     description: List of externally managed Ceph Mon Host IPs. Only used for external Ceph deployments.
21   CinderRbdPoolName:
22     default: volumes
23     type: string
24   CinderBackupRbdPoolName:
25     default: backups
26     type: string
27   GlanceRbdPoolName:
28     default: images
29     type: string
30   GnocchiRbdPoolName:
31     default: metrics
32     type: string
33   NovaRbdPoolName:
34     default: vms
35     type: string
36   ServiceData:
37     default: {}
38     description: Dictionary packing service data
39     type: json
40   ServiceNetMap:
41     default: {}
42     description: Mapping of service_name -> network name. Typically set
43                  via parameter_defaults in the resource registry.  This
44                  mapping overrides those in ServiceNetMapDefaults.
45     type: json
46   DefaultPasswords:
47     default: {}
48     type: json
49   RoleName:
50     default: ''
51     description: Role name on which the service is applied
52     type: string
53   RoleParameters:
54     default: {}
55     description: Parameters specific to the role
56     type: json
57   EndpointMap:
58     default: {}
59     description: Mapping of service endpoint -> protocol. Typically set
60                  via parameter_defaults in the resource registry.
61     type: json
62   MonitoringSubscriptionCephExternal:
63     default: 'overcloud-ceph-external'
64     type: string
65   RbdDefaultFeatures:
66     default: ''
67     description: The default features enabled when creating a block device
68                  image. Only applies to format 2 images. Set to '1' for Jewel
69                  clients using older Ceph servers.
70     type: string
71   ManilaCephFSNativeCephFSAuthId:
72     type: string
73     default: 'manila'
74   CephManilaClientKey:
75     default: ''
76     description: The Ceph client key. Can be created with ceph-authtool --gen-print-key.
77     type: string
78     hidden: true
79
80 outputs:
81   role_data:
82     description: Role data for the Ceph External service.
83     value:
84       service_name: ceph_external
85       monitoring_subscription: {get_param: MonitoringSubscriptionCephExternal}
86       config_settings:
87         tripleo::profile::base::ceph::ceph_mon_host: {get_param: CephExternalMonHost}
88         ceph::profile::params::fsid: {get_param: CephClusterFSID}
89         ceph::profile::params::rbd_default_features: {get_param: RbdDefaultFeatures}
90         ceph::profile::params::client_keys:
91           map_replace:
92             - CEPH_CLIENT_KEY:
93                 secret: {get_param: CephClientKey}
94                 mode: '0644'
95                 cap_mon: 'allow r'
96                 cap_osd:
97                   str_replace:
98                     template: 'allow class-read object_prefix rbd_children, allow rwx pool=CINDER_POOL, allow rwx pool=CINDERBACKUP_POOL, allow rwx pool=NOVA_POOL, allow rwx pool=GLANCE_POOL, allow rwx pool=GNOCCHI_POOL'
99                     params:
100                       NOVA_POOL: {get_param: NovaRbdPoolName}
101                       CINDER_POOL: {get_param: CinderRbdPoolName}
102                       CINDERBACKUP_POOL: {get_param: CinderBackupRbdPoolName}
103                       GLANCE_POOL: {get_param: GlanceRbdPoolName}
104                       GNOCCHI_POOL: {get_param: GnocchiRbdPoolName}
105               MANILA_CLIENT_KEY:
106                 mode: '0644'
107                 secret: {get_param: CephManilaClientKey}
108                 cap_mon: 'allow r, allow command \"auth del\", allow command \"auth caps\", allow command \"auth get\", allow command \"auth get-or-create\"'
109                 cap_mds: 'allow *'
110                 cap_osd: 'allow rw'
111             - keys:
112                 CEPH_CLIENT_KEY:
113                   list_join: ['.', ['client', {get_param: CephClientUserName}]]
114                 MANILA_CLIENT_KEY:
115                   list_join: ['.', ['client', {get_param: ManilaCephFSNativeCephFSAuthId}]]
116         ceph::profile::params::manage_repo: false
117         # FIXME(gfidente): we should not have to list the packages explicitly in
118         # the templates, but this should stay until the following is fixed:
119         # https://bugs.launchpad.net/puppet-ceph/+bug/1629933
120         ceph::params::packages:
121           - ceph-base
122           - ceph-mon
123           - ceph-osd
124       step_config: |
125         include ::tripleo::profile::base::ceph::client