2020-09-09 16:01:10 |
Divya K Konoor |
description |
I am using cloud-init v19.1 where I am passing config drive from nova layer while VM deployment.
On a RHEL8 environment, I am observing IPv4 interfaces not coming up. We are setting NM_CONTROLLED = no in the interface files and since RHEL8 recommends to use NetworkManager to configure network and create connectivity it is failing.
we are setting NM_CONTROLLED = no using the code
iface_defaults = tuple([
('ONBOOT', True),
('USERCTL', False),
('NM_CONTROLLED', False),
('BOOTPROTO', 'none'),
('STARTMODE', 'auto'),
])
under the file [1] . Due to which the Network Manager is not able to handle the interfaces
[1] cloudinit/net/sysconfig.py
Making ('NM_CONTROLLED', True) fixes the issue. |
Environment Details:
Management Control Plane : OpenStack (Ussuri Release)
cloud-init version : 19.1 (community)
Data Source : Config Drive
OS/platform of deployed VM : RHEL 8.2
I am using cloud-init v19.1 where the control plane (OpenStack nova service) passes information (data source) via configdrive during VM deployment.
On a RHEL8.2 VM deployed from the above environment, it is observed that IPv4 interfaces do not come up. This behavior is observed only when NM_CONTROLLED is set to no in the interface files. This value is set from cloud-init src code at the below lines :
https://github.com/canonical/cloud-init/blob/stable-19.4/cloudinit/net/sysconfig.py#L275
we are setting NM_CONTROLLED = no using the code
iface_defaults = tuple([
('ONBOOT', True),
('USERCTL', False),
('NM_CONTROLLED', False),
('BOOTPROTO', 'none'),
('STARTMODE', 'auto'),
])
under the file [1] . Due to which the Network Manager is not able to handle the interfaces
[1] cloudinit/net/sysconfig.py
When the above pieces of code is updated to set True to NM_CONTROLLED, the IPV4 interfaces come up fine.
Making ('NM_CONTROLLED', True) fixes the issue. |
|