1 heat_template_version: 2015-04-30
3 description: OCG Managers template
8 description: operative system image
11 description: resources to be applied on instances
14 description: creator's ssh public key
15 oam_protected_net_name:
17 description: OAM network where instances will connect
18 ocgmgr_oam_protected_ips:
19 type: comma_delimited_list
20 description: OCG OAM IP list
22 type: comma_delimited_list
23 description: OCG MGR VM names list (should be 2, since we have 2 MGR VMs)
26 description: availability zone 0 ID or name
29 description: availability zone 1 ID or name
30 ocgmgr_shared_sec_grp_id:
32 description: security group
35 description: Unique IDs for volumes
38 description: Unique name for this VF instance
41 description: Unique ID for this VF instance
44 description: Unique ID for this VF module instance
47 description: java home
50 description: user to install ocg
53 description: location of ocg installer
54 ocg_install_properties:
56 description: location of ocg install properties
59 description: WIM Install File location
62 description: Location of the ovlm-install dir
65 description: keycloak rpm name
66 ovlm_install_properties:
68 description: ovlm install properties
71 type: OS::Heat::SoftwareConfig
76 template: {get_file: ocgmgr_nested_0.txt}
78 # type: ocgmgr_nested.yaml
80 $java_home: { get_param: java_home }
81 $ocg_user: { get_param: ocg_user }
82 $ocg_install_jar: { get_param: ocg_install_jar }
83 $ocg_install_properties: { get_param: ocg_install_properties }
84 $ocg_hostname: { get_param: [ocgmgr_names, 0]}
85 $ocg_hostip: { get_param: [ocgmgr_oam_protected_ips, 0]}
86 $wim_install_file: { get_param: wim_install_file }
87 $ovlm_install_properties: { get_param: ovlm_install_properties }
88 $ovlm_hostname: {get_param: [ocgmgr_names, 0]}
89 $ovlm_mgr002_hostname: {get_param: [ocgmgr_names, 1]}
90 $ovlm_install_dir: {get_param: ovlm_install_dir}
91 $keycloak_rpm_name: {get_param: keycloak_rpm_name}
92 $volume_id: {get_param: [ocgmgr_volume_ids, 0]}
95 type: OS::Heat::SoftwareConfig
100 template: {get_file: ocgmgr_nested_1.txt}
102 $ocg_hostname: { get_param: [ocgmgr_names, 1]}
103 $ocg_hostip: { get_param: [ocgmgr_oam_protected_ips, 1]}
104 $volume_id: {get_param: [ocgmgr_volume_ids, 1]}
107 type: OS::Nova::KeyPair
111 template: VNF_NAME_STACK_NAME_key_pair
113 VNF_NAME: {get_param: vnf_name}
114 STACK_NAME: {get_param: 'OS::stack_name'}
115 public_key: {get_param: ocgmgr_public_key}
116 save_private_key: false
118 ocgmgr_oam_protected_0_port:
119 type: OS::Neutron::Port
123 template: VNF_NAME_ocgmgr_oam_port_0
125 VNF_NAME: {get_param: vnf_name}
126 network: {get_param: oam_protected_net_name}
127 fixed_ips: [{"ip_address": {get_param: [ocgmgr_oam_protected_ips, 0]}}]
128 security_groups: [{get_param: ocgmgr_shared_sec_grp_id}]
131 type: OS::Heat::MultipartMime
134 - config: {get_resource: vm_config_0}
137 type: OS::Heat::MultipartMime
140 - config: {get_resource: vm_config_1}
143 type: OS::Nova::Server
145 key_name: {get_resource: ocgmgr_admin_key}
146 name: {get_param: [ocgmgr_names, 0]}
147 image: {get_param: ocgmgr_image_name}
148 flavor: {get_param: ocgmgr_flavor_name}
149 availability_zone: {get_param: availability_zone_0}
151 - port: {get_resource: ocgmgr_oam_protected_0_port}
153 vnf_id: {get_param: vnf_id}
154 vf_module_id: {get_param: vf_module_id}
155 vnf_name: {get_param: vnf_name}
156 user_data_format: SOFTWARE_CONFIG
157 user_data: {get_resource: ocgmgr_config_0}
158 #user_data: {get_resource: server_interface_config}
160 ocgmgr_oam_protected_1_port:
161 type: OS::Neutron::Port
165 template: VNF_NAME_ocgmgr_oam_port_1
167 VNF_NAME: {get_param: vnf_name}
168 network: {get_param: oam_protected_net_name}
169 fixed_ips: [{"ip_address": {get_param: [ocgmgr_oam_protected_ips, 1]}}]
170 security_groups: [{get_param: ocgmgr_shared_sec_grp_id}]
173 type: OS::Nova::Server
175 key_name: {get_resource: ocgmgr_admin_key}
176 name: {get_param: [ocgmgr_names, 1]}
177 image: {get_param: ocgmgr_image_name}
178 flavor: {get_param: ocgmgr_flavor_name}
179 availability_zone: {get_param: availability_zone_1}
181 - port: {get_resource: ocgmgr_oam_protected_1_port}
183 vnf_id: {get_param: vnf_id}
184 vf_module_id: {get_param: vf_module_id}
185 vnf_name: {get_param: vnf_name}
186 user_data_format: RAW
187 user_data: {get_resource: ocgmgr_config_1}
188 #user_data: {get_resource: server_interface_config}
190 ocgmgr_volume_attachment_0:
191 type: OS::Cinder::VolumeAttachment
193 volume_id: {get_param: [ocgmgr_volume_ids, 0]}
194 instance_uuid: {get_resource: ocgmgr_server_0}
196 ocgmgr_volume_attachment_1:
197 type: OS::Cinder::VolumeAttachment
199 volume_id: {get_param: [ocgmgr_volume_ids, 1]}
200 instance_uuid: {get_resource: ocgmgr_server_1}
202 #server_interface_config:
203 # type: OS::Heat::CloudConfig
207 # - path: /etc/sysconfig/network-scripts/route-eth0
208 # permissions: "0644"
209 # content: { get_param: dns_route_eth0 }