149 lines
5.4 KiB
Diff
149 lines
5.4 KiB
Diff
|
From 24894dcf45a307f44e29dc5d5b2d864b75fd982c Mon Sep 17 00:00:00 2001
|
||
|
From: Eduardo Otubo <otubo@redhat.com>
|
||
|
Date: Fri, 7 May 2021 13:36:14 +0200
|
||
|
Subject: Remove race condition between cloud-init and NetworkManager
|
||
|
|
||
|
Message-id: <20200302104635.11648-1-otubo@redhat.com>
|
||
|
Patchwork-id: 94098
|
||
|
O-Subject: [RHEL-7.9/RHEL-8.2.0 cloud-init PATCH] Remove race condition between cloud-init and NetworkManager
|
||
|
Bugzilla: 1807797
|
||
|
RH-Acked-by: Cathy Avery <cavery@redhat.com>
|
||
|
RH-Acked-by: Mohammed Gamal <mgamal@redhat.com>
|
||
|
|
||
|
BZ: 1748015
|
||
|
BRANCH: rhel7/master-18.5
|
||
|
BREW: 26924611
|
||
|
|
||
|
BZ: 1807797
|
||
|
BRANCH: rhel820/master-18.5
|
||
|
BREW: 26924957
|
||
|
|
||
|
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-restart) at the end of cloud-init
|
||
|
start up so it won't erase resolv.conf upon first shutdown.
|
||
|
|
||
|
x-downstream-only: yes
|
||
|
resolves: rhbz#1748015, rhbz#1807797 and rhbz#1804780
|
||
|
|
||
|
Signed-off-by: Eduardo Otubo <otubo@redhat.com>
|
||
|
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
|
||
|
|
||
|
This commit is a squash and also includes the folloowing commits:
|
||
|
|
||
|
commit 316a17b7c02a87fa9b2981535be0b20d165adc46
|
||
|
Author: Eduardo Otubo <otubo@redhat.com>
|
||
|
Date: Mon Jun 1 11:58:06 2020 +0200
|
||
|
|
||
|
Make cloud-init.service execute after network is up
|
||
|
|
||
|
RH-Author: Eduardo Otubo <otubo@redhat.com>
|
||
|
Message-id: <20200526090804.2047-1-otubo@redhat.com>
|
||
|
Patchwork-id: 96809
|
||
|
O-Subject: [RHEL-8.2.1 cloud-init PATCH] Make cloud-init.service execute after network is up
|
||
|
Bugzilla: 1803928
|
||
|
RH-Acked-by: Vitaly Kuznetsov <vkuznets@redhat.com>
|
||
|
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
|
||
|
|
||
|
cloud-init.service needs to wait until network is fully up before
|
||
|
continuing executing and configuring its service.
|
||
|
|
||
|
Signed-off-by: Eduardo Otubo <otubo@redhat.com>
|
||
|
|
||
|
x-downstream-only: yes
|
||
|
Resolves: rhbz#1831646
|
||
|
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
|
||
|
|
||
|
commit 0422ba0e773d1a8257a3f2bf3db05f3bc7917eb7
|
||
|
Author: Eduardo Otubo <otubo@redhat.com>
|
||
|
Date: Thu May 28 08:44:08 2020 +0200
|
||
|
|
||
|
Remove race condition between cloud-init and NetworkManager
|
||
|
|
||
|
RH-Author: Eduardo Otubo <otubo@redhat.com>
|
||
|
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 <vkuznets@redhat.com>
|
||
|
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
|
||
|
RH-Acked-by: Cathy Avery <cavery@redhat.com>
|
||
|
|
||
|
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 <mrezanin@redhat.com>
|
||
|
|
||
|
commit e0b48a936433faea7f56dbc29dda35acf7d375f7
|
||
|
Author: Eduardo Otubo <otubo@redhat.com>
|
||
|
Date: Thu May 28 08:44:06 2020 +0200
|
||
|
|
||
|
Enable ssh_deletekeys by default
|
||
|
|
||
|
RH-Author: Eduardo Otubo <otubo@redhat.com>
|
||
|
Message-id: <20200317091705.15715-1-otubo@redhat.com>
|
||
|
Patchwork-id: 94365
|
||
|
O-Subject: [RHEL-7.9/RHEL-8.2.0 cloud-init PATCH] Enable ssh_deletekeys by default
|
||
|
Bugzilla: 1814152
|
||
|
RH-Acked-by: Mohammed Gamal <mgamal@redhat.com>
|
||
|
RH-Acked-by: Vitaly Kuznetsov <vkuznets@redhat.com>
|
||
|
|
||
|
The configuration option ssh_deletekeys will trigger the generation
|
||
|
of new ssh keys for every new instance deployed.
|
||
|
|
||
|
x-downstream-only: yes
|
||
|
resolves: rhbz#1814152
|
||
|
|
||
|
Signed-off-by: Eduardo Otubo <otubo@redhat.com>
|
||
|
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
|
||
|
---
|
||
|
rhel/cloud.cfg | 2 +-
|
||
|
rhel/systemd/cloud-init.service | 1 +
|
||
|
2 files changed, 2 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/rhel/cloud.cfg b/rhel/cloud.cfg
|
||
|
index 82e8bf62..9ecba215 100644
|
||
|
--- a/rhel/cloud.cfg
|
||
|
+++ b/rhel/cloud.cfg
|
||
|
@@ -6,7 +6,7 @@ ssh_pwauth: 0
|
||
|
|
||
|
mount_default_fields: [~, ~, 'auto', 'defaults,nofail,x-systemd.requires=cloud-init.service', '0', '2']
|
||
|
resize_rootfs_tmp: /dev
|
||
|
-ssh_deletekeys: 0
|
||
|
+ssh_deletekeys: 1
|
||
|
ssh_genkeytypes: ~
|
||
|
syslog_fix_perms: ~
|
||
|
disable_vmware_customization: false
|
||
|
diff --git a/rhel/systemd/cloud-init.service b/rhel/systemd/cloud-init.service
|
||
|
index d0023a05..0b3d796d 100644
|
||
|
--- a/rhel/systemd/cloud-init.service
|
||
|
+++ b/rhel/systemd/cloud-init.service
|
||
|
@@ -5,6 +5,7 @@ Wants=sshd-keygen.service
|
||
|
Wants=sshd.service
|
||
|
After=cloud-init-local.service
|
||
|
After=NetworkManager.service network.service
|
||
|
+After=NetworkManager-wait-online.service
|
||
|
Before=network-online.target
|
||
|
Before=sshd-keygen.service
|
||
|
Before=sshd.service
|
||
|
--
|
||
|
2.27.0
|
||
|
|