X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=mcp%2Freclass%2Fclasses%2Fcluster%2Fmcp-common-noha%2Fopenstack_gateway_pdf.yml.j2;h=bd62ae9904c787b5fdf6d3629f85921074f94d76;hb=54ebfaf561693186580cacf259804f7968bec0fd;hp=5b104429d24a41f3a564cf1ff962c27a1fb30e9c;hpb=c2902b924da9b2246ec80e7b541950b26ebc8cde;p=fuel.git diff --git a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_gateway_pdf.yml.j2 b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_gateway_pdf.yml.j2 index 5b104429d..bd62ae990 100644 --- a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_gateway_pdf.yml.j2 +++ b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_gateway_pdf.yml.j2 @@ -7,11 +7,15 @@ ############################################################################## --- {%- import 'net_map.j2' as nm with context %} +{%- import 'net_macros.j2' as ma with context %} +{#- Filter-out NIC duplicates by constructing a dict (used NICs only) #} +{%- set nics = { nm.ctl01.nic_mgmt: True, nm.ctl01.nic_private: True } %} +{%- set vlans = { nm.vlan_mgmt: nm.ctl01.nic_mgmt } %} +{%- if '-ovs-' not in conf.MCP_DEPLOY_SCENARIO %} +{%- set vlan_private_start = (nm.vlan_private | string).rsplit('-')[0] %} +{%- do vlans.update({ vlan_private_start: nm.ctl01.nic_private }) %} +{%- endif %} parameters: - _param: - primary_interface: {{ nm.ctl01.nic_mgmt }} - tenant_interface: {{ nm.ctl01.nic_private }} - external_interface: {{ nm.ctl01.nic_public }} linux: network: bridge: openvswitch @@ -25,22 +29,21 @@ parameters: netmask: ${_param:opnfv_net_admin_mask} mtu: ${_param:interface_mtu} noifupdown: true - primary_interface: + +{#- prevent duplicates for tagged mgmt on the same physical interface as PXE/admin #} +{%- if nm.ctl01.nic_admin in nics %} + {%- do nics.pop(nm.ctl01.nic_admin) %} +{%- endif %} + +{{ ma.linux_network_interfaces_nic(nics) }} + +{{ ma.linux_network_interfaces_vlan(vlans) }} + + ovs_port_{{ nm.ctl01.nic_public }}: enabled: true - name: ${_param:primary_interface} + name: {{ ma.interface_str(nm.ctl01.nic_public, nm.vlan_public) }} mtu: ${_param:interface_mtu} proto: manual - type: eth - tenant_interface: - enabled: true - name: ${_param:tenant_interface} - mtu: ${_param:interface_mtu} - proto: manual - type: eth - external_interface: - enabled: true - name: ${_param:external_interface} - proto: manual ovs_port_type: OVSPort type: ovs_port ovs_bridge: br-floating @@ -48,14 +51,14 @@ parameters: br-floating: enabled: true type: ovs_bridge - mtu: ${_param:interface_mtu} proto: static address: ${_param:external_address} netmask: ${_param:opnfv_net_public_mask} use_interfaces: - - ${_param:external_interface} + - {{ ma.interface_str(nm.ctl01.nic_public, nm.vlan_public) }} gateway: ${_param:opnfv_net_public_gw} name_servers: {{ nm.dns_public }} + noifupdown: true br-mgmt: enabled: true type: bridge @@ -64,4 +67,4 @@ parameters: netmask: ${_param:opnfv_net_mgmt_mask} mtu: ${_param:interface_mtu} use_interfaces: - - ${_param:primary_interface} + - {{ ma.interface_str(nm.ctl01.nic_mgmt, nm.vlan_mgmt) }}