[Solved] MaaS 2.4.1 commision not use the right kernel


#1

Some of our server failed to commision and stuck at initramfs, I found out it’s due to lack of net driver support while it should. uname -r return a different kernel version as I configured in MaaS.

What could be the problem?
How can I debug the PXE/TFTP config?


Updated:

Finally I got the problem, once the node is enlisted, change default commision image/kernel won’t work, it will always pick up the old one.


#2

Hi there,

MAAS uses Ubuntu LTS releases for commissioning. The Ubuntu Cosmic kernel is in the process of being made available as a HWE kernel for Ubuntu Bionic. Once it is available, it will be in MAAS as well. If you are experiencing such behavior, it is almost likely that the hardware in question has no drivers available for Ubuntu 18.04 LTS.

As such, I’m wondering, what network hardware is this? Do you know when was this enabled in the kernel?


#3

The network controller is intel x722. so PXE can get IP through DHCP, but failed to initialize net controller and no network available to proceed.

But, the weird thing is, 18.04 kernel should have the driver, when it stucking at initramfs, uname -r give me kernel version 3.13 though I configured to use 18.04 for commision.

Here is the output from tftp:

    DEFAULT execute

LABEL execute
  SAY Booting under MAAS direction...
  SAY nomodeset ro root=squash:http://******:5248/images/ubuntu/amd64/ga- 
18.04/bionic/daily/squashfs ip=::::maas-enlist:BOOTIF ip6=off overlayroot=tmpfs 
overlayroot_cfgdisk=disabled cc:{'datasource_list': ['MAAS']}end_cc cloud-config- 
url=http://*******:5240/MAAS/metadata/latest/enlist-preseed/?op=get_enlist_preseed 
apparmor=0 log_host=****** log_port=514
  KERNEL ubuntu/amd64/ga-18.04/bionic/daily/boot-kernel
  INITRD ubuntu/amd64/ga-18.04/bionic/daily/boot-initrd
  APPEND nomodeset ro root=squash:http://*******:5248/images/ubuntu/amd64/ga- 
18.04/bionic/daily/squashfs ip=::::maas-enlist:BOOTIF ip6=off overlayroot=tmpfs 
overlayroot_cfgdisk=disabled cc:{'datasource_list': ['MAAS']}end_cc cloud-config- 
url=http://********:5240/MAAS/metadata/latest/enlist-preseed/?op=get_enlist_preseed 
apparmor=0 log_host=******** log_port=514
  IPAPPEND 2

#4

I’m really confused.

I change the default commission image to ubuntu 14.04 with hwe-x kernel, again curl tftp give me right configuration, and I open up ubuntu/amd64/hwe-x/trusty/daily/boot-initrd to double check, I can see it’s for kernel 4.4.0.

However this is what I got when stucking at initramfs:

I replaced boot-initrd file with another initrd image with self-compiled driver, once again I stuck at initramfs, this time the network interface seems correctly initialized (still no ip/network, maybe I fucked somewhere)

Now uname -r magaically return the right kernel version as the one I replaced…

I couldn’t think of a reason for how this happen…


#5

Go to Settings > General > Commissioning and Select ‘Ubuntu Bionic’ and the ‘ga-18.04’ kernel and try again.


#6

Finally I got the problem, once the node is enlisted, change default commision image/kernel won’t work, it will always pick up the old one.