Comment 14 for bug 1598301

Revision history for this message
Sam Lee (samlee) wrote : Re: Deploying centos7 fails during cloud-init networking

found root cause. The centos7 image was missing nic firmware packages, which I find "ironic" (pun intended) that a bare-metal image doesn't have the necessary packages to get bare-metal networking functional.

With the ability to log into the console of a failed centos7 deploy, I was able to debug why the nic wouldn’t come up. (see attached pic)

After some investigation, it appears the centos7 cloud images are missing the firmware packages necessary for our bare-metal server to load physical nics.

Similar to this Red Hat bug submission: https://bugzilla.redhat.com/show_bug.cgi?id=1353976 “tripleo centos7 images missing linux-firmware package”

Adding some commands in the /etc/maas/preseeds/curtin_userdata_centos worked around the issue:

#cloud-config
debconf_selections:

maas: |
  {{for line in str(curtin_preseed).splitlines()}}
  {{line}}
  {{endfor}}

late_commands:

  maas: [wget, '--no-proxy', '{{node_disable_pxe_url}}', '--post-data', '{{node_disable_pxe_data}}', '-O', '/dev/null']
  centosfix1: [wget, '--no-proxy', 'http://mirror.centos.org/centos/7/os/x86_64/Packages/linux-firmware-20150904-43.git6ebf5d5.el7.noarch.rpm', '-O', '/etc/linux-firmware-20150904-43.git6ebf5d5.el7.noarch.rpm']
  centosfix2: ["sh", "-c", "mv /etc/linux-firmware-20150904-43.git6ebf5d5.el7.noarch.rpm $TARGET_MOUNT_POINT/etc/linux-firmware-20150904-43.git6ebf5d5.el7.noarch.rpm"]
  centosfix3: curtin in-target -- sh -c "rpm -ivh /etc/linux-firmware-20150904-43.git6ebf5d5.el7.noarch.rpm"

power_state:
  mode: reboot