From e3c21ddc5076521fb35aa757a3507ef38ff1d0b5 Mon Sep 17 00:00:00 2001 From: "stark, steven" Date: Fri, 19 Jul 2019 07:54:54 -0700 Subject: [PATCH] [DEMO] Making vFW_NextGen compliant with heat guidelines NOTE: Did not comment out environment file parameters Changed unprotected_private network_role to private1 Changed protected_private network_role to private2 Issue-ID: VVP-232 Signed-off-by: stark, steven Change-Id: I30feb6bcae916d2ed2b17d8cb37dd7828a79815b --- heat/vFW_NextGen/templates/base_template.env | 12 ++-- heat/vFW_NextGen/templates/base_template.yaml | 90 ++++++++++++++++----------- heat/vFW_NextGen/templates/vfw.env | 31 ++++----- heat/vFW_NextGen/templates/vfw.yaml | 85 +++++++++++++------------ heat/vFW_NextGen/templates/vpg.env | 24 ++++--- heat/vFW_NextGen/templates/vpg.yaml | 72 +++++++++++---------- heat/vFW_NextGen/templates/vsn.env | 24 ++++--- heat/vFW_NextGen/templates/vsn.yaml | 76 +++++++++++----------- 8 files changed, 210 insertions(+), 204 deletions(-) diff --git a/heat/vFW_NextGen/templates/base_template.env b/heat/vFW_NextGen/templates/base_template.env index 960c1b29..0a69e08d 100644 --- a/heat/vFW_NextGen/templates/base_template.env +++ b/heat/vFW_NextGen/templates/base_template.env @@ -1,9 +1,5 @@ parameters: - unprotected_private_net_id: zdfw1fwl01_unprotected - unprotected_private_subnet_id: zdfw1fwl01_unprotected_sub - unprotected_private_net_cidr: 192.168.10.0/24 - protected_private_net_id: zdfw1fwl01_protected - protected_private_subnet_id: zdfw1fwl01_protected_sub - protected_private_net_cidr: 192.168.20.0/24 - key_name: vfw_key - pub_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDQXYJYYi3/OUZXUiCYWdtc7K0m5C0dJKVxPG0eI8EWZrEHYdfYe6WoTSDJCww+1qlBSpA5ac/Ba4Wn9vh+lR1vtUKkyIC/nrYb90ReUd385Glkgzrfh5HdR5y5S2cL/Frh86lAn9r6b3iWTJD8wBwXFyoe1S2nMTOIuG4RPNvfmyCTYVh8XTCCE8HPvh3xv2r4egawG1P4Q4UDwk+hDBXThY2KS8M5/8EMyxHV0ImpLbpYCTBA6KYDIRtqmgS6iKyy8v2D1aSY5mc9J0T5t9S2Gv+VZQNWQDDKNFnxqYaAo1uEoq/i1q63XC5AD3ckXb2VT6dp23BQMdDfbHyUWfJN \ No newline at end of file + int_private1_net_cidr: 192.168.10.0/24 + int_private2_net_cidr: 192.168.20.0/24 + pub_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDQXYJYYi3/OUZXUiCYWdtc7K0m5C0dJKVxPG0eI8EWZrEHYdfYe6WoTSDJCww+1qlBSpA5ac/Ba4Wn9vh+lR1vtUKkyIC/nrYb90ReUd385Glkgzrfh5HdR5y5S2cL/Frh86lAn9r6b3iWTJD8wBwXFyoe1S2nMTOIuG4RPNvfmyCTYVh8XTCCE8HPvh3xv2r4egawG1P4Q4UDwk+hDBXThY2KS8M5/8EMyxHV0ImpLbpYCTBA6KYDIRtqmgS6iKyy8v2D1aSY5mc9J0T5t9S2Gv+VZQNWQDDKNFnxqYaAo1uEoq/i1q63XC5AD3ckXb2VT6dp23BQMdDfbHyUWfJN + vnf_name: vFW_NextGen \ No newline at end of file diff --git a/heat/vFW_NextGen/templates/base_template.yaml b/heat/vFW_NextGen/templates/base_template.yaml index 9184fdaf..47dce5e7 100644 --- a/heat/vFW_NextGen/templates/base_template.yaml +++ b/heat/vFW_NextGen/templates/base_template.yaml @@ -33,39 +33,21 @@ description: Heat template that deploys a private network for ONAP VNFs ############## parameters: - unprotected_private_net_id: - type: string - label: Unprotected private network name or ID - description: Private network that connects vPacketGenerator with vFirewall - unprotected_private_subnet_id: - type: string - label: Unprotected private subnetwork name or ID - description: Private subnetwork of the protected network - unprotected_private_net_cidr: + int_private1_net_cidr: type: string label: Unprotected private network CIDR description: The CIDR of the unprotected private network - protected_private_net_id: - type: string - label: Protected private network name or ID - description: Private network that connects vFirewall with vSink - protected_private_subnet_id: - type: string - label: Protected private subnetwork name or ID - description: Private subnetwork of the unprotected network - protected_private_net_cidr: + int_private2_net_cidr: type: string label: Protected private network CIDR description: The CIDR of the protected private network - key_name: - type: string - label: Key pair name - description: Public/Private key pair name pub_key: type: string label: Public key description: Public key to be installed on the compute instance - + vnf_name: + type: string + description: VNF_NAME ############# # # @@ -77,30 +59,66 @@ resources: my_keypair: type: OS::Nova::KeyPair properties: - name: { get_param: key_name } + name: + str_replace: + template: vnfname_key_name + params: + vnfname: { get_param: vnf_name } public_key: { get_param: pub_key } save_private_key: false - unprotected_private_network: + int_private1_network: type: OS::Neutron::Net properties: - name: { get_param: unprotected_private_net_id } + name: + str_replace: + template: vnfname_int_private1_net + params: + vnfname: { get_param: vnf_name } - unprotected_private_subnet: + int_private1_subnet: type: OS::Neutron::Subnet properties: - name: { get_param: unprotected_private_subnet_id } - network_id: { get_resource: unprotected_private_network } - cidr: { get_param: unprotected_private_net_cidr } + name: + str_replace: + template: vnfname_int_private1_subnet + params: + vnfname: { get_param: vnf_name } + network: { get_resource: int_private1_network } + cidr: { get_param: int_private1_net_cidr } - protected_private_network: + int_private2_network: type: OS::Neutron::Net properties: - name: { get_param: protected_private_net_id } + name: + str_replace: + template: vnfname_int_private2_net + params: + vnfname: { get_param: vnf_name } - protected_private_subnet: + int_private2_subnet: type: OS::Neutron::Subnet properties: - name: { get_param: protected_private_subnet_id } - network_id: { get_resource: protected_private_network } - cidr: { get_param: protected_private_net_cidr } \ No newline at end of file + name: + str_replace: + template: vnfname_int_private2_subnet + params: + vnfname: { get_param: vnf_name } + network: { get_resource: int_private2_network } + cidr: { get_param: int_private2_net_cidr } + +outputs: + int_private1_net_id: + value: { get_resource: int_private1_network } + int_private1_subnet_id: + value: { get_resource: int_private1_subnet } + int_private2_net_id: + value: { get_resource: int_private2_network } + int_private2_subnet_id: + value: { get_resource: int_private2_subnet } + int_private2_net_cidr: + value: { get_param: int_private2_net_cidr } + int_private1_net_cidr: + value: { get_param: int_private1_net_cidr } + key_name: + value: { get_resource: my_keypair } diff --git a/heat/vFW_NextGen/templates/vfw.env b/heat/vFW_NextGen/templates/vfw.env index 25484ec7..0a931c52 100644 --- a/heat/vFW_NextGen/templates/vfw.env +++ b/heat/vFW_NextGen/templates/vfw.env @@ -1,22 +1,26 @@ parameters: - image_name: PUT THE VM IMAGE NAME HERE (UBUNTU 1404) - flavor_name: PUT THE VM FLAVOR NAME HERE (m1.medium suggested) + vfw_image_name: PUT THE VM IMAGE NAME HERE (UBUNTU 1404) + vfw_flavor_name: PUT THE VM FLAVOR NAME HERE (m1.medium suggested) public_net_id: PUT THE PUBLIC NETWORK ID HERE - unprotected_private_net_id: zdfw1fwl01_unprotected - unprotected_private_subnet_id: zdfw1fwl01_unprotected_sub - unprotected_private_net_cidr: 192.168.10.0/24 - protected_private_net_id: zdfw1fwl01_protected - protected_private_subnet_id: zdfw1fwl01_protected_sub - protected_private_net_cidr: 192.168.20.0/24 + int_private1_net_id: zdfw1fwl01_unprotected + int_private1_subnet_id: zdfw1fwl01_unprotected_sub + int_private1_net_cidr: 192.168.10.0/24 + int_private2_net_id: zdfw1fwl01_protected + int_private2_subnet_id: zdfw1fwl01_protected_sub + int_private2_net_cidr: 192.168.20.0/24 onap_private_net_id: PUT THE ONAP PRIVATE NETWORK NAME HERE onap_private_subnet_id: PUT THE ONAP PRIVATE NETWORK NAME HERE onap_private_net_cidr: 10.0.0.0/16 - vfw_private_ip_0: 192.168.10.100 - vfw_private_ip_1: 192.168.20.100 - vfw_private_ip_2: 10.0.100.1 - vpg_private_ip_0: 192.168.10.200 + vfw_int_private1_ip_0: 192.168.10.100 + vfw_int_private2_ip_0: 192.168.20.100 + vfw_onap_private_ip_0: 10.0.100.1 + + #vpg_private_ip_0: 192.168.10.200 + vfw_int_private2_floating_ip: 192.168.10.200 + vfw_name_0: zdfw1fwl01fwl01 vnf_id: vFirewall_demo_app + vnf_name: vFW_NextGen vf_module_id: vFirewallCL dcae_collector_ip: 10.0.4.1 dcae_collector_port: 30235 @@ -25,6 +29,3 @@ parameters: key_name: vfw_key cloud_env: PUT openstack OR rackspace HERE sec_group: PUT THE ONAP SECURITY GROUP HERE - sdnc_model_name: vFW_spinup - sdnc_model_version: 1.0.0 - sdnc_artifact_name: vFW_vNF_Artifact diff --git a/heat/vFW_NextGen/templates/vfw.yaml b/heat/vFW_NextGen/templates/vfw.yaml index 61871df2..8e3e1bab 100644 --- a/heat/vFW_NextGen/templates/vfw.yaml +++ b/heat/vFW_NextGen/templates/vfw.yaml @@ -33,11 +33,11 @@ description: Heat template that deploys vFirewall for ONAP ############## parameters: - image_name: + vfw_image_name: type: string label: Image name or ID description: Image to be used for compute instance - flavor_name: + vfw_flavor_name: type: string label: Flavor description: Type of instance (flavor) to be used @@ -45,27 +45,27 @@ parameters: type: string label: Public network name or ID description: Public network that enables remote connection to VNF - unprotected_private_net_id: + int_private1_net_id: type: string label: Unprotected private network name or ID description: Private network that connects vPacketGenerator with vFirewall - unprotected_private_subnet_id: + int_private1_subnet_id: type: string label: Unprotected private subnetwork name or ID description: Private subnetwork of the protected network - unprotected_private_net_cidr: + int_private1_net_cidr: type: string label: Unprotected private network CIDR description: The CIDR of the unprotected private network - protected_private_net_id: + int_private2_net_id: type: string label: Protected private network name or ID description: Private network that connects vFirewall with vSink - protected_private_subnet_id: + int_private2_subnet_id: type: string label: Protected private subnetwork name or ID description: Private subnetwork of the unprotected network - protected_private_net_cidr: + int_private2_net_cidr: type: string label: Protected private network CIDR description: The CIDR of the protected private network @@ -81,19 +81,19 @@ parameters: type: string label: ONAP private network CIDR description: The CIDR of the protected private network - vfw_private_ip_0: + vfw_int_private1_ip_0: type: string label: vFirewall private IP address towards the unprotected network description: Private IP address that is assigned to the vFirewall to communicate with the vPacketGenerator - vfw_private_ip_1: + vfw_int_private2_ip_0: type: string label: vFirewall private IP address towards the protected network description: Private IP address that is assigned to the vFirewall to communicate with the vSink - vfw_private_ip_2: + vfw_onap_private_ip_0: type: string label: vFirewall private IP address towards the ONAP management network description: Private IP address that is assigned to the vFirewall to communicate with ONAP components - vpg_private_ip_0: + vfw_int_private2_floating_ip: type: string label: vPacketGenerator private IP address towards the unprotected network description: Private IP address that is assigned to the vPacketGenerator to communicate with the vFirewall @@ -105,6 +105,10 @@ parameters: type: string label: VNF ID description: The VNF ID is provided by ONAP + vnf_name: + type: string + label: VNF ID + description: The VNF ID is provided by ONAP vf_module_id: type: string label: VF Module ID @@ -132,7 +136,7 @@ parameters: nexus_artifact_repo: type: string description: Root URL for the Nexus repository for Maven artifacts. - default: "https://nexus.onap.org" + # default: "https://nexus.onap.org" cloud_env: type: string label: Cloud environment @@ -140,15 +144,6 @@ parameters: sec_group: type: string description: ONAP Security Group - sdnc_model_name: - type: string - description: SDNC Model Name metatada - sdnc_model_version: - type: string - description: SDNC Model Version metatada - sdnc_artifact_name: - type: string - description: SDNC Artifact Name metatada ############# @@ -160,44 +155,48 @@ parameters: resources: # Virtual Firewall instantiation - vfw_private_0_port: + vfw_0_int_private1_port_0: type: OS::Neutron::Port properties: - network: { get_param: unprotected_private_net_id } - fixed_ips: [{"subnet": { get_param: unprotected_private_subnet_id }, "ip_address": { get_param: vfw_private_ip_0 }}] + network: { get_param: int_private1_net_id } + fixed_ips: [{"subnet": { get_param: int_private1_subnet_id }, "ip_address": { get_param: vfw_int_private1_ip_0 }}] security_groups: - { get_param: sec_group } - vfw_private_1_port: + vfw_0_int_private2_port_0: type: OS::Neutron::Port properties: - allowed_address_pairs: [{ "ip_address": { get_param: vpg_private_ip_0 }}] - network: { get_param: protected_private_net_id } - fixed_ips: [{"subnet": { get_param: protected_private_subnet_id }, "ip_address": { get_param: vfw_private_ip_1 }}] + ### NOTE: THIS USED TO BE allowed_address_pairs: [{ "ip_address": { get_param: vpg_private_ip_0 }}] + allowed_address_pairs: [{ "ip_address": { get_param: vfw_int_private2_floating_ip }}] + network: { get_param: int_private2_net_id } + fixed_ips: [{"subnet": { get_param: int_private2_subnet_id }, "ip_address": { get_param: vfw_int_private2_ip_0 }}] security_groups: - { get_param: sec_group } - vfw_private_2_port: + vfw_0_onap_private_port_0: type: OS::Neutron::Port properties: network: { get_param: onap_private_net_id } - fixed_ips: [{"subnet": { get_param: onap_private_subnet_id }, "ip_address": { get_param: vfw_private_ip_2 }}] + fixed_ips: [{"subnet": { get_param: onap_private_subnet_id }, "ip_address": { get_param: vfw_onap_private_ip_0 }}] security_groups: - { get_param: sec_group } - vfw_0: + vfw_server_0: type: OS::Nova::Server properties: - image: { get_param: image_name } - flavor: { get_param: flavor_name } + image: { get_param: vfw_image_name } + flavor: { get_param: vfw_flavor_name } name: { get_param: vfw_name_0 } key_name: { get_param: key_name } networks: - network: { get_param: public_net_id } - - port: { get_resource: vfw_private_0_port } - - port: { get_resource: vfw_private_1_port } - - port: { get_resource: vfw_private_2_port } - metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }, sdnc_model_name: { get_param: sdnc_model_name }, sdnc_model_version: { get_param: sdnc_model_version }, sdnc_artifact_name: { get_param: sdnc_artifact_name }} + - port: { get_resource: vfw_0_int_private1_port_0 } + - port: { get_resource: vfw_0_int_private2_port_0 } + - port: { get_resource: vfw_0_onap_private_port_0 } + metadata: + vnf_name: { get_param: vnf_name } + vnf_id: { get_param: vnf_id } + vf_module_id: { get_param: vf_module_id } user_data_format: RAW user_data: str_replace: @@ -206,11 +205,11 @@ resources: __dcae_collector_port__ : { get_param: dcae_collector_port } __demo_artifacts_version__ : { get_param: demo_artifacts_version } __install_script_version__ : { get_param: install_script_version } - __vfw_private_ip_0__ : { get_param: vfw_private_ip_0 } - __vfw_private_ip_1__ : { get_param: vfw_private_ip_1 } - __vfw_private_ip_2__ : { get_param: vfw_private_ip_2 } - __unprotected_private_net_cidr__ : { get_param: unprotected_private_net_cidr } - __protected_private_net_cidr__ : { get_param: protected_private_net_cidr } + __vfw_private_ip_0__ : { get_param: vfw_int_private1_ip_0 } + __vfw_private_ip_1__ : { get_param: vfw_int_private2_ip_0 } + __vfw_private_ip_2__ : { get_param: vfw_onap_private_ip_0 } + __unprotected_private_net_cidr__ : { get_param: int_private1_net_cidr } + __protected_private_net_cidr__ : { get_param: int_private2_net_cidr } __onap_private_net_cidr__ : { get_param: onap_private_net_cidr } __cloud_env__ : { get_param: cloud_env } __nexus_artifact_repo__: { get_param: nexus_artifact_repo } diff --git a/heat/vFW_NextGen/templates/vpg.env b/heat/vFW_NextGen/templates/vpg.env index 50b9219a..b484f5ae 100644 --- a/heat/vFW_NextGen/templates/vpg.env +++ b/heat/vFW_NextGen/templates/vpg.env @@ -1,19 +1,20 @@ parameters: - image_name: PUT THE VM IMAGE NAME HERE (UBUNTU 1404) - flavor_name: PUT THE VM FLAVOR NAME HERE (m1.medium suggested) + vpg_image_name: PUT THE VM IMAGE NAME HERE (UBUNTU 1404) + vpg_flavor_name: PUT THE VM FLAVOR NAME HERE (m1.medium suggested) public_net_id: PUT THE PUBLIC NETWORK ID HERE - unprotected_private_net_id: zdfw1fwl01_unprotected - unprotected_private_subnet_id: zdfw1fwl01_unprotected_sub - unprotected_private_net_cidr: 192.168.10.0/24 + int_private1_net_id: zdfw1fwl01_unprotected + int_private1_subnet_id: zdfw1fwl01_unprotected_sub + int_private1_net_cidr: 192.168.10.0/24 onap_private_net_id: PUT THE ONAP PRIVATE NETWORK NAME HERE onap_private_subnet_id: PUT THE ONAP PRIVATE NETWORK NAME HERE onap_private_net_cidr: 10.0.0.0/16 - protected_private_net_cidr: 192.168.20.0/24 - vfw_private_ip_0: 192.168.10.100 - vpg_private_ip_0: 192.168.10.200 - vpg_private_ip_1: 10.0.100.2 - vsn_private_ip_0: 192.168.20.250 + int_private2_net_cidr: 192.168.20.0/24 + vfw_int_private1_ip_0: 192.168.10.100 + vpg_int_private1_ip_0: 192.168.10.200 + vpg_onap_private_ip_0: 10.0.100.2 + vsn_int_private2_ip_0: 192.168.20.250 vpg_name_0: zdfw1fwl01pgn01 + vnf_name: vFW_NextGen vnf_id: vPacketGen_demo_app vf_module_id: vTrafficPNG demo_artifacts_version: 1.5.0-SNAPSHOT @@ -21,6 +22,3 @@ parameters: key_name: vfw_key cloud_env: PUT openstack OR rackspace HERE sec_group: PUT THE ONAP SECURITY GROUP HERE - sdnc_model_name: vFW_spinup - sdnc_model_version: 1.0.0 - sdnc_artifact_name: vFW_vNF_Artifact \ No newline at end of file diff --git a/heat/vFW_NextGen/templates/vpg.yaml b/heat/vFW_NextGen/templates/vpg.yaml index b6ef5346..6555aa7a 100644 --- a/heat/vFW_NextGen/templates/vpg.yaml +++ b/heat/vFW_NextGen/templates/vpg.yaml @@ -33,11 +33,11 @@ description: Heat template that deploys the vFirewall Traffic Generator demo app ############## parameters: - image_name: + vpg_image_name: type: string label: Image name or ID description: Image to be used for compute instance - flavor_name: + vpg_flavor_name: type: string label: Flavor description: Type of instance (flavor) to be used @@ -45,19 +45,19 @@ parameters: type: string label: Public network name or ID description: Public network that enables remote connection to VNF - unprotected_private_net_id: + int_private1_net_id: type: string label: Unprotected private network name or ID description: Private network that connects vPacketGenerator with vFirewall - unprotected_private_subnet_id: + int_private1_subnet_id: type: string label: Unprotected private sub-network name or ID description: Private subnetwork for the unprotected network - unprotected_private_net_cidr: + int_private1_net_cidr: type: string label: Unprotected private network CIDR description: The CIDR of the unprotected private network - protected_private_net_cidr: + int_private2_net_cidr: type: string label: Protected private network CIDR description: The CIDR of the protected private network @@ -73,19 +73,19 @@ parameters: type: string label: ONAP private network CIDR description: The CIDR of the protected private network - vfw_private_ip_0: + vfw_int_private1_ip_0: type: string label: vFirewall private IP address towards the unprotected network description: Private IP address that is assigned to the vFirewall to communicate with the vPacketGenerator - vsn_private_ip_0: + vsn_int_private2_ip_0: type: string label: vSink private IP address towards the protected network description: Private IP address that is assigned to the vSink to communicate with the vFirewall - vpg_private_ip_0: + vpg_int_private1_ip_0: type: string label: vPacketGenerator private IP address towards the unprotected network description: Private IP address that is assigned to the vPacketGenerator to communicate with the vFirewall - vpg_private_ip_1: + vpg_onap_private_ip_0: type: string label: vPacketGenerator private IP address towards the ONAP management network description: Private IP address that is assigned to the vPacketGenerator to communicate with ONAP components @@ -93,6 +93,10 @@ parameters: type: string label: vPacketGenerator name description: Name of the vPacketGenerator + vnf_name: + type: string + label: VNF NAME + description: The VNF NAME is provided by ONAP vnf_id: type: string label: VNF ID @@ -116,7 +120,7 @@ parameters: nexus_artifact_repo: type: string description: Root URL for the Nexus repository for Maven artifacts. - default: "https://nexus.onap.org" + # default: "https://nexus.onap.org" cloud_env: type: string label: Cloud environment @@ -124,15 +128,6 @@ parameters: sec_group: type: string description: ONAP Security Group - sdnc_model_name: - type: string - description: SDNC Model Name metatada - sdnc_model_version: - type: string - description: SDNC Model Version metatada - sdnc_artifact_name: - type: string - description: SDNC Artifact Name metatada ############# @@ -144,46 +139,49 @@ parameters: resources: # Virtual Packet Generator instantiation - vpg_private_0_port: + vpg_0_int_private1_port_0: type: OS::Neutron::Port properties: - network: { get_param: unprotected_private_net_id } - fixed_ips: [{"subnet": { get_param: unprotected_private_subnet_id }, "ip_address": { get_param: vpg_private_ip_0 }}] + network: { get_param: int_private1_net_id } + fixed_ips: [{"subnet": { get_param: int_private1_subnet_id }, "ip_address": { get_param: vpg_int_private1_ip_0 }}] security_groups: - { get_param: sec_group } - vpg_private_1_port: + vpg_0_onap_private_port_0: type: OS::Neutron::Port properties: network: { get_param: onap_private_net_id } - fixed_ips: [{"subnet": { get_param: onap_private_subnet_id }, "ip_address": { get_param: vpg_private_ip_1 }}] + fixed_ips: [{"subnet": { get_param: onap_private_subnet_id }, "ip_address": { get_param: vpg_onap_private_ip_0 }}] security_groups: - { get_param: sec_group } - vpg_0: + vpg_server_0: type: OS::Nova::Server properties: - image: { get_param: image_name } - flavor: { get_param: flavor_name } + image: { get_param: vpg_image_name } + flavor: { get_param: vpg_flavor_name } name: { get_param: vpg_name_0 } key_name: { get_param: key_name } networks: - network: { get_param: public_net_id } - - port: { get_resource: vpg_private_0_port } - - port: { get_resource: vpg_private_1_port } - metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }, sdnc_model_name: { get_param: sdnc_model_name }, sdnc_model_version: { get_param: sdnc_model_version }, sdnc_artifact_name: { get_param: sdnc_artifact_name }} + - port: { get_resource: vpg_0_int_private1_port_0 } + - port: { get_resource: vpg_0_onap_private_port_0 } + metadata: + vnf_name: { get_param: vnf_name } + vnf_id: { get_param: vnf_id } + vf_module_id: { get_param: vf_module_id } user_data_format: RAW user_data: str_replace: params: - __fw_ipaddr__: { get_param: vfw_private_ip_0 } - __protected_net_cidr__: { get_param: protected_private_net_cidr } - __sink_ipaddr__: { get_param: vsn_private_ip_0 } + __fw_ipaddr__: { get_param: vfw_int_private1_ip_0 } + __protected_net_cidr__: { get_param: int_private2_net_cidr } + __sink_ipaddr__: { get_param: vsn_int_private2_ip_0 } __demo_artifacts_version__ : { get_param: demo_artifacts_version } __install_script_version__ : { get_param: install_script_version } - __vpg_private_ip_0__ : { get_param: vpg_private_ip_0 } - __vpg_private_ip_1__ : { get_param: vpg_private_ip_1 } - __unprotected_private_net_cidr__ : { get_param: unprotected_private_net_cidr } + __vpg_private_ip_0__ : { get_param: vpg_int_private1_ip_0 } + __vpg_private_ip_1__ : { get_param: vpg_onap_private_ip_0 } + __unprotected_private_net_cidr__ : { get_param: int_private1_net_cidr } __onap_private_net_cidr__ : { get_param: onap_private_net_cidr } __cloud_env__ : { get_param: cloud_env } __nexus_artifact_repo__: { get_param: nexus_artifact_repo } diff --git a/heat/vFW_NextGen/templates/vsn.env b/heat/vFW_NextGen/templates/vsn.env index 04e7e7f3..e2a20514 100644 --- a/heat/vFW_NextGen/templates/vsn.env +++ b/heat/vFW_NextGen/templates/vsn.env @@ -1,25 +1,23 @@ parameters: - image_name: PUT THE VM IMAGE NAME HERE (UBUNTU 1404) - flavor_name: PUT THE VM FLAVOR NAME HERE (m1.medium suggested) + vsn_image_name: PUT THE VM IMAGE NAME HERE (UBUNTU 1404) + vsn_flavor_name: PUT THE VM FLAVOR NAME HERE (m1.medium suggested) public_net_id: PUT THE PUBLIC NETWORK ID HERE - unprotected_private_net_cidr: 192.168.10.0/24 - protected_private_net_id: zdfw1fwl01_protected - protected_private_subnet_id: zdfw1fwl01_protected_sub - protected_private_net_cidr: 192.168.20.0/24 + int_private1_net_cidr: 192.168.10.0/24 + int_private2_net_id: zdfw1fwl01_protected + int_private2_subnet_id: zdfw1fwl01_protected_sub + int_private2_net_cidr: 192.168.20.0/24 onap_private_net_id: PUT THE ONAP PRIVATE NETWORK NAME HERE onap_private_subnet_id: PUT THE ONAP PRIVATE NETWORK NAME HERE onap_private_net_cidr: 10.0.0.0/16 - vfw_private_ip_1: 192.168.20.100 - vsn_private_ip_0: 192.168.20.250 - vsn_private_ip_1: 10.0.100.3 + vfw_int_private2_ip_0: 192.168.20.100 + vsn_int_private2_ip_0: 192.168.20.250 + vsn_onap_private_ip_0: 10.0.100.3 vsn_name_0: zdfw1fwl01snk01 vnf_id: vSink_demo_app vf_module_id: vFirewallCL - demo_artifacts_version: 1.5.0-SNAPSHOT + vnf_name: vFW_NextGen + #demo_artifacts_version: 1.5.0-SNAPSHOT install_script_version: 1.5.0-SNAPSHOT key_name: vfw_key cloud_env: PUT openstack OR rackspace HERE sec_group: PUT THE ONAP SECURITY GROUP HERE - sdnc_model_name: vFW_spinup - sdnc_model_version: 1.0.0 - sdnc_artifact_name: vFW_vNF_Artifact \ No newline at end of file diff --git a/heat/vFW_NextGen/templates/vsn.yaml b/heat/vFW_NextGen/templates/vsn.yaml index 88bf267c..af12ec32 100644 --- a/heat/vFW_NextGen/templates/vsn.yaml +++ b/heat/vFW_NextGen/templates/vsn.yaml @@ -33,11 +33,11 @@ description: Heat template that deploys vSink for ONAP ############## parameters: - image_name: + vsn_image_name: type: string label: Image name or ID description: Image to be used for compute instance - flavor_name: + vsn_flavor_name: type: string label: Flavor description: Type of instance (flavor) to be used @@ -45,19 +45,19 @@ parameters: type: string label: Public network name or ID description: Public network that enables remote connection to VNF - unprotected_private_net_cidr: + int_private1_net_cidr: type: string label: Unprotected private network CIDR description: The CIDR of the unprotected private network - protected_private_net_id: + int_private2_net_id: type: string label: Protected private network name or ID description: Private network that connects vFirewall with vSink - protected_private_subnet_id: + int_private2_subnet_id: type: string label: Protected private subnetwork name or ID description: Private subnetwork of the unprotected network - protected_private_net_cidr: + int_private2_net_cidr: type: string label: Protected private network CIDR description: The CIDR of the protected private network @@ -73,15 +73,15 @@ parameters: type: string label: ONAP private network CIDR description: The CIDR of the protected private network - vfw_private_ip_1: + vfw_int_private2_ip_0: type: string label: vFirewall private IP address towards the protected network description: Private IP address that is assigned to the vFirewall to communicate with the vSink - vsn_private_ip_0: + vsn_int_private2_ip_0: type: string label: vSink private IP address towards the protected network description: Private IP address that is assigned to the vSink to communicate with the vFirewall - vsn_private_ip_1: + vsn_onap_private_ip_0: type: string label: vSink private IP address towards the ONAP management network description: Private IP address that is assigned to the vSink to communicate with ONAP components @@ -93,6 +93,10 @@ parameters: type: string label: VNF ID description: The VNF ID is provided by ONAP + vnf_name: + type: string + label: VNF NAME + description: The VNF NAME is provided by ONAP vf_module_id: type: string label: VF Module ID @@ -105,14 +109,14 @@ parameters: type: string label: Installation script version number description: Version number of the scripts that install the vFW demo app - demo_artifacts_version: - type: string - label: Artifacts version used in demo vnfs - description: Artifacts (jar, tar.gz) version used in demo vnfs + #demo_artifacts_version: + # type: string + # label: Artifacts version used in demo vnfs + # description: Artifacts (jar, tar.gz) version used in demo vnfs nexus_artifact_repo: type: string description: Root URL for the Nexus repository for Maven artifacts. - default: "https://nexus.onap.org" + # default: "https://nexus.onap.org" cloud_env: type: string label: Cloud environment @@ -120,15 +124,6 @@ parameters: sec_group: type: string description: ONAP Security Group - sdnc_model_name: - type: string - description: SDNC Model Name metatada - sdnc_model_version: - type: string - description: SDNC Model Version metatada - sdnc_artifact_name: - type: string - description: SDNC Artifact Name metatada ############# @@ -140,44 +135,47 @@ parameters: resources: # Virtual Sink instantiation - vsn_private_0_port: + vsn_0_int_private2_port_0: type: OS::Neutron::Port properties: - network: { get_param: protected_private_net_id } - fixed_ips: [{"subnet": { get_param: protected_private_subnet_id }, "ip_address": { get_param: vsn_private_ip_0 }}] + network: { get_param: int_private2_net_id } + fixed_ips: [{"subnet": { get_param: int_private2_subnet_id }, "ip_address": { get_param: vsn_int_private2_ip_0 }}] security_groups: - { get_param: sec_group } - vsn_private_1_port: + vsn_0_onap_private_port_0: type: OS::Neutron::Port properties: network: { get_param: onap_private_net_id } - fixed_ips: [{"subnet": { get_param: onap_private_subnet_id }, "ip_address": { get_param: vsn_private_ip_1 }}] + fixed_ips: [{"subnet": { get_param: onap_private_subnet_id }, "ip_address": { get_param: vsn_onap_private_ip_0 }}] security_groups: - { get_param: sec_group } - vsn_0: + vsn_server_0: type: OS::Nova::Server properties: - image: { get_param: image_name } - flavor: { get_param: flavor_name } + image: { get_param: vsn_image_name } + flavor: { get_param: vsn_flavor_name } name: { get_param: vsn_name_0 } key_name: { get_param: key_name } networks: - network: { get_param: public_net_id } - - port: { get_resource: vsn_private_0_port } - - port: { get_resource: vsn_private_1_port } - metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }, sdnc_model_name: { get_param: sdnc_model_name }, sdnc_model_version: { get_param: sdnc_model_version }, sdnc_artifact_name: { get_param: sdnc_artifact_name }} + - port: { get_resource: vsn_0_int_private2_port_0 } + - port: { get_resource: vsn_0_onap_private_port_0 } + metadata: + vnf_name: { get_param: vnf_name } + vnf_id: { get_param: vnf_id } + vf_module_id: { get_param: vf_module_id } user_data_format: RAW user_data: str_replace: params: - __protected_net_gw__: { get_param: vfw_private_ip_1 } - __unprotected_net__: { get_param: unprotected_private_net_cidr } + __protected_net_gw__: { get_param: vfw_int_private2_ip_0 } + __unprotected_net__: { get_param: int_private1_net_cidr } __install_script_version__ : { get_param: install_script_version } - __vsn_private_ip_0__ : { get_param: vsn_private_ip_0 } - __vsn_private_ip_1__ : { get_param: vsn_private_ip_1 } - __protected_private_net_cidr__ : { get_param: protected_private_net_cidr } + __vsn_private_ip_0__ : { get_param: vsn_int_private2_ip_0 } + __vsn_private_ip_1__ : { get_param: vsn_onap_private_ip_0 } + __protected_private_net_cidr__ : { get_param: int_private2_net_cidr } __onap_private_net_cidr__ : { get_param: onap_private_net_cidr } __cloud_env__ : { get_param: cloud_env } __nexus_artifact_repo__: { get_param: nexus_artifact_repo } -- 2.16.6