summaryrefslogtreecommitdiffstats
path: root/mcp/patches
diff options
context:
space:
mode:
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>2017-08-01 22:18:41 +0200
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>2017-08-17 02:59:30 +0200
commit5039d069265df15ed3d8e41f7a1c7f9457a9d58a (patch)
tree18a9160f72be9a01ef0008e3aa9912e18262057d /mcp/patches
parent9720ddf955b76d678a08dc7ea53684400c659ce3 (diff)
Bring in baremetal support
- ci/deploy.sh: fail if default scenario file is missing; - start by copying reclass/classes/cluster/virtual-mcp-ocata-ovs as classes/cluster/baremetal-mcp-ocata-ovs; - add new state (maas) that will handle MaaS configuration; - Split PXE network in two for baremetal: * rename old "pxe" virtual network to "mcpcontrol", make it non-configurable and identical for baremetal/virtual deploys; * new "pxebr" bridge is dedicated for MaaS fabric network, which comes with its own DHCP, TFTP etc.; - Drop hardcoded PXE gateway & static IP for MaaS node, since "mcpcontrol" remains a NAT-ed virtual network, with its own DHCP; - Keep internet access available on first interfaces for cfg01/mas01; - Align MaaS IP addrs (all x.y.z.3), add public IP for easy debug via MaaS dashboard; - Add static IP in new network segment (192.168.11.3/24) on MaaS node's PXE interface; - Set MaaS PXE interface MTU 1500 (weird network errors with jumbo); - MaaS node: Add NAT iptables traffic forward from "mcpcontrol" to "pxebr" interfaces; - MaaS: Add harcoded lf-pod2 machine info (fixed identation in v6); - Switch our targeted scenario to HA; * scenario: s/os-nosdn-nofeature-noha/os-nosdn-nofeature-ha/ - maas region: Use mcp.rsa.pub from ~ubuntu/.ssh/authorized_keys; - add route for 192.168.11.0/24 via mas01 on cfg01; - fix race condition on kvm nodes network setup: * add "noifupdown" support in salt formula for linux.network; * keep primary eth/br-mgmt unconfigured till reboot; TODO: - Read all this info from PDF (Pod Descriptor File) later; - investigate leftover references to eno2, eth3; - add public network interfaces config, IPs; - improve wait conditions for MaaS commision/deploy; - report upstream breakage in system.single; Change-Id: Ie8dd584b140991d2bd992acdfe47f5644bf51409 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> Signed-off-by: Guillermo Herrero <Guillermo.Herrero@enea.com> Signed-off-by: Charalampos Kominos <Charalampos.Kominos@enea.com> Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Diffstat (limited to 'mcp/patches')
-rw-r--r--mcp/patches/0004-maas-region-use-authorized_keys-1st-entry.patch34
-rw-r--r--mcp/patches/0005-maas-vlan-DHCP-enable-on-fabric-2.patch28
-rw-r--r--mcp/patches/0006-linux.network.interface-noifupdown-support.patch26
-rw-r--r--mcp/patches/patches.list3
-rw-r--r--mcp/patches/reclass-system-salt-model/0001-Bring-in-opendaylight-support.patch4
-rw-r--r--mcp/patches/reclass-system-salt-model/0002-linux.system.single-Fix-py-msgpack-identation.patch26
6 files changed, 119 insertions, 2 deletions
diff --git a/mcp/patches/0004-maas-region-use-authorized_keys-1st-entry.patch b/mcp/patches/0004-maas-region-use-authorized_keys-1st-entry.patch
new file mode 100644
index 000000000..381acb324
--- /dev/null
+++ b/mcp/patches/0004-maas-region-use-authorized_keys-1st-entry.patch
@@ -0,0 +1,34 @@
+From: Charalampos Kominos <Charalampos.Kominos@enea.com>
+Date: Sat, 5 Aug 2017 02:03:01 +0200
+Subject: [PATCH] maas: region: use authorized_keys 1st entry
+
+MaaS custom py modules accepts the "sshprefs" variable via pillar,
+however we want to read it from ~ubuntu/.ssh/authorized_keys.
+
+Bypass the py module and call MaaS CLI directly, passing the first
+authorized key, which should be mcp.rsa.pub.
+
+Signed-off-by: Charalampos Kominos <Charalampos.Kominos@enea.com>
+---
+
+diff --git a/maas/region.sls b/maas/region.sls
+index d3227ca..8a2243d 100644
+--- a/maas/region.sls
++++ b/maas/region.sls
+@@ -179,8 +179,14 @@
+ - module: maas_config
+
+ maas_sshprefs:
+- module.run:
+- - name: maas.process_sshprefs
++# NOTE(armband): maas.process_sshprefs also works, but we need to read the key
++# from authorized_keys. Should be reworked at some point.
++# module.run:
++# - name: maas.process_sshprefs
++# - require:
++ cmd.run:
++ - name: "maas login {{ region.admin.username }} http://{{ region.bind.host }}/MAAS/api/2.0 - < /var/lib/maas/.maas_credentials && SSH_KEY=$(cat authorized_keys | head -1) && maas opnfv sshkeys create \"key=$SSH_KEY\""
++ - cwd: "/home/ubuntu/.ssh"
+ - require:
+ - module: maas_config
+
diff --git a/mcp/patches/0005-maas-vlan-DHCP-enable-on-fabric-2.patch b/mcp/patches/0005-maas-vlan-DHCP-enable-on-fabric-2.patch
new file mode 100644
index 000000000..db37e731e
--- /dev/null
+++ b/mcp/patches/0005-maas-vlan-DHCP-enable-on-fabric-2.patch
@@ -0,0 +1,28 @@
+From: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
+Date: Sat, 5 Aug 2017 02:03:01 +0200
+Subject: [PATCH] maas: vlan DHCP enable on fabric-2
+
+MaaS custom py modules does not implement vlan API support,
+so use MaaS CLI directly to enable DHCP on vlan 0 on fabric-2.
+
+Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
+Signed-off-by: Guillermo Herrero <Guillermo.Herrero@enea.com>
+---
+
+diff --git a/maas/region.sls b/maas/region.sls
+index d3227ca..8a2243d 100644
+--- a/maas/region.sls
++++ b/maas/region.sls
+@@ -190,4 +190,12 @@
+ - require:
+ - module: maas_config
+
++maas_vlan_dhcp:
++# NOTE(armband): To be implemented via _modules/maas.py later
++ cmd.run:
++ - name: "maas login {{ region.admin.username }} http://{{ region.bind.host }}/MAAS/api/2.0 - < /var/lib/maas/.maas_credentials && maas opnfv vlan update 2 0 dhcp_on=True primary_rack={{ region.maas_config.maas_name }}"
++ - require:
++ - module: maas_subnets
++ - module: maas_dhcp_snippets
++
+ {%- endif %}
diff --git a/mcp/patches/0006-linux.network.interface-noifupdown-support.patch b/mcp/patches/0006-linux.network.interface-noifupdown-support.patch
new file mode 100644
index 000000000..f4b7de803
--- /dev/null
+++ b/mcp/patches/0006-linux.network.interface-noifupdown-support.patch
@@ -0,0 +1,26 @@
+From: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
+Date: Sat, 5 Aug 2017 02:03:01 +0200
+Subject: [PATCH] linux.network.interface: noifupdown support
+
+According to [1], salt states/network supports "noifupdown" as a
+parameter for each interface.
+Adjust salt formula part for `linux.network.interface`, by extending
+the "interface_params" in <linux/map.jinja> accordingly.
+
+Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
+Signed-off-by: Charalampos Kominos <Charalampos.Kominos@enea.com>
+Signed-off-by: Guillermo Herrero <Guillermo.Herrero@enea.com>
+---
+
+diff --git a/linux/map.jinja b/linux/map.jinja
+index d3227ca..8a2243d 100644
+--- a/linux/map.jinja
++++ b/linux/map.jinja
+@@ -92,6 +92,7 @@
+ 'updelay',
+ 'hashing-algorithm',
+ 'hardware-dma-ring-rx',
++ 'ifupdown',
+ ] %}
+
+ {% set network = salt['grains.filter_by']({
diff --git a/mcp/patches/patches.list b/mcp/patches/patches.list
index e55e67984..acacb47e0 100644
--- a/mcp/patches/patches.list
+++ b/mcp/patches/patches.list
@@ -1,3 +1,6 @@
/usr/share/salt-formulas/env: 0001-opendaylight-formula-neutron.patch
/usr/share/salt-formulas/env: 0002-maas-region-skip-credentials-update.patch
/usr/share/salt-formulas/env: 0003-maas-region-force-artifact-download.patch
+/usr/share/salt-formulas/env: 0004-maas-region-use-authorized_keys-1st-entry.patch
+/usr/share/salt-formulas/env: 0005-maas-vlan-DHCP-enable-on-fabric-2.patch
+/usr/share/salt-formulas/env: 0006-linux.network.interface-noifupdown-support.patch
diff --git a/mcp/patches/reclass-system-salt-model/0001-Bring-in-opendaylight-support.patch b/mcp/patches/reclass-system-salt-model/0001-Bring-in-opendaylight-support.patch
index 15f23db34..adf07eb81 100644
--- a/mcp/patches/reclass-system-salt-model/0001-Bring-in-opendaylight-support.patch
+++ b/mcp/patches/reclass-system-salt-model/0001-Bring-in-opendaylight-support.patch
@@ -8,8 +8,8 @@ Change-Id: I3efec9a8b586a6c75b1c1635ad2a7024d73d9ad2
neutron/control/opendaylight/single.yml | 16 ++++++++++++++++
neutron/gateway/opendaylight/single.yml | 8 ++++++++
opendaylight/server/single.yml | 2 ++
- .../storage/system/opendaylight_control_single.yml | 15 +++++++++++++++
- 5 files changed, 60 insertions(+)
+ .../storage/system/opendaylight_control_single.yml | 13 +++++++++++++
+ 5 files changed, 58 insertions(+)
create mode 100644 neutron/control/opendaylight/cluster.yml
create mode 100644 neutron/control/opendaylight/single.yml
create mode 100644 neutron/gateway/opendaylight/single.yml
diff --git a/mcp/patches/reclass-system-salt-model/0002-linux.system.single-Fix-py-msgpack-identation.patch b/mcp/patches/reclass-system-salt-model/0002-linux.system.single-Fix-py-msgpack-identation.patch
new file mode 100644
index 000000000..799a9cf97
--- /dev/null
+++ b/mcp/patches/reclass-system-salt-model/0002-linux.system.single-Fix-py-msgpack-identation.patch
@@ -0,0 +1,26 @@
+From: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
+Date: Mon, 14 Aug 2017 23:44:05 +0200
+Subject: [PATCH] linux.system.single: Fix py-msgpack identation
+
+Broken upstream since commit [1], adjust it accordingly.
+
+[1] https://github.com/Mirantis/reclass-system-salt-model/commit/517e5ff
+
+Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
+---
+ linux/system/single.yml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/linux/system/single.yml b/linux/system/single.yml
+index 4c5228f..e2a8502 100644
+--- a/linux/system/single.yml
++++ b/linux/system/single.yml
+@@ -12,7 +12,7 @@ parameters:
+ name: root
+ home: /root
+ package:
+- python-msgpack:
++ python-msgpack:
+ version: latest
+ cloud-init:
+ version: purged