diff options
Diffstat (limited to 'mcp/scripts/virsh_net')
-rw-r--r-- | mcp/scripts/virsh_net/net_internal.xml | 12 | ||||
-rw-r--r-- | mcp/scripts/virsh_net/net_mcpcontrol.xml.j2 | 19 | ||||
-rw-r--r-- | mcp/scripts/virsh_net/net_mgmt.xml.j2 | 20 | ||||
-rw-r--r-- | mcp/scripts/virsh_net/net_public.xml.j2 | 32 | ||||
-rw-r--r-- | mcp/scripts/virsh_net/net_pxebr.xml.j2 | 26 |
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> |