From 7a42faa5f2f719709cba436eac5059e54bf4acc5 Mon Sep 17 00:00:00 2001 From: Alexandru Avadanii Date: Mon, 29 Jul 2019 17:27:13 +0200 Subject: [deploy] Explicitly set NS for resolvconf in VMs With newer Ubuntu distros using netplan and systemd-resolve, we can't rely on /etc/resolv.conf found on the Jumphost being usable inside the guest VMs, so explicitly use the public network DNS servers configured in PDF/IDF. This will enable support for Jumpserver operating systems like Ubuntu 18.04. Change-Id: I0c7e02d5c1b822f809ce818e739c19d0344f39f5 Signed-off-by: Alexandru Avadanii --- mcp/scripts/lib_jump_deploy.sh | 7 ++++--- mcp/scripts/xdf_data.sh.j2 | 1 + 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/mcp/scripts/lib_jump_deploy.sh b/mcp/scripts/lib_jump_deploy.sh index 24fc4ee72..532508a58 100644 --- a/mcp/scripts/lib_jump_deploy.sh +++ b/mcp/scripts/lib_jump_deploy.sh @@ -154,7 +154,7 @@ function __mount_image { if [[ "${MCP_OS:-}" =~ ubuntu1804 ]]; then # Ubuntu Bionic (18.04) or newer defaults to using netplan.io, revert it sudo mkdir -p "${OPNFV_MNT_DIR}/run/systemd/resolve" - sudo cp -f --remove-destination /etc/resolv.conf \ + echo "nameserver ${dns_public}" | sudo tee \ "${OPNFV_MNT_DIR}/run/systemd/resolve/stub-resolv.conf" sudo chroot "${OPNFV_MNT_DIR}" systemctl stop \ systemd-networkd.socket systemd-networkd \ @@ -172,8 +172,9 @@ function __mount_image { sudo sed -i -e 's/^\(SELINUX\)=.*$/\1=permissive/g' \ "${OPNFV_MNT_DIR}/etc/selinux/config" fi - sudo cp -f --remove-destination \ - /etc/resolv.conf "${OPNFV_MNT_DIR}/etc/resolv.conf" + sudo rm -f "${OPNFV_MNT_DIR}/etc/resolv.conf" + echo "nameserver ${dns_public}" | sudo tee \ + "${OPNFV_MNT_DIR}/etc/resolv.conf" echo "GRUB_DISABLE_OS_PROBER=true" | \ sudo tee -a "${OPNFV_MNT_DIR}/etc/default/grub" sudo sed -i -e 's/^\(GRUB_TIMEOUT\)=.*$/\1=1/g' -e 's/^GRUB_HIDDEN.*$//g' \ diff --git a/mcp/scripts/xdf_data.sh.j2 b/mcp/scripts/xdf_data.sh.j2 index 032b00acf..79bc16c81 100644 --- a/mcp/scripts/xdf_data.sh.j2 +++ b/mcp/scripts/xdf_data.sh.j2 @@ -100,6 +100,7 @@ OPNFV_BRIDGES=( ) export CLUSTER_DOMAIN={{ conf.cluster.domain }} +dns_public={{ nm.dns_public[0] }} cluster_states={{ bash_arr(arch.default.cluster.states + cluster_states) }} virtual_nodes={{ filter_nodes('virtual') }} control_nodes_query={{ filter_nodes(['baremetal', 'virtual'], True, ['control']) }} -- cgit 1.2.3-korg