aboutsummaryrefslogtreecommitdiffstats
path: root/mcp
diff options
context:
space:
mode:
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>2017-09-10 23:33:36 +0200
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>2017-09-12 04:52:30 +0200
commit4b11912d2dc915d642d82e6da0c94e185ec66c99 (patch)
tree278e25e5d8be4c690c8cf277eb851c5b5744730d /mcp
parenta760c973e420371b07ac1739ba2d32a1df87226f (diff)
reclass, states: Parametrize runtime configuration
mcpcontrol virsh network, as well as MaaS PXE network are installer specific, and not POD specific. Therefore, these should be easily parametrized without the PDF, using only installer inputs (e.g. env vars passed via Jenkins). - add new <all-mcp-ocata-common.opnfv.runtime> reclass class; - parametrize at runtime new reclass class based on global vars; - factor out MaaS deploy address / config using new mechanism; - parametrize at runtime virsh network definitions based on template; - add new "maas.pxe_route" sls for configuring routing on cfg01; - replace env vars with the new sls in "maas" state; NOTE: baremetal parametrization will be handled later. Change-Id: Ifd61143d818fb088b3f4395388ba769bbc49156e Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Diffstat (limited to 'mcp')
-rwxr-xr-xmcp/config/states/maas3
-rw-r--r--mcp/patches/0005-maas-module-Obtain-fabric-ID-from-CIDR.patch10
-rw-r--r--mcp/reclass/classes/cluster/all-mcp-ocata-common/init.yml1
-rw-r--r--mcp/reclass/classes/cluster/all-mcp-ocata-common/opnfv/.gitignore1
-rw-r--r--mcp/reclass/classes/cluster/all-mcp-ocata-common/opnfv/init.yml2
-rw-r--r--mcp/reclass/classes/cluster/all-mcp-ocata-common/opnfv/runtime.yml.template9
-rw-r--r--mcp/reclass/classes/cluster/baremetal-mcp-ocata-odl-ha/infra/init.yml3
-rw-r--r--mcp/reclass/classes/cluster/baremetal-mcp-ocata-odl-ha/infra/maas.yml10
-rw-r--r--mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-dpdk-ha/infra/init.yml3
-rw-r--r--mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-dpdk-ha/infra/maas.yml10
-rw-r--r--mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/init.yml3
-rw-r--r--mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/maas.yml10
-rw-r--r--mcp/reclass/classes/cluster/virtual-mcp-ocata-common/infra/config.yml1
-rw-r--r--mcp/salt-formulas/maas/pxe_route.sls8
-rw-r--r--mcp/scripts/net_mcpcontrol.xml10
-rw-r--r--mcp/scripts/net_mcpcontrol.xml.template10
16 files changed, 62 insertions, 32 deletions
diff --git a/mcp/config/states/maas b/mcp/config/states/maas
index 67a7c213a..0d733bafa 100755
--- a/mcp/config/states/maas
+++ b/mcp/config/states/maas
@@ -56,8 +56,7 @@ salt -C 'mas01*' state.apply linux,salt,openssh,ntp
salt -C 'mas01*' state.apply linux.network.interface
salt -C 'mas01*' state.apply maas.pxe_nat
salt -C 'mas01*' state.apply maas.cluster
-salt -C 'cfg01*' cmd.run \
- "route add -net 192.168.11.0/24 gw ${MAAS_IP:-10.20.0.3}"
+salt -C 'cfg01*' state.apply maas.pxe_route
wait_for 10 "salt -C 'mas01*' state.apply maas.region"
diff --git a/mcp/patches/0005-maas-module-Obtain-fabric-ID-from-CIDR.patch b/mcp/patches/0005-maas-module-Obtain-fabric-ID-from-CIDR.patch
index 5c77a63da..9489b9089 100644
--- a/mcp/patches/0005-maas-module-Obtain-fabric-ID-from-CIDR.patch
+++ b/mcp/patches/0005-maas-module-Obtain-fabric-ID-from-CIDR.patch
@@ -20,9 +20,17 @@ Signed-off-by: Guillermo Herrero <Guillermo.Herrero@enea.com>
---
diff --git a/_modules/maas.py b/_modules/maas.py
-index d3227ca..8a2243d 100644
--- a/_modules/maas.py
+++ b/_modules/maas.py
+@@ -126,6 +126,8 @@
+
+ def process_single(name, config_data):
+ self._update = False
++ if isinstance(config_data, dict) and 'name' in config_data:
++ name = config_data['name']
+ try:
+ data = self.fill_data(name, config_data, **extra)
+ if data is None:
@@ -198,7 +198,8 @@
def fill_data(self, name, subnet, fabrics):
data = {
diff --git a/mcp/reclass/classes/cluster/all-mcp-ocata-common/init.yml b/mcp/reclass/classes/cluster/all-mcp-ocata-common/init.yml
index 1139b9d72..b8bde832e 100644
--- a/mcp/reclass/classes/cluster/all-mcp-ocata-common/init.yml
+++ b/mcp/reclass/classes/cluster/all-mcp-ocata-common/init.yml
@@ -1,2 +1,3 @@
classes:
- cluster.all-mcp-ocata-common.arch
+- cluster.all-mcp-ocata-common.opnfv
diff --git a/mcp/reclass/classes/cluster/all-mcp-ocata-common/opnfv/.gitignore b/mcp/reclass/classes/cluster/all-mcp-ocata-common/opnfv/.gitignore
new file mode 100644
index 000000000..4b9ab2b95
--- /dev/null
+++ b/mcp/reclass/classes/cluster/all-mcp-ocata-common/opnfv/.gitignore
@@ -0,0 +1 @@
+runtime.yml
diff --git a/mcp/reclass/classes/cluster/all-mcp-ocata-common/opnfv/init.yml b/mcp/reclass/classes/cluster/all-mcp-ocata-common/opnfv/init.yml
new file mode 100644
index 000000000..28619bae1
--- /dev/null
+++ b/mcp/reclass/classes/cluster/all-mcp-ocata-common/opnfv/init.yml
@@ -0,0 +1,2 @@
+classes:
+- cluster.all-mcp-ocata-common.opnfv.runtime
diff --git a/mcp/reclass/classes/cluster/all-mcp-ocata-common/opnfv/runtime.yml.template b/mcp/reclass/classes/cluster/all-mcp-ocata-common/opnfv/runtime.yml.template
new file mode 100644
index 000000000..121f70663
--- /dev/null
+++ b/mcp/reclass/classes/cluster/all-mcp-ocata-common/opnfv/runtime.yml.template
@@ -0,0 +1,9 @@
+parameters:
+ _param:
+ reclass_config_master: ${SALT_MASTER}
+
+ opnfv_fuel_maas_mcp_address: ${MAAS_IP}
+ opnfv_fuel_maas_pxe_network: ${MAAS_PXE_NETWORK}
+ opnfv_fuel_maas_pxe_address: ${MAAS_PXE_NETWORK_ROOTSTR}.3
+ opnfv_fuel_maas_pxe_iprange_start: ${MAAS_PXE_NETWORK_ROOTSTR}.5
+ opnfv_fuel_maas_pxe_iprange_end: ${MAAS_PXE_NETWORK_ROOTSTR}.250
diff --git a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-odl-ha/infra/init.yml b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-odl-ha/infra/init.yml
index d08bdbb77..730193ac7 100644
--- a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-odl-ha/infra/init.yml
+++ b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-odl-ha/infra/init.yml
@@ -1,5 +1,6 @@
classes:
- system.linux.system.single
+- cluster.all-mcp-ocata-common
- cluster.baremetal-mcp-ocata-odl-ha.openstack
# - cluster.baremetal-mcp-ocata-odl-ha.stacklight
# - cluster.baremetal-mcp-ocata-odl-ha.stacklight.client
@@ -19,7 +20,7 @@ parameters:
infra_config_address: 10.167.4.100
infra_config_deploy_address: 10.20.0.2
infra_maas_node01_address: 10.167.4.3
- infra_maas_node01_deploy_address: 192.168.11.3
+ infra_maas_node01_deploy_address: ${_param:opnfv_fuel_maas_pxe_address}
infra_maas_node01_external_address: 10.16.0.3
infra_compute_node01_address: 10.167.4.141
infra_compute_node02_address: 10.167.4.142
diff --git a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-odl-ha/infra/maas.yml b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-odl-ha/infra/maas.yml
index c4bc92954..72b9f52c8 100644
--- a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-odl-ha/infra/maas.yml
+++ b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-odl-ha/infra/maas.yml
@@ -32,13 +32,13 @@ parameters:
network_discovery: 'enabled'
default_min_hwe_kernel: 'hwe-16.04'
subnets:
- # TODO: parametrize address root (192.168.11), dhcp start/end?
- 192.168.11.0/24:
- cidr: 192.168.11.0/24
+ opnfv_fuel_maas_pxe:
+ name: ${_param:opnfv_fuel_maas_pxe_network}/24
+ cidr: ${_param:opnfv_fuel_maas_pxe_network}/24
gateway_ip: ${_param:single_address}
iprange:
- start: 192.168.11.5
- end: 192.168.11.250
+ start: ${_param:opnfv_fuel_maas_pxe_iprange_start}
+ end: ${_param:opnfv_fuel_maas_pxe_iprange_end}
type: dynamic
vlans:
untagged:
diff --git a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-dpdk-ha/infra/init.yml b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-dpdk-ha/infra/init.yml
index 7d029b3ab..94ccc9e2f 100644
--- a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-dpdk-ha/infra/init.yml
+++ b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-dpdk-ha/infra/init.yml
@@ -1,5 +1,6 @@
classes:
- system.linux.system.single
+- cluster.all-mcp-ocata-common
- cluster.baremetal-mcp-ocata-ovs-dpdk-ha.openstack
# - cluster.baremetal-mcp-ocata-ovs-dpdk-ha.stacklight
# - cluster.baremetal-mcp-ocata-ovs-dpdk-ha.stacklight.client
@@ -19,7 +20,7 @@ parameters:
infra_config_address: 10.167.4.100
infra_config_deploy_address: 10.20.0.2
infra_maas_node01_address: 10.167.4.3
- infra_maas_node01_deploy_address: 192.168.11.3
+ infra_maas_node01_deploy_address: ${_param:opnfv_fuel_maas_pxe_address}
infra_maas_node01_external_address: 10.16.0.3
infra_compute_node01_address: 10.167.4.141
infra_compute_node02_address: 10.167.4.142
diff --git a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-dpdk-ha/infra/maas.yml b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-dpdk-ha/infra/maas.yml
index b83aa1e9e..bdf7fea01 100644
--- a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-dpdk-ha/infra/maas.yml
+++ b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-dpdk-ha/infra/maas.yml
@@ -32,13 +32,13 @@ parameters:
network_discovery: 'enabled'
default_min_hwe_kernel: 'hwe-16.04'
subnets:
- # TODO: parametrize address root (192.168.11), dhcp start/end?
- 192.168.11.0/24:
- cidr: 192.168.11.0/24
+ opnfv_fuel_maas_pxe:
+ name: ${_param:opnfv_fuel_maas_pxe_network}/24
+ cidr: ${_param:opnfv_fuel_maas_pxe_network}/24
gateway_ip: ${_param:single_address}
iprange:
- start: 192.168.11.5
- end: 192.168.11.250
+ start: ${_param:opnfv_fuel_maas_pxe_iprange_start}
+ end: ${_param:opnfv_fuel_maas_pxe_iprange_end}
type: dynamic
vlans:
untagged:
diff --git a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/init.yml b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/init.yml
index b6261f624..6bf0fbe63 100644
--- a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/init.yml
+++ b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/init.yml
@@ -1,5 +1,6 @@
classes:
- system.linux.system.single
+- cluster.all-mcp-ocata-common
- cluster.baremetal-mcp-ocata-ovs-ha.openstack
# - cluster.baremetal-mcp-ocata-ovs-ha.stacklight
# - cluster.baremetal-mcp-ocata-ovs-ha.stacklight.client
@@ -19,7 +20,7 @@ parameters:
infra_config_address: 10.167.4.100
infra_config_deploy_address: 10.20.0.2
infra_maas_node01_address: 10.167.4.3
- infra_maas_node01_deploy_address: 192.168.11.3
+ infra_maas_node01_deploy_address: ${_param:opnfv_fuel_maas_pxe_address}
infra_maas_node01_external_address: 10.16.0.3
infra_compute_node01_address: 10.167.4.141
infra_compute_node02_address: 10.167.4.142
diff --git a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/maas.yml b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/maas.yml
index d193469fc..f77abea6d 100644
--- a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/maas.yml
+++ b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/maas.yml
@@ -32,13 +32,13 @@ parameters:
network_discovery: 'enabled'
default_min_hwe_kernel: 'hwe-16.04'
subnets:
- # TODO: parametrize address root (192.168.11), dhcp start/end?
- 192.168.11.0/24:
- cidr: 192.168.11.0/24
+ opnfv_fuel_maas_pxe:
+ name: ${_param:opnfv_fuel_maas_pxe_network}/24
+ cidr: ${_param:opnfv_fuel_maas_pxe_network}/24
gateway_ip: ${_param:single_address}
iprange:
- start: 192.168.11.5
- end: 192.168.11.250
+ start: ${_param:opnfv_fuel_maas_pxe_iprange_start}
+ end: ${_param:opnfv_fuel_maas_pxe_iprange_end}
type: dynamic
vlans:
untagged:
diff --git a/mcp/reclass/classes/cluster/virtual-mcp-ocata-common/infra/config.yml b/mcp/reclass/classes/cluster/virtual-mcp-ocata-common/infra/config.yml
index 0e3a26454..73e2da5a9 100644
--- a/mcp/reclass/classes/cluster/virtual-mcp-ocata-common/infra/config.yml
+++ b/mcp/reclass/classes/cluster/virtual-mcp-ocata-common/infra/config.yml
@@ -16,7 +16,6 @@ parameters:
reclass_data_repository: local
salt_master_environment_repository: "https://github.com/tcpcloud"
salt_master_environment_revision: master
- reclass_config_master: 10.20.0.2
single_address: 172.16.10.100
salt_master_host: 127.0.0.1
salt_master_base_environment: prd
diff --git a/mcp/salt-formulas/maas/pxe_route.sls b/mcp/salt-formulas/maas/pxe_route.sls
new file mode 100644
index 000000000..5f7cebdda
--- /dev/null
+++ b/mcp/salt-formulas/maas/pxe_route.sls
@@ -0,0 +1,8 @@
+routes:
+ network.routes:
+ - name: {{ salt['pillar.get']('_param:opnfv_fn_vm_primary_interface') }}
+ - routes:
+ - name: maas_mcp_to_pxe_network
+ ipaddr: {{ salt['pillar.get']('_param:opnfv_fuel_maas_pxe_network') }}
+ netmask: 255.255.255.0
+ gateway: {{ salt['pillar.get']('_param:opnfv_fuel_maas_mcp_address') }}
diff --git a/mcp/scripts/net_mcpcontrol.xml b/mcp/scripts/net_mcpcontrol.xml
deleted file mode 100644
index 6a4cfd5b0..000000000
--- a/mcp/scripts/net_mcpcontrol.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<network>
- <name>mcpcontrol</name>
- <bridge name="mcpcontrol"/>
- <forward mode="nat"/>
- <ip address="10.20.0.1" netmask="255.255.255.0">
- <dhcp>
- <range start="10.20.0.2" end="10.20.0.254"/>
- </dhcp>
- </ip>
-</network>
diff --git a/mcp/scripts/net_mcpcontrol.xml.template b/mcp/scripts/net_mcpcontrol.xml.template
new file mode 100644
index 000000000..722a66aa9
--- /dev/null
+++ b/mcp/scripts/net_mcpcontrol.xml.template
@@ -0,0 +1,10 @@
+<network>
+ <name>mcpcontrol</name>
+ <bridge name="mcpcontrol"/>
+ <forward mode="nat"/>
+ <ip address="${MCP_CTRL_NETWORK_ROOTSTR}.1" netmask="255.255.255.0">
+ <dhcp>
+ <range start="${MCP_CTRL_NETWORK_ROOTSTR}.2" end="${MCP_CTRL_NETWORK_ROOTSTR}.254"/>
+ </dhcp>
+ </ip>
+</network>