aboutsummaryrefslogtreecommitdiffstats
path: root/mcp/scripts/virsh_net
diff options
context:
space:
mode:
Diffstat (limited to 'mcp/scripts/virsh_net')
-rw-r--r--mcp/scripts/virsh_net/net_internal.xml12
-rw-r--r--mcp/scripts/virsh_net/net_mcpcontrol.xml.j219
-rw-r--r--mcp/scripts/virsh_net/net_mgmt.xml.j220
-rw-r--r--mcp/scripts/virsh_net/net_public.xml.j232
-rw-r--r--mcp/scripts/virsh_net/net_pxebr.xml.j226
5 files changed, 109 insertions, 0 deletions
diff --git a/mcp/scripts/virsh_net/net_internal.xml b/mcp/scripts/virsh_net/net_internal.xml
new file mode 100644
index 000000000..8cf875e7c
--- /dev/null
+++ b/mcp/scripts/virsh_net/net_internal.xml
@@ -0,0 +1,12 @@
+<!--
+ Copyright (c) 2017 Mirantis Inc., Enea AB and others.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Apache License, Version 2.0
+ which accompanies this distribution, and is available at
+ http://www.apache.org/licenses/LICENSE-2.0
+-->
+<network>
+ <name>internal</name>
+ <bridge name="internal"/>
+</network>
diff --git a/mcp/scripts/virsh_net/net_mcpcontrol.xml.j2 b/mcp/scripts/virsh_net/net_mcpcontrol.xml.j2
new file mode 100644
index 000000000..95424db4e
--- /dev/null
+++ b/mcp/scripts/virsh_net/net_mcpcontrol.xml.j2
@@ -0,0 +1,19 @@
+<!--
+ Copyright (c) 2017 Mirantis Inc., Enea AB and others.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Apache License, Version 2.0
+ which accompanies this distribution, and is available at
+ http://www.apache.org/licenses/LICENSE-2.0
+-->
+{#- conf.MCPCONTROL_NET & co are mandatory, defaults are set via globals.sh #}
+<network>
+ <name>mcpcontrol</name>
+ <bridge name="mcpcontrol"/>
+ <forward mode="nat"/>
+ <ip address="{{ conf.MCPCONTROL_NET | ipaddr_index(1) }}" netmask="{{ conf.MCPCONTROL_PREFIX | netmask }}">
+ <dhcp>
+ <range start="{{ conf.MCPCONTROL_NET | ipaddr_index(2) }}" end="{{ conf.MCPCONTROL_NET | ipaddr_index(254) }}"/>
+ </dhcp>
+ </ip>
+</network>
diff --git a/mcp/scripts/virsh_net/net_mgmt.xml.j2 b/mcp/scripts/virsh_net/net_mgmt.xml.j2
new file mode 100644
index 000000000..a558293fa
--- /dev/null
+++ b/mcp/scripts/virsh_net/net_mgmt.xml.j2
@@ -0,0 +1,20 @@
+<!--
+ Copyright (c) 2017 Mirantis Inc., Enea AB and others.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Apache License, Version 2.0
+ 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 %}
+<network>
+ <name>mgmt</name>
+ <bridge name="mgmt"/>
+ <ip address="{{ mgmt_network | ipaddr_index(1) }}" netmask="{{ mgmt_prefix | netmask }}"/>
+</network>
diff --git a/mcp/scripts/virsh_net/net_public.xml.j2 b/mcp/scripts/virsh_net/net_public.xml.j2
new file mode 100644
index 000000000..737b638b3
--- /dev/null
+++ b/mcp/scripts/virsh_net/net_public.xml.j2
@@ -0,0 +1,32 @@
+<!--
+ Copyright (c) 2018 Mirantis Inc., Enea AB and others.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Apache License, Version 2.0
+ 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 %}
+<network>
+ <name>public</name>
+ <bridge name="public"/>
+{%- if 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 }}"/>
+{%- endif %}
+</network>
diff --git a/mcp/scripts/virsh_net/net_pxebr.xml.j2 b/mcp/scripts/virsh_net/net_pxebr.xml.j2
new file mode 100644
index 000000000..f82780cf7
--- /dev/null
+++ b/mcp/scripts/virsh_net/net_pxebr.xml.j2
@@ -0,0 +1,26 @@
+<!--
+ Copyright (c) 2018 Mirantis Inc., Enea AB and others.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Apache License, Version 2.0
+ 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 %}
+<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. -->
+ <dhcp>
+ <range start="{{ pxebr_network | ipaddr_index(4) }}" end="{{ pxebr_network | ipaddr_index(254) }}"/>
+ </dhcp>
+ </ip>
+</network>