1 heat_template_version: ocata
9 description: Mapping of service_name -> network name. Typically set
10 via parameter_defaults in the resource registry. This
11 mapping overrides those in ServiceNetMapDefaults.
18 description: Mapping of service endpoint -> protocol. Typically set
19 via parameter_defaults in the resource registry.
25 description: The Ceph monitors key. Can be created with ceph-authtool --gen-print-key.
31 ManilaCephFSDataPoolName:
34 ManilaCephFSMetadataPoolName:
35 default: manila_metadata
37 CinderBackupRbdPoolName:
51 It can be used to override settings for one of the predefined pools, or to create
52 additional ones. Example:
62 CephValidationRetries:
65 description: Number of retry attempts for Ceph validation
69 description: Interval (in seconds) in between validation checks
70 MonitoringSubscriptionCephMon:
71 default: 'overcloud-ceph-mon'
74 description: default minimum replication for RBD copies
80 type: ./ceph-base.yaml
82 ServiceNetMap: {get_param: ServiceNetMap}
83 DefaultPasswords: {get_param: DefaultPasswords}
84 EndpointMap: {get_param: EndpointMap}
88 description: Role data for the Ceph Monitor service.
90 service_name: ceph_mon
91 monitoring_subscription: {get_param: MonitoringSubscriptionCephMon}
94 - get_attr: [CephBase, role_data, config_settings]
95 - ceph::profile::params::ms_bind_ipv6: {get_param: CephIPv6}
96 ceph::profile::params::mon_key: {get_param: CephMonKey}
97 ceph::profile::params::osd_pool_default_pg_num: 32
98 ceph::profile::params::osd_pool_default_pgp_num: 32
99 ceph::profile::params::osd_pool_default_size: {get_param: CephPoolDefaultSize}
100 # repeat returns items in a list, so we need to map_merge twice
101 tripleo::profile::base::ceph::mon::ceph_pools:
107 - {get_param: CinderRbdPoolName}
108 - {get_param: ManilaCephFSDataPoolName}
109 - {get_param: ManilaCephFSMetadataPoolName}
110 - {get_param: CinderBackupRbdPoolName}
111 - {get_param: NovaRbdPoolName}
112 - {get_param: GlanceRbdPoolName}
113 - {get_param: GnocchiRbdPoolName}
116 pg_num: "%{hiera('ceph::profile::params::osd_pool_default_pg_num')}"
117 pgp_num: "%{hiera('ceph::profile::params::osd_pool_default_pgp_num')}"
118 size: "%{hiera('ceph::profile::params::osd_pool_default_size')}"
119 - {get_param: CephPools}
120 tripleo.ceph_mon.firewall_rules:
124 service_config_settings:
125 get_attr: [CephBase, role_data, service_config_settings]
127 include ::tripleo::profile::base::ceph::mon
129 # Note we perform these tasks in list order, but they are all step0 so
130 # we can perform a rolling upgrade of all mon nodes in step0, then a
131 # rolling upgrade of all osd nodes in step1
133 tags: step0,validation
134 shell: ceph health | egrep -sq "HEALTH_OK|HEALTH_WARN"
138 name: ceph-mon@{{ ansible_hostname }}
140 - name: Update Ceph packages
145 - name: Start CephMon
148 name: ceph-mon@{{ ansible_hostname }}
151 # https://github.com/ceph/ceph-ansible/blob/master/infrastructure-playbooks/rolling_update.yml#L149-L157
152 - name: Wait for the monitor to join the quorum...
153 tags: step0,ceph_quorum_validation
155 ceph -s | grep monmap | sed 's/.*quorum//' | egrep -sq {{ ansible_hostname }}
156 register: ceph_quorum_nodecheck
157 until: ceph_quorum_nodecheck.rc == 0
158 retries: {get_param: CephValidationRetries}
159 delay: {get_param: CephValidationDelay}
160 - name: ceph osd crush tunables default
162 shell: ceph osd crush tunables default