From 0422ba0e773d1a8257a3f2bf3db05f3bc7917eb7 Mon Sep 17 00:00:00 2001 From: Eduardo Otubo Date: Thu, 28 May 2020 08:44:08 +0200 Subject: [PATCH 4/4] Remove race condition between cloud-init and NetworkManager RH-Author: Eduardo Otubo Message-id: <20200327121911.17699-1-otubo@redhat.com> Patchwork-id: 94453 O-Subject: [RHEL-7.9/RHEL-8.2.0 cloud-init PATCHv2] Remove race condition between cloud-init and NetworkManager Bugzilla: 1840648 RH-Acked-by: Vitaly Kuznetsov RH-Acked-by: Miroslav Rezanina RH-Acked-by: Cathy Avery cloud-init service is set to start before NetworkManager service starts, but this does not avoid a race condition between them. NetworkManager starts before cloud-init can write `dns=none' to the file: /etc/NetworkManager/conf.d/99-cloud-init.conf. This way NetworkManager doesn't read the configuration and erases all resolv.conf values upon shutdown. On the next reboot neither cloud-init or NetworkManager will write anything to resolv.conf, leaving it blank. This patch introduces a NM reload (try-reload-or-restart) at the end of cloud-init start up so it won't erase resolv.conf upon first shutdown. x-downstream-only: yes Signed-off-by: Eduardo Otubo otubo@redhat.com Signed-off-by: Miroslav Rezanina --- rhel/systemd/cloud-final.service | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rhel/systemd/cloud-final.service b/rhel/systemd/cloud-final.service index f303483..05add07 100644 --- a/rhel/systemd/cloud-final.service +++ b/rhel/systemd/cloud-final.service @@ -11,8 +11,8 @@ ExecStart=/usr/bin/cloud-init modules --mode=final RemainAfterExit=yes TimeoutSec=0 KillMode=process -ExecStartPost=/bin/echo "try restart NetworkManager.service" -ExecStartPost=/usr/bin/systemctl try-restart NetworkManager.service +ExecStartPost=/bin/echo "trying to reload or restart NetworkManager.service" +ExecStartPost=/usr/bin/systemctl try-reload-or-restart NetworkManager.service # Output needs to appear in instance console output StandardOutput=journal+console -- 1.8.3.1