Bug 1491932

Summary: cloud-init 0.7.9 fails in Cloudstack
Product: Red Hat Enterprise Linux 7 Reporter: James Biao <jbiao>
Component: cloud-initAssignee: Eduardo Otubo <eterrell>
Status: CLOSED ERRATA QA Contact: Yuhui Jiang <yujiang>
Severity: medium Docs Contact:
Priority: low    
Version: 7.4CC: eterrell, jbadiapa, jbiao, jgreguske, lars, linl, mmagr, mrezanin, mrunge, ribarry, rmccabe, vhutsky, vkuznets, xiachen, yujiang
Target Milestone: rcKeywords: TestOnly, Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-08-06 12:51:00 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1525267    
Bug Blocks:    

Description James Biao 2017-09-15 04:36:04 UTC
This is a replicate of upstream bug
https://bugs.launchpad.net/cloud-init/+bug/1717147

As requested by customer in support case, I replicate this upstream bug to RHBZ.

Description of problem:

CentOS 7.4 builds on Cloudstack 4.8 don't run cloud-init because the newer version of cloud-init doesn't appear to like the way the dhclient lease file is named.

I've just built a CentOS 7.4 instance in one of my CloudStack 4.8 clusters. Unfortunately, cloud-init fails with the following in snippet in /var/log/cloud-init.log:

2017-09-13 18:53:00,118 - __init__.py[DEBUG]: Seeing if we can get any data from <class 'cloudinit.sources.DataSourceCloudStack.DataSourceCloudStack'>
2017-09-13 18:53:00,118 - DataSourceCloudStack.py[DEBUG]: Using /var/lib/dhclient lease directory
2017-09-13 18:53:00,118 - DataSourceCloudStack.py[DEBUG]: No lease file found, using default gateway

Where it then tries to use the default route to download userdata. The problem is that we're not using the Cloudstack VR as a default router, so I expected it to parse /var/lib/dhclient/dhclient--eth0.lease for the "dhcp-server-identifier" line.

Theory as to cause:
I believe that this change (https://github.com/cloud-init/cloud-init/commit/aee0edd93cb4d78b5e0d1aec71e977aabf31cdd0#diff-5bc9de2bb7889d66205845400c7cf99b) breaks cloud-init beyond the 7.3-distributed cloud-0.7.5 when 7.4 includes 0.7.9-9.

Changing it from "dhclient." to "dhclient-" in /usr/lib/python2.7/site-packages/cloudinit/sources/DataSourceCloudStack.py on the running box with an installed RPM did the trick theoretically (after removing the pyc and pyo files, of course).

This *can* be patched around by RedHat/CentOS (and hopefully will), but I figure it might be better to take it straight upstream.

Version-Release number of selected component (if applicable):
CentOS 7.4, cloud-init-0.7.9-9.el7.centos.2.x86_64

How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 2 James Biao 2017-09-18 04:02:05 UTC
Looks like a fix has been committed upstream, as noted in Launchpad at https://bugs.launchpad.net/cloud-init/+bug/1717147

Their fix is visible here:  https://github.com/cloud-init/cloud-init/commit/da1db792b2721d94ef85df8c136e78012c49c6e5

Comment 12 Ademar Reis 2018-06-19 18:03:08 UTC
The rebase is being tracked via Bug 1525267.

Comment 28 errata-xmlrpc 2019-08-06 12:51:00 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2019:2123

Comment 29 Red Hat Bugzilla 2023-09-15 00:03:54 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 500 days