From 5039d069265df15ed3d8e41f7a1c7f9457a9d58a Mon Sep 17 00:00:00 2001 From: Alexandru Avadanii Date: Tue, 1 Aug 2017 22:18:41 +0200 Subject: 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 Signed-off-by: Guillermo Herrero Signed-off-by: Charalampos Kominos Signed-off-by: Alexandru Avadanii --- ...maas-region-use-authorized_keys-1st-entry.patch | 34 ++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 mcp/patches/0004-maas-region-use-authorized_keys-1st-entry.patch (limited to 'mcp/patches/0004-maas-region-use-authorized_keys-1st-entry.patch') 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 +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 +--- + +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 + -- cgit 1.2.3-korg