Disable the Mon/OSD/Client resources in puppet-ceph-external
[apex-tripleo-heat-templates.git] / puppet / services / ceph-base.yaml
1 heat_template_version: 2016-04-08
2
3 description: >
4   Ceph base service. Shared by all Ceph services.
5
6 parameters:
7   # NOTE(gfidente): needs a default to cope with external Ceph deployments were we don't pass (and need) an Admin key
8   CephAdminKey:
9     default: ''
10     description: The Ceph admin client key. Can be created with ceph-authtool --gen-print-key.
11     type: string
12     hidden: true
13   CephClientKey:
14     description: The Ceph client key. Can be created with ceph-authtool --gen-print-key. Currently only used for external Ceph deployments to create the openstack user keyring.
15     type: string
16     hidden: true
17   CephClientUserName:
18     default: openstack
19     type: string
20   CephClusterFSID:
21     type: string
22     description: The Ceph cluster FSID. Must be a UUID.
23   CephIPv6:
24     default: False
25     type: boolean
26   CinderRbdPoolName:
27     default: volumes
28     type: string
29   CinderBackupRbdPoolName:
30     default: backups
31     type: string
32   GlanceRbdPoolName:
33     default: images
34     type: string
35   GnocchiRbdPoolName:
36     default: metrics
37     type: string
38   NovaRbdPoolName:
39     default: vms
40     type: string
41   # DEPRECATED options for compatibility with overcloud.yaml
42   # This should be removed and manipulation of the ControllerServices list
43   # used instead, but we need client support for that first
44   ControllerEnableCephStorage:
45     default: false
46     description: Whether to deploy Ceph Storage (OSD) on the Controller
47     type: boolean
48
49 parameter_groups:
50 - label: deprecated
51   description: Do not use deprecated params, they will be removed.
52   parameters:
53   - ControllerEnableCephStorage
54
55 outputs:
56   role_data:
57     description: Role data for the Ceph base service.
58     value:
59       service_name: ceph_base
60       config_settings:
61         tripleo::profile::base::ceph::ceph_ipv6: {get_param: CephIPv6}
62         tripleo::profile::base::ceph::enable_ceph_storage: {get_param: ControllerEnableCephStorage}
63         ceph::profile::params::osd_pool_default_pg_num: 32
64         ceph::profile::params::osd_pool_default_pgp_num: 32
65         ceph::profile::params::osd_pool_default_size: 3
66         ceph::profile::params::osd_pool_default_min_size: 1
67         ceph::profile::params::osds: {/srv/data: {}}
68         ceph::profile::params::manage_repo: false
69         ceph::profile::params::authentication_type: cephx
70         ceph::profile::params::fsid: {get_param: CephClusterFSID}
71         ceph::profile::params::client_keys:
72           str_replace:
73             template: "{
74               client.admin: {
75                 secret: 'ADMIN_KEY',
76                 mode: '0600',
77                 cap_mon: 'allow *',
78                 cap_osd: 'allow *',
79                 cap_mds: 'allow *'
80               },
81               client.bootstrap-osd: {
82                 secret: 'ADMIN_KEY',
83                 keyring_path: '/var/lib/ceph/bootstrap-osd/ceph.keyring',
84                 cap_mon: 'allow profile bootstrap-osd'
85               },
86               client.CLIENT_USER: {
87                 secret: 'CLIENT_KEY',
88                 mode: '0644',
89                 cap_mon: 'allow r',
90                 cap_osd: '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'
91               }
92             }"
93             params:
94               CLIENT_USER: {get_param: CephClientUserName}
95               CLIENT_KEY: {get_param: CephClientKey}
96               ADMIN_KEY: {get_param: CephAdminKey}
97               NOVA_POOL: {get_param: NovaRbdPoolName}
98               CINDER_POOL: {get_param: CinderRbdPoolName}
99               CINDERBACKUP_POOL: {get_param: CinderBackupRbdPoolName}
100               GLANCE_POOL: {get_param: GlanceRbdPoolName}
101               GNOCCHI_POOL: {get_param: GnocchiRbdPoolName}