summaryrefslogtreecommitdiffstats
path: root/mcp/scripts/virsh_net
diff options
context:
space:
mode:
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>2018-04-07 05:27:48 +0200
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>2018-06-19 15:47:11 +0200
commit33c017d388bf0f9cef5199c186bec5b4fd01f767 (patch)
tree7a90ebe50f00224bb51dce6bc772b9ec9d8c5e8c /mcp/scripts/virsh_net
parent3dbd313cc111455f8cf88d0d072ec8a2f3c6f705 (diff)
Enforce static configuration instead of DHCP
- noha: 'accept_policy: open_mode' to align with ha scenarios; - s/cmp01/cmp001/g to align all scenarios and allow code reuse; - rename network params: s/dhcp/mcpcontrol/g, cleanup; - computes XDF data: drop 'opnfv_*' layer of params, cleanup; - local vPDF: add comments with default roles by node index; - parameterize all netmasks; - drop unused address/netmask for 'proto: manual' interfaces; - virsh_net: cleanup definitions, remove hardcodes, align IP on jumpserver and DHCP range with MaaS for pxebr; - maas: parameterize hardcoded '/24' cidr for PXE/admin, refactor maas.region.machines parameterization; - merge <all-mcp-arch-common/infra/config_*pdf.yaml.j2> templates; - move reclass.storage definitions of compute nodes to common dir; - drop 'openstack_compute_*' reclass params in favor of expanding them via j2 directly in reclass.storage params; - adopt `nm.cluster.has_*_nodes` where possible; - obsolete `runtime.yml` from reclass model; - refactor arch-specific reclass param selection; - remove unused defaults in favor of mandatory IDF properties; - noha: prepare for baremetal node support in cinder_lvm_devices; - interfaces: add interface_mtu and 'noifupdown: true' everywhere; - interfaces: use j2 macros to generate eth/vlan config; - states cleanup: remove DHCP route disable workaround on prx/cmp; - allow configuring NTP servers via: `idf.fuel.network.ntp_strata_host{1,2}`; - ovs_bridge: Allow setting gateway, dns-nameservers - apache: Adjust module list for novcp class inheritance; - glusterfs PPA: pin with same prio of MCP repos for novcp scenario; JIRA: FUEL-319 JIRA: FUEL-326 JIRA: FUEL-337 Change-Id: Ia6ad64ba8cade85a75fb22c9a2505decc3834360 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Diffstat (limited to 'mcp/scripts/virsh_net')
-rw-r--r--mcp/scripts/virsh_net/net_mcpcontrol.xml.j25
-rw-r--r--mcp/scripts/virsh_net/net_mgmt.xml.j210
-rw-r--r--mcp/scripts/virsh_net/net_public.xml.j218
-rw-r--r--mcp/scripts/virsh_net/net_pxebr.xml.j213
4 files changed, 11 insertions, 35 deletions
diff --git a/mcp/scripts/virsh_net/net_mcpcontrol.xml.j2 b/mcp/scripts/virsh_net/net_mcpcontrol.xml.j2
index 95424db4e..569fa7089 100644
--- a/mcp/scripts/virsh_net/net_mcpcontrol.xml.j2
+++ b/mcp/scripts/virsh_net/net_mcpcontrol.xml.j2
@@ -7,13 +7,14 @@
http://www.apache.org/licenses/LICENSE-2.0
-->
{#- conf.MCPCONTROL_NET & co are mandatory, defaults are set via globals.sh #}
+{%- set net_mcpcontrol = [conf.MCPCONTROL_NET, conf.MCPCONTROL_PREFIX] | join("/") %}
<network>
<name>mcpcontrol</name>
<bridge name="mcpcontrol"/>
<forward mode="nat"/>
- <ip address="{{ conf.MCPCONTROL_NET | ipaddr_index(1) }}" netmask="{{ conf.MCPCONTROL_PREFIX | netmask }}">
+ <ip address="{{ net_mcpcontrol | ipnet_hostaddr(1) }}" netmask="{{ net_mcpcontrol | ipnet_netmask }}">
<dhcp>
- <range start="{{ conf.MCPCONTROL_NET | ipaddr_index(2) }}" end="{{ conf.MCPCONTROL_NET | ipaddr_index(254) }}"/>
+ <range start="{{ net_mcpcontrol | ipnet_hostaddr(2) }}" end="{{ net_mcpcontrol | ipnet_hostmax }}"/>
</dhcp>
</ip>
</network>
diff --git a/mcp/scripts/virsh_net/net_mgmt.xml.j2 b/mcp/scripts/virsh_net/net_mgmt.xml.j2
index a558293fa..23b32f2f4 100644
--- a/mcp/scripts/virsh_net/net_mgmt.xml.j2
+++ b/mcp/scripts/virsh_net/net_mgmt.xml.j2
@@ -6,15 +6,9 @@
which accompanies this distribution, and is available at
http://www.apache.org/licenses/LICENSE-2.0
-->
-{%- if conf.idf.net_config.mgmt is defined %}
- {%- set mgmt_network = conf.idf.net_config.mgmt.network %}
- {%- set mgmt_prefix = conf.idf.net_config.mgmt.mask %}
-{%- else %}
- {%- set mgmt_network = '172.16.10.0' %}
- {%- set mgmt_prefix = '24' %}
-{%- endif %}
+{%- import 'net_map.j2' as nm with context %}
<network>
<name>mgmt</name>
<bridge name="mgmt"/>
- <ip address="{{ mgmt_network | ipaddr_index(1) }}" netmask="{{ mgmt_prefix | netmask }}"/>
+ <ip address="{{ nm.net_mgmt | ipnet_hostmin }}" netmask="{{ nm.net_mgmt | ipnet_netmask }}"/>
</network>
diff --git a/mcp/scripts/virsh_net/net_public.xml.j2 b/mcp/scripts/virsh_net/net_public.xml.j2
index 737b638b3..a9e8349f4 100644
--- a/mcp/scripts/virsh_net/net_public.xml.j2
+++ b/mcp/scripts/virsh_net/net_public.xml.j2
@@ -6,27 +6,15 @@
which accompanies this distribution, and is available at
http://www.apache.org/licenses/LICENSE-2.0
-->
-{%- set cluster = {'has_virtual_nodes': False} %}
-{%- for node in conf.nodes %}
- {%- if not cluster.has_virtual_nodes and node.node.type == 'virtual' %}
- {%- do cluster.update({'has_virtual_nodes': True}) %}
- {%- endif %}
-{%- endfor %}
-{%- if conf.idf.net_config.public is defined %}
- {%- set public_network = conf.idf.net_config.public.network %}
- {%- set public_prefix = conf.idf.net_config.public.mask %}
-{%- else %}
- {%- set public_network = '10.16.0.0' %}
- {%- set public_prefix = '24' %}
-{%- endif %}
+{%- import 'net_map.j2' as nm with context %}
<network>
<name>public</name>
<bridge name="public"/>
-{%- if cluster.has_virtual_nodes %}
+{%- if nm.cluster.has_virtual_nodes %}
{#- Ideally, jumpserver would have a real Linux bridge we will hook to.
In case it doesn't, we use this virsh network as a *mock* public.
The *mock* public should NOT overlap with the real public in any way. #}
<forward mode="nat"/>
- <ip address="{{ public_network | ipaddr_index(1) }}" netmask="{{ public_prefix | netmask }}"/>
+ <ip address="{{ nm.net_public | ipnet_hostmin }}" netmask="{{ nm.net_public | ipnet_netmask }}"/>
{%- endif %}
</network>
diff --git a/mcp/scripts/virsh_net/net_pxebr.xml.j2 b/mcp/scripts/virsh_net/net_pxebr.xml.j2
index f82780cf7..1c48e9b1a 100644
--- a/mcp/scripts/virsh_net/net_pxebr.xml.j2
+++ b/mcp/scripts/virsh_net/net_pxebr.xml.j2
@@ -6,21 +6,14 @@
which accompanies this distribution, and is available at
http://www.apache.org/licenses/LICENSE-2.0
-->
-{%- if conf.idf.net_config.admin is defined %}
- {%- set pxebr_network = conf.idf.net_config.admin.network %}
- {%- set pxebr_prefix = conf.idf.net_config.admin.mask %}
-{%- else %}
- {%- set pxebr_network = '192.168.11.0' %}
- {%- set pxebr_prefix = '24' %}
-{%- endif %}
+{%- import 'net_map.j2' as nm with context %}
<network>
<name>pxebr</name>
<forward mode="nat"/>
<bridge name="pxebr"/>
- <ip address="{{ pxebr_network | ipaddr_index(1) }}" netmask="{{ pxebr_prefix | netmask }}">
- <!-- NOTE: .254 is harcoded for now (for /24 prefix), should be computed instead. -->
+ <ip address="{{ nm.net_admin_gw }}" netmask="{{ nm.net_admin | ipnet_netmask }}">
<dhcp>
- <range start="{{ pxebr_network | ipaddr_index(4) }}" end="{{ pxebr_network | ipaddr_index(254) }}"/>
+ <range start="{{ nm.net_admin_pool_start }}" end="{{ nm.net_admin_pool_end }}"/>
</dhcp>
</ip>
</network>