summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rwxr-xr-xci/deploy.sh14
-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.yml5
-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-odl-ha/openstack/proxy.yml27
-rw-r--r--mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-dpdk-ha/infra/init.yml5
-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.yml5
-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/lib.sh3
-rw-r--r--mcp/scripts/net_mcpcontrol.xml10
-rw-r--r--mcp/scripts/net_mcpcontrol.xml.template10
20 files changed, 107 insertions, 38 deletions
diff --git a/.gitignore b/.gitignore
index 72e939cfd..c8064d486 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,3 +12,4 @@ deploy/autodeploy.log
mcp/deploy/images/
mcp/scripts/mcp.rsa*
mcp/scripts/user-data.sh
+mcp/scripts/net_mcpcontrol.xml
diff --git a/ci/deploy.sh b/ci/deploy.sh
index 36056c8b0..f6af1b57a 100755
--- a/ci/deploy.sh
+++ b/ci/deploy.sh
@@ -135,14 +135,20 @@ clean() {
SCRIPT_PATH=$(readlink -f "$(dirname "${BASH_SOURCE[0]}")")
DEPLOY_DIR=$(cd "${SCRIPT_PATH}/../mcp/scripts"; pwd)
STORAGE_DIR=$(cd "${SCRIPT_PATH}/../mcp/deploy/images"; pwd)
+RECLASS_CLUSTER_DIR=$(cd "${SCRIPT_PATH}/../mcp/reclass/classes/cluster"; pwd)
DEPLOY_TYPE='baremetal'
OPNFV_BRIDGES=('pxebr' 'mgmt' 'internal' 'public')
URI_REGEXP='(file|https?|ftp)://.*'
export SSH_KEY=${SSH_KEY:-"/var/lib/opnfv/mcp.rsa"}
-export SALT_MASTER=${SALT_MASTER_IP:-192.168.10.100}
+export SALT_MASTER=${INSTALLER_IP:-10.20.0.2}
export SALT_MASTER_USER=${SALT_MASTER_USER:-ubuntu}
-export MAAS_IP=${MAAS_IP:-192.168.10.3}
+export MAAS_IP=${MAAS_IP:-${SALT_MASTER%.*}.3}
+export MAAS_PXE_NETWORK=${MAAS_PXE_NETWORK:-192.168.11.0}
+
+# Derivated from above global vars
+export MCP_CTRL_NETWORK_ROOTSTR=${SALT_MASTER%.*}
+export MAAS_PXE_NETWORK_ROOTSTR=${MAAS_PXE_NETWORK%.*}
export SSH_OPTS="-o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ${SSH_KEY}"
export SSH_SALT="${SALT_MASTER_USER}@${SALT_MASTER}"
@@ -327,6 +333,10 @@ for node in "${virtual_nodes[@]}"; do
virtual_nodes_vcpus[$node]=${!virtual_custom_vcpus:-$virtual_default_vcpus}
done
+# Expand reclass and virsh network templates
+for tp in "${RECLASS_CLUSTER_DIR}/all-mcp-ocata-common/opnfv/"*.template \
+ net_*.template; do envsubst < "${tp}" > "${tp%.template}"; done
+
# Infra setup
generate_ssh_key
prepare_vms virtual_nodes "${base_image}" "${STORAGE_DIR}"
diff --git a/mcp/config/states/maas b/mcp/config/states/maas
index db0bd3fe6..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:-192.168.10.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 f1769d714..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
@@ -17,9 +18,9 @@ parameters:
# infra service addresses
infra_config_address: 10.167.4.100
- infra_config_deploy_address: 192.168.10.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-odl-ha/openstack/proxy.yml b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-odl-ha/openstack/proxy.yml
index 4aa7bb07f..89a193061 100644
--- a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-odl-ha/openstack/proxy.yml
+++ b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-odl-ha/openstack/proxy.yml
@@ -40,3 +40,30 @@ parameters:
proxy:
alternative_names: "IP:${_param:openstack_proxy_address}"
key_usage: 'digitalSignature, keyEncipherment'
+ nginx:
+ server:
+ site:
+ nginx_proxy_opendaylight_web:
+ enabled: true
+ type: nginx_proxy
+ name: opendaylight_web
+ check: false
+ proxy:
+ host: ${_param:opendaylight_service_host}
+ port: 8181
+ protocol: http
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 8181
+ nginx_proxy_opendaylight_rest:
+ enabled: true
+ type: nginx_proxy
+ name: opendaylight_rest
+ check: false
+ proxy:
+ host: ${_param:opendaylight_service_host}
+ port: 8282
+ protocol: http
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 8282
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 1389aefff..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
@@ -17,9 +18,9 @@ parameters:
# infra service addresses
infra_config_address: 10.167.4.100
- infra_config_deploy_address: 192.168.10.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 d7e365a1b..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
@@ -17,9 +18,9 @@ parameters:
# infra service addresses
infra_config_address: 10.167.4.100
- infra_config_deploy_address: 192.168.10.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 d60c81dd1..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: 192.168.10.100
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/lib.sh b/mcp/scripts/lib.sh
index e123e5231..650c63b16 100644
--- a/mcp/scripts/lib.sh
+++ b/mcp/scripts/lib.sh
@@ -65,7 +65,8 @@ create_networks() {
# create required networks, including constant "mcpcontrol"
# FIXME(alav): since we renamed "pxe" to "mcpcontrol", we need to make sure
# we delete the old "pxe" virtual network, or it would cause IP conflicts.
- for net in "pxe" "mcpcontrol" "${vnode_networks[@]}"; do
+ # FIXME(alav): The same applies for "fuel1" virsh network.
+ for net in "fuel1" "pxe" "mcpcontrol" "${vnode_networks[@]}"; do
if virsh net-info "${net}" >/dev/null 2>&1; then
virsh net-destroy "${net}" || true
virsh net-undefine "${net}"
diff --git a/mcp/scripts/net_mcpcontrol.xml b/mcp/scripts/net_mcpcontrol.xml
deleted file mode 100644
index f756ee0ae..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="192.168.10.1" netmask="255.255.255.0">
- <dhcp>
- <range start="192.168.10.100" end="192.168.10.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>