diff options
-rw-r--r-- | heat/vFWCL/vFWSNK/base_vfw.env | 50 | ||||
-rw-r--r-- | heat/vFWCL/vFWSNK/base_vfw.yaml | 153 | ||||
-rw-r--r-- | heat/vFWCL/vPKG/base_vpkg.env | 36 | ||||
-rw-r--r-- | heat/vFWCL/vPKG/base_vpkg.yaml | 44 |
4 files changed, 184 insertions, 99 deletions
diff --git a/heat/vFWCL/vFWSNK/base_vfw.env b/heat/vFWCL/vFWSNK/base_vfw.env index c0a53d1f..8b89f2c2 100644 --- a/heat/vFWCL/vFWSNK/base_vfw.env +++ b/heat/vFWCL/vFWSNK/base_vfw.env @@ -1,26 +1,47 @@ parameters: - image_name: PUT THE VM IMAGE NAME HERE (UBUNTU 1404) - flavor_name: PUT THE VM FLAVOR NAME HERE (m1.medium suggested) + + # VM_TYPE: vfw + vfw_image_name: PUT THE VM IMAGE NAME HERE (UBUNTU 1404) + vfw_flavor_name: PUT THE VM FLAVOR NAME HERE (m1.medium suggested) + vfw_int_unprotected_private_ip_0: 192.168.10.100 + vfw_int_protected_private_ip_0: 192.168.20.100 + vfw_onap_private_ip_0: 10.0.100.1 + # vpg_private_ip_0: 192.168.10.200 + # this is the private ip 0 for vpg + vfw_int_protected_private_floating_ip: 192.168.10.200 + vfw_name_0: zdfw1fwl01fwl01 + + # VM_TYPE: vsn + vsn_image_name: PUT THE VM IMAGE NAME HERE (UBUNTU 1404) + vsn_flavor_name: PUT THE VM FLAVOR NAME HERE (m1.medium suggested) + vsn_int_protected_private_ip_0: 192.168.20.250 + vsn_onap_private_ip_0: 10.0.100.3 + vsn_name_0: zdfw1fwl01snk01 + + # NETWORK_ROLE: public public_net_id: PUT THE PUBLIC NETWORK ID HERE - unprotected_private_net_id: zdfw1fwl01_unprotected - unprotected_private_subnet_id: zdfw1fwl01_unprotected_sub + + # NETWORK_ROLE: unprotected_private + int_unprotected_private_net_id: zdfw1fwl01_unprotected + int_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 + + # NETWORK_ROLE: protected_private + int_protected_private_net_id: zdfw1fwl01_protected + int_protected_private_subnet_id: zdfw1fwl01_protected_sub protected_private_net_cidr: 192.168.20.0/24 + + # NETWORK_ROLE: onap_private 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 - vsn_private_ip_0: 192.168.20.250 - vsn_private_ip_1: 10.0.100.3 - vfw_name_0: zdfw1fwl01fwl01 - vsn_name_0: zdfw1fwl01snk01 + + # METADATA + vnf_name: vFWSNK vnf_id: vFirewall_demo_app vf_module_id: vFirewallCL + + # APP/USER_DATA dcae_collector_ip: 10.0.4.1 dcae_collector_port: 8081 demo_artifacts_version: 1.3.0-SNAPSHOT @@ -29,3 +50,4 @@ parameters: pub_key: PUT YOUR KEY HERE cloud_env: PUT openstack OR rackspace HERE sec_group: PUT THE ONAP SECURITY GROUP HERE + nexus_artifact_repo: https://nexus.onap.org diff --git a/heat/vFWCL/vFWSNK/base_vfw.yaml b/heat/vFWCL/vFWSNK/base_vfw.yaml index d5a346c1..6ecae84b 100644 --- a/heat/vFWCL/vFWSNK/base_vfw.yaml +++ b/heat/vFWCL/vFWSNK/base_vfw.yaml @@ -33,11 +33,19 @@ description: Heat template that deploys vFirewall Closed Loop demo app (vFW and ############## 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 + vsn_image_name: + type: string + label: Image name or ID + description: Image to be used for compute instance + vsn_flavor_name: type: string label: Flavor description: Type of instance (flavor) to be used @@ -45,11 +53,11 @@ parameters: type: string label: Public network name or ID description: Public network that enables remote connection to VNF - unprotected_private_net_id: + int_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: + int_unprotected_private_subnet_id: type: string label: Unprotected private subnetwork name or ID description: Private subnetwork of the protected network @@ -57,11 +65,11 @@ parameters: type: string label: Unprotected private network CIDR description: The CIDR of the unprotected private network - protected_private_net_id: + int_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: + int_protected_private_subnet_id: type: string label: Protected private subnetwork name or ID description: Private subnetwork of the unprotected network @@ -81,27 +89,27 @@ parameters: type: string label: ONAP private network CIDR description: The CIDR of the protected private network - vfw_private_ip_0: + vfw_int_unprotected_private_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_protected_private_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_protected_private_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 - vsn_private_ip_0: + vsn_int_protected_private_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 @@ -113,6 +121,10 @@ parameters: type: string label: vSink name description: Name of the vSink + vnf_name: + type: string + label: VNF NAME + description: The VNF NAME is provided by ONAP vnf_id: type: string label: VNF ID @@ -148,7 +160,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 @@ -174,76 +186,100 @@ resources: properties: name: str_replace: - template: base_rand + template: vnfname_base_rand params: base: { get_param: key_name } + vnfname: { get_param: vnf_name } rand: { get_resource: random-str } public_key: { get_param: pub_key } save_private_key: false - unprotected_private_network: + int_unprotected_private_network: type: OS::Neutron::Net properties: - name: { get_param: unprotected_private_net_id } + name: + str_replace: + template: vnfname_netid + params: + netid: { get_param: int_unprotected_private_net_id } + vnfname: { get_param: vnf_name } - unprotected_private_subnet: + int_unprotected_private_subnet: type: OS::Neutron::Subnet properties: - name: { get_param: unprotected_private_subnet_id } - network_id: { get_resource: unprotected_private_network } + name: + str_replace: + template: vnfname_subnetid + params: + subnetid: { get_param: int_unprotected_private_subnet_id } + vnfname: { get_param: vnf_name } + network: { get_resource: int_unprotected_private_network } cidr: { get_param: unprotected_private_net_cidr } - protected_private_network: + int_protected_private_network: type: OS::Neutron::Net properties: - name: { get_param: protected_private_net_id } + name: + str_replace: + template: vnfname_netid + params: + netid: { get_param: int_protected_private_net_id } + vnfname: { get_param: vnf_name } - protected_private_subnet: + int_protected_private_subnet: type: OS::Neutron::Subnet properties: - name: { get_param: protected_private_subnet_id } - network_id: { get_resource: protected_private_network } + name: + str_replace: + template: vnfname_subnetid + params: + subnetid: { get_param: int_protected_private_subnet_id } + vnfname: { get_param: vnf_name } + network: { get_resource: int_protected_private_network } cidr: { get_param: protected_private_net_cidr } # Virtual Firewall instantiation - vfw_private_0_port: + vfw_0_int_unprotected_private_port_0: type: OS::Neutron::Port properties: - network: { get_resource: unprotected_private_network } - fixed_ips: [{"subnet": { get_resource: unprotected_private_subnet }, "ip_address": { get_param: vfw_private_ip_0 }}] + network: { get_resource: int_unprotected_private_network } + fixed_ips: [{"subnet": { get_resource: int_unprotected_private_subnet }, "ip_address": { get_param: vfw_int_unprotected_private_ip_0 }}] security_groups: - { get_param: sec_group } - vfw_private_1_port: + vfw_0_int_protected_private_port_0: type: OS::Neutron::Port properties: - allowed_address_pairs: [{ "ip_address": { get_param: vpg_private_ip_0 }}] - network: { get_resource: protected_private_network } - fixed_ips: [{"subnet": { get_resource: protected_private_subnet }, "ip_address": { get_param: vfw_private_ip_1 }}] + allowed_address_pairs: [{ "ip_address": { get_param: vfw_int_protected_private_floating_ip }}] + network: { get_resource: int_protected_private_network } + fixed_ips: [{"subnet": { get_resource: int_protected_private_subnet }, "ip_address": { get_param: vfw_int_protected_private_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_resource: my_keypair } 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 }} + - port: { get_resource: vfw_0_int_unprotected_private_port_0 } + - port: { get_resource: vfw_0_int_protected_private_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: @@ -252,9 +288,9 @@ 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 } + __vfw_private_ip_0__ : { get_param: vfw_int_unprotected_private_ip_0 } + __vfw_private_ip_1__ : { get_param: vfw_int_protected_private_ip_0 } + __vfw_private_ip_2__ : { get_param: vfw_onap_private_ip_0 } __unprotected_private_net_cidr__ : { get_param: unprotected_private_net_cidr } __protected_private_net_cidr__ : { get_param: protected_private_net_cidr } __onap_private_net_cidr__ : { get_param: onap_private_net_cidr } @@ -290,43 +326,46 @@ resources: # Virtual Sink instantiation - vsn_private_0_port: + vsn_0_int_protected_private_port_0: type: OS::Neutron::Port properties: - network: { get_resource: protected_private_network } - fixed_ips: [{"subnet": { get_resource: protected_private_subnet }, "ip_address": { get_param: vsn_private_ip_0 }}] + network: { get_resource: int_protected_private_network } + fixed_ips: [{"subnet": { get_resource: int_protected_private_subnet }, "ip_address": { get_param: vsn_int_protected_private_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_resource: my_keypair } 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 }} + - port: { get_resource: vsn_0_int_protected_private_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 } + __protected_net_gw__: { get_param: vfw_int_protected_private_ip_0 } __unprotected_net__: { get_param: unprotected_private_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 } + __vsn_private_ip_0__ : { get_param: vsn_int_protected_private_ip_0 } + __vsn_private_ip_1__ : { get_param: vsn_onap_private_ip_0 } __protected_private_net_cidr__ : { get_param: protected_private_net_cidr } __onap_private_net_cidr__ : { get_param: onap_private_net_cidr } __cloud_env__ : { get_param: cloud_env } diff --git a/heat/vFWCL/vPKG/base_vpkg.env b/heat/vFWCL/vPKG/base_vpkg.env index 4c81d4be..6a1b33e3 100644 --- a/heat/vFWCL/vPKG/base_vpkg.env +++ b/heat/vFWCL/vPKG/base_vpkg.env @@ -1,24 +1,40 @@ parameters: - image_name: PUT THE VM IMAGE NAME HERE (UBUNTU 1404) - flavor_name: PUT THE VM FLAVOR NAME HERE (m1.medium suggested) + + # VM_TYPE: vpg + vpg_image_name: PUT THE VM IMAGE NAME HERE (UBUNTU 1404) + vpg_flavor_name: PUT THE VM FLAVOR NAME HERE (m1.medium suggested) + vpg_unprotected_private_ip_0: 192.168.10.200 + vpg_onap_private_ip_0: 10.0.100.2 + vpg_name_0: zdfw1fwl01pgn01 + + # NETWORK_ROLE: public public_net_id: PUT THE PUBLIC NETWORK ID HERE - unprotected_private_net_id: zdfw1fwl01_unprotected - unprotected_private_subnet_id: zdfw1fwl01_unprotected_sub + + # NETWORK_ROLE: unprotected_private + unprotected_private_net_id: vFWSNK_zdfw1fwl01_unprotected + unprotected_private_subnet_id: vFWSNK_zdfw1fwl01_unprotected_sub unprotected_private_net_cidr: 192.168.10.0/24 + + # NETWORK_ROLE: onap_private 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 + + # NETWORK_ROLE: protected_private 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 - vpg_name_0: zdfw1fwl01pgn01 + + # METADATA + vnf_name: vPGK vnf_id: vPNG_Firewall_demo_app vf_module_id: vTrafficPNG + + # APP/USER_DATA + vfw_private_ip_0: 192.168.10.100 + vsn_private_ip_0: 192.168.20.250 demo_artifacts_version: 1.3.0-SNAPSHOT install_script_version: 1.3.0-SNAPSHOT key_name: vfw_key pub_key: PUT YOUR PUBLIC KEY HERE cloud_env: PUT openstack OR rackspace HERE - sec_group: PUT THE ONAP SECURITY GROUP HERE
\ No newline at end of file + sec_group: PUT THE ONAP SECURITY GROUP HERE + nexus_artifact_repo: https://nexus.onap.org
\ No newline at end of file diff --git a/heat/vFWCL/vPKG/base_vpkg.yaml b/heat/vFWCL/vPKG/base_vpkg.yaml index e06a83fb..7efb2e9c 100644 --- a/heat/vFWCL/vPKG/base_vpkg.yaml +++ b/heat/vFWCL/vPKG/base_vpkg.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 @@ -81,11 +81,11 @@ parameters: 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_unprotected_private_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 @@ -120,7 +124,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 @@ -146,8 +150,9 @@ resources: properties: name: str_replace: - template: base_rand + template: vnfname_base_rand params: + vnfname: { get_param: vnf_name } base: { get_param: key_name } rand: { get_resource: random-str } public_key: { get_param: pub_key } @@ -155,34 +160,37 @@ resources: # Virtual Packet Generator instantiation - vpg_private_0_port: + vpg_0_unprotected_private_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 }}] + fixed_ips: [{"subnet": { get_param: unprotected_private_subnet_id }, "ip_address": { get_param: vpg_unprotected_private_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_resource: my_keypair } 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 }} + - port: { get_resource: vpg_0_unprotected_private_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: @@ -192,8 +200,8 @@ resources: __sink_ipaddr__: { get_param: vsn_private_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 } + __vpg_private_ip_0__ : { get_param: vpg_unprotected_private_ip_0 } + __vpg_private_ip_1__ : { get_param: vpg_onap_private_ip_0 } __unprotected_private_net_cidr__ : { get_param: unprotected_private_net_cidr } __onap_private_net_cidr__ : { get_param: onap_private_net_cidr } __cloud_env__ : { get_param: cloud_env } |