1 tosca_definitions_version: tosca_simple_yaml_1_0
5 - https://gerrit.onap.org/r/gitweb?p=so.git;a=blob_plain;f=aria/multivim-plugin/src/main/python/multivim-plugin/plugin.yaml
8 description: TOSCA template to deploy vCPE Infrastructue emlements (vAAA, vDHCP, vDNS_DHCP, webServer_sink) for ONAP
12 type: onap.multivim.datatypes.Config
13 description: MultiVIM connection configuration
16 description: Image to be used for compute instance
19 description: Type of instance (flavor) to be used
22 description: Public network that enables remote connection to VNF
25 description: Private network that connects ONAP components and the VNF
26 onap_private_subnet_id:
28 description: Private sub-network that connects ONAP components and the VNF
29 onap_private_net_cidr:
31 description: The CIDR of the protected private network
34 description: Private network that connects vAAA with vDNSs
37 description: The CIDR of the vAAA private network
40 description: Private network that connects vGW to emulated internet
43 description: The CIDR of the vCPE public
46 description: Private IP address that is assigned to the vAAA to communicate with the vCPE components
49 description: Private IP address that is assigned to the vAAA to communicate with ONAP components
52 description: Private IP address that is assigned to the vDNS to communicate with the vCPE components
55 description: Private IP address that is assigned to the vDNS to communicate with ONAP components
58 description: Private IP address that is assigned to the vDHCP to communicate with the vCPE components
61 description: Private IP address that is assigned to the vDHCP to communicate with ONAP components
64 description: Private IP address that is assigned to the vWEB to communicate with the vGWs
67 description: Private IP address that is assigned to the vWEB to communicate with ONAP components
70 description: Name of the vAAA
73 description: Name of the vDNS
76 description: Name of the vDHCP
79 description: Name of the vWEB
82 description: The VNF ID is provided by ONAP
85 description: The vAAA Module ID is provided by ONAP
88 description: IP address of the DCAE collector
91 description: Port of the DCAE collector
94 description: Public/Private key pair name
97 description: Public key to be installed on the compute instance
100 description: URL of the repository that hosts the demo packages
103 description: URL of the repository that hosts the demo packages
104 install_script_version:
106 description: Version number of the scripts that install the vFW demo app
107 demo_artifacts_version:
109 description: Artifacts (jar, tar.gz) version used in demo vnfs
123 type: onap.multivim.nodes.KeyPair
127 custom_configuration:
128 public_key: { get_input: pub_key }
129 multivim_config: { get_input: multivim_config }
131 onap_private_network:
132 type: onap.multivim.nodes.Network
134 use_external_resource: true
135 resource_id: { get_input: onap_private_net_id }
136 multivim_config: { get_input: multivim_config }
139 type: onap.multivim.nodes.Subnet
141 use_external_resource: true
142 resource_id: { get_input: onap_private_subnet_id }
143 multivim_config: { get_input: multivim_config }
146 type: onap.multivim.nodes.Network
148 resource_id: { get_input: cpe_signal_net_id }
149 multivim_config: { get_input: multivim_config }
152 type: onap.multivim.nodes.Subnet
154 resource_id: { get_input: cpe_signal_net_id }
156 cidr: { get_input: cpe_signal_net_cidr }
157 multivim_config: { get_input: multivim_config }
159 - network: cpe_signal_network
162 type: onap.multivim.nodes.Network
164 resource_id: { get_input: cpe_public_net_id }
165 multivim_config: { get_input: multivim_config }
168 type: onap.multivim.nodes.Subnet
170 resource_id: { get_input: cpe_public_net_id }
172 cidr: { get_input: cpe_public_net_cidr }
173 multivim_config: { get_input: multivim_config }
175 - network: cpe_public_network
177 # Virtual AAA server Instantiation
179 type: onap.multivim.nodes.Port
181 fixed_ip: { get_input: vaaa_private_ip_0 }
182 multivim_config: { get_input: multivim_config }
184 - network: cpe_signal_network
185 - subnet: cpe_signal_subnet
188 type: onap.multivim.nodes.Port
190 fixed_ip: { get_input: vaaa_private_ip_1 }
191 multivim_config: { get_input: multivim_config }
193 - network: onap_private_network
194 - subnet: onap_private_subnet
196 # NOTE: may need management_network_name
198 type: onap.multivim.nodes.Server
200 image: { get_input: vcpe_image_name }
201 flavor: { get_input: vcpe_flavor_name }
202 resource_id: { get_input: vaaa_name_0 }
203 management_network_name: onap_private_network
204 multivim_config: { get_input: multivim_config }
206 metadata: {vnf_id: { get_input: vnf_id }, vf_module_id: { get_input: vf_module_id }}
207 userdata: { concat: [
209 "mkdir /opt/config\n",
210 "echo ",{ get_input: dcae_collector_ip}," > /opt/config/dcae_collector_ip.txt\n",
211 "echo ",{ get_input: dcae_collector_port}," > /opt/config/dcae_collector_port.txt\n",
212 "echo ",{ get_input: vaaa_private_ip_0}," > /opt/config/cpe_signal_net_ipaddr.txt\n",
213 "echo ",{ get_input: vaaa_private_ip_1}," > /opt/config/oam_ipaddr.txt\n",
214 "echo ",{ get_input: onap_private_net_cidr}," > /opt/config/oam_cidr.txt\n",
215 "echo ",{ get_input: cpe_signal_net_cidr}," > /opt/config/cpe_signal_net_cidr.txt\n",
216 "echo ",{ get_input: repo_url_blob}," > /opt/config/repo_url_blob.txt\n",
217 "echo ",{ get_input: repo_url_artifacts}," > /opt/config/repo_url_artifacts.txt\n",
218 "echo ",{ get_input: demo_artifacts_version}," > /opt/config/demo_artifacts_version.txt\n",
219 "echo ",{ get_input: install_script_version}," > /opt/config/install_script_version.txt\n",
220 "echo ",{ get_input: cloud_env}," > /opt/config/cloud_env.txt\n",
221 "curl -k ",{get_input: repo_url_blob},"/org.onap.demo/vnfs/vcpe/",{get_input: install_script_version},"/v_aaa_install.sh -o /opt/v_aaa_install.sh\n",
223 "chmod +x v_aaa_install.sh\n",
224 "./v_aaa_install.sh\n"
228 - key_pair: my_keypair
229 - port: vaaa_private_0_port
230 - port: vaaa_private_1_port
232 # Virtual DNS Instantiation
234 type: onap.multivim.nodes.Port
236 fixed_ip: { get_input: vdns_private_ip_0 }
237 multivim_config: { get_input: multivim_config }
239 - network: cpe_public_network
242 type: onap.multivim.nodes.Port
244 fixed_ip: { get_input: vdns_private_ip_1 }
245 multivim_config: { get_input: multivim_config }
247 - network: onap_private_network
250 type: onap.multivim.nodes.Server
252 image: { get_input: vcpe_image_name }
253 flavor: { get_input: vcpe_flavor_name }
254 resource_id: { get_input: vdns_name_0 }
255 management_network_name: onap_private_network
256 multivim_config: { get_input: multivim_config }
258 metadata: {vnf_id: { get_input: vnf_id }, vf_module_id: { get_input: vf_module_id }}
259 userdata: { concat: [
261 "mkdir /opt/config\n",
262 "echo ",{get_input: vdns_private_ip_1}," > /opt/config/oam_ipaddr.txt\n",
263 "echo ",{get_input: vdns_private_ip_0}," > /opt/config/cpe_public_net_ipaddr.txt\n",
264 "echo ",{get_input: onap_private_net_cidr}," > /opt/config/oam_cidr.txt\n",
265 "echo ",{get_input: cpe_public_net_cidr}," > /opt/config/cpe_public_net_cidr.txt\n",
266 "echo ",{get_input: repo_url_blob}," > /opt/config/repo_url_blob.txt\n",
267 "echo ",{get_input: repo_url_artifacts}," > /opt/config/repo_url_artifacts.txt\n",
268 "echo ",{get_input: demo_artifacts_version}," > /opt/config/demo_artifacts_version.txt\n",
269 "echo ",{get_input: install_script_version}," > /opt/config/install_script_version.txt\n",
270 "echo ",{get_input: cloud_env}," > /opt/config/cloud_env.txt\n",
271 "curl -k ",{get_input: repo_url_blob},"/org.onap.demo/vnfs/vcpe/",{get_input: install_script_version},"/v_dns_install.sh -o /opt/v_dns_install.sh\n",
273 "chmod +x v_dns_install.sh\n",
274 "./v_dns_install.sh\n"
278 - port: vdns_private_0_port
279 - port: vdns_private_1_port
281 # Virtual DHCP Instantiation
282 vdhcp_private_0_port:
283 type: onap.multivim.nodes.Port
285 fixed_ip: { get_input: vdhcp_private_ip_0 }
286 multivim_config: { get_input: multivim_config }
288 - network: cpe_signal_network
289 - subnet: cpe_signal_subnet
291 vdhcp_private_1_port:
292 type: onap.multivim.nodes.Port
294 fixed_ip: { get_input: vdhcp_private_ip_1 }
295 multivim_config: { get_input: multivim_config }
297 - subnet: onap_private_subnet
300 type: onap.multivim.nodes.Server
302 image: { get_input: vcpe_image_name }
303 flavor: { get_input: vcpe_flavor_name }
304 resource_id: { get_input: vdhcp_name_0 }
305 management_network_name: onap_private_network
306 multivim_config: { get_input: multivim_config }
308 metadata: {vnf_id: { get_input: vnf_id }, vf_module_id: { get_input: vf_module_id }}
309 userdata: { concat: [
311 "mkdir /opt/config\n",
312 "echo ",{get_input: vdns_private_ip_1}," > /opt/config/oam_ipaddr.txt\n",
313 "echo ",{get_input: vdhcp_private_ip_0}," > /opt/config/cpe_signal_ipaddr.txt\n",
314 "echo ",{get_input: onap_private_net_cidr}," > /opt/config/oam_cidr.txt\n",
315 "echo ",{get_input: cpe_signal_net_cidr}," > /opt/config/cpe_signal_net_cidr.txt\n",
316 "echo ",{get_input: repo_url_blob}," > /opt/config/repo_url_blob.txt\n",
317 "echo ",{get_input: repo_url_artifacts}," > /opt/config/repo_url_artifacts.txt\n",
318 "echo ",{get_input: demo_artifacts_version}," > /opt/config/demo_artifacts_version.txt\n",
319 "echo ",{get_input: install_script_version}," > /opt/config/install_script_version.txt\n",
320 "echo ",{get_input: cloud_env}," > /opt/config/cloud_env.txt\n",
321 "curl -k ",{get_input: repo_url_blob},"/org.onap.demo/vnfs/vcpe/",{get_input: install_script_version},"/v_dhcp_install.sh -o /opt/v_dhcp_install.sh\n",
323 "chmod +x v_dhcp_install.sh\n",
324 "./v_dhcp_install.sh\n"
328 - key_pair: my_keypair
329 - port: vdhcp_private_0_port
330 - port: vdhcp_private_1_port
334 type: onap.multivim.nodes.Port
336 fixed_ip: { get_input: vweb_private_ip_0 }
337 multivim_config: { get_input: multivim_config }
339 - network: cpe_public_network
340 - subnet: cpe_public_subnet
343 type: onap.multivim.nodes.Port
345 fixed_ip: { get_input: vweb_private_ip_1 }
346 multivim_config: { get_input: multivim_config }
348 - network: onap_private_network
349 - subnet: onap_private_subnet
352 type: onap.multivim.nodes.Server
354 image: { get_input: vcpe_image_name }
355 flavor: { get_input: vcpe_flavor_name }
356 resource_id: { get_input: vweb_name_0 }
357 management_network_name: onap_private_network
358 multivim_config: { get_input: multivim_config }
360 metadata: {vnf_id: { get_input: vnf_id }, vf_module_id: { get_input: vf_module_id }}
361 userdata: { concat: [
363 "mkdir /opt/config\n",
364 "echo ",{get_input: vweb_private_ip_1}," > /opt/config/oam_ipaddr.txt\n",
365 "echo ",{get_input: vweb_private_ip_0}," > /opt/config/cpe_public_ipaddr.txt\n",
366 "echo ",{get_input: onap_private_net_cidr}," > /opt/config/oam_cidr.txt\n",
367 "echo ",{get_input: cpe_public_net_cidr}," > /opt/config/cpe_public_net_cidr.txt\n",
368 "echo ",{get_input: repo_url_blob}," > /opt/config/repo_url_blob.txt\n",
369 "echo ",{get_input: repo_url_artifacts}," > /opt/config/repo_url_artifacts.txt\n",
370 "echo ",{get_input: demo_artifacts_version}," > /opt/config/demo_artifacts_version.txt\n",
371 "echo ",{get_input: install_script_version}," > /opt/config/install_script_version.txt\n",
372 "echo ",{get_input: cloud_env}," > /opt/config/cloud_env.txt\n",
373 "curl -k ",{get_input: repo_url_blob},"/org.onap.demo/vnfs/vcpe/",{get_input: install_script_version},"/v_web_install.sh -o /opt/v_web_install.sh\n",
375 "chmod +x v_web_install.sh\n",
376 "./v_web_install.sh\n"
380 - key_pair: my_keypair
381 - port: vweb_private_0_port
382 - port: vweb_private_1_port