1 heat_template_version: 2015-04-30
2 description: 'Common Ceph Storage Configuration'
6 default: overcloud-ceph-storage
9 description: Name of an existing EC2 KeyPair to enable SSH access to the instances
13 description: Flavor for block storage nodes to request when deploying.
18 description: The Ceph cluster FSID. Must be a UUID.
21 description: The Ceph monitors key. Can be created with ceph-authtool --gen-print-key.
25 description: The Ceph admin client key. Can be created with ceph-authtool --gen-print-key.
29 description: The list of ip/names to use as Ceph monitors
33 description: Mapping of service_name -> network name. Typically set
34 via parameter_defaults in the resource registry.
40 Setting to a previously unused value during stack-update will trigger
41 package update on all nodes
44 default: '' # Defaults to Heat created hostname
48 Additional configuration to inject into the cluster. Note
49 that CephStorageExtraConfig takes precedence over ExtraConfig.
51 CephStorageExtraConfig:
54 Role specific additional configuration to inject into the cluster.
60 type: OS::Nova::Server
64 flavor: {get_param: OvercloudCephStorageFlavor}
65 key_name: {get_param: KeyName}
68 user_data_format: SOFTWARE_CONFIG
69 user_data: {get_resource: NodeUserData}
70 name: {get_param: Hostname}
73 type: OS::TripleO::NodeUserData
76 type: OS::TripleO::CephStorage::Ports::StoragePort
78 ControlPlaneIP: {get_attr: [CephStorage, networks, ctlplane, 0]}
81 type: OS::TripleO::CephStorage::Ports::StorageMgmtPort
83 ControlPlaneIP: {get_attr: [CephStorage, networks, ctlplane, 0]}
86 type: OS::TripleO::CephStorage::Net::SoftwareConfig
88 ControlPlaneIp: {get_attr: [CephStorage, networks, ctlplane, 0]}
89 StorageIpSubnet: {get_attr: [StoragePort, ip_subnet]}
90 StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}
93 type: OS::TripleO::SoftwareDeployment
95 config: {get_resource: NetworkConfig}
96 server: {get_resource: CephStorage}
98 CephStorageDeployment:
99 type: OS::Heat::StructuredDeployment
101 server: {get_resource: CephStorage}
102 config: {get_resource: CephStorageConfig}
103 signal_transport: NO_SIGNAL
105 type: OS::Heat::StructuredConfig
107 group: os-apply-config
110 fsid: {get_param: CephClusterFSID}
113 key: {get_param: CephAdminKey}
114 mon_nodes: {get_param: CephMonitors}
115 ControllerCephDeployment:
116 type: OS::Heat::StructuredDeployment
118 server: {get_resource: Controller}
119 config: {get_resource: ControllerCephConfig}
120 signal_transport: NO_SIGNAL
121 ControllerCephConfig:
122 type: OS::Heat::StructuredConfig
124 group: os-apply-config
127 include_ceph_backend: true
129 fsid: {get_param: CephClusterFSID}
132 key: {get_param: CephMonKey}
134 key: {get_param: CephAdminKey}
135 mon_nodes: {get_param: CephMonitors}
136 NovaComputeCephDeployment:
137 depends_on: [ControllerCephDeployment]
138 type: OS::Heat::StructuredDeployment
140 server: {get_resource: NovaCompute}
141 config: {get_resource: NovaComputeCephConfig}
142 signal_transport: NO_SIGNAL
143 NovaComputeCephConfig:
144 type: OS::Heat::StructuredConfig
146 group: os-apply-config
149 fsid: {get_param: CephClusterFSID}
152 key: {get_param: CephAdminKey}
153 mon_nodes: {get_param: CephMonitors}
160 IP: {get_attr: [CephStorage, networks, ctlplane, 0]}
161 HOST: {get_attr: [CephStorage, name]}
163 description: IP address of the server in the storage network
164 value: {get_attr: [StoragePort, ip_address]}
165 storage_mgmt_ip_address:
166 description: IP address of the server in the storage_mgmt network
167 value: {get_attr: [StorageMgmtPort, ip_address]}
169 description: identifier which changes if the node configuration may need re-applying
170 value: "None - NO_SIGNAL"