[Bug 1923268] Re: grubnet default grub.cfg should try /grub/grub.cfg-${net_default_mac} before /grub/grub.cfg

dann frazier 1923268 at bugs.launchpad.net
Wed May 5 18:58:59 UTC 2021


Unfortunately it appears this issue goes beyond just enlistment. I
manually added 6 new arm64 systems using the MAAS UI, and made sure I
set the architecture to "arm64/generic". They then automatically entered
commissioning mode. However, they are also failing to Commission. MAAS
shows "0/arm64" in the "CORES/ARCH" column, but MAAS' GRUB config still
wants to provide them with x86 bits (see below). I was able to proceed
by interactively editing the GRUB config on the console
(s/amd64/arm64/g; s/(linux|initrd)efi/\1/) on each console. For some
reason commissioning that way left the network unconfigured, so I then
manually configured a NIC on each system, and then *re-*commissioned,
which did work fine.

                             GNU GRUB  version 2.04

 ����������������������������������������������������������������������������Ŀ
 �setparams 'Commission'                                                      � 
 �                                                                            �
 �    echo      'Booting under MAAS direction...'                             �
 �    linuxefi  (http,10.229.32.21:5248)/images/ubuntu/amd64/ga-20.04/focal/s\�
 �table/boot-kernel nomodeset ro root=squash:http://10.229.32.21:5248/images/\�
 �ubuntu/amd64/ga-20.04/focal/stable/squashfs ip=::::maas-enlist:BOOTIF ip6=o\�
 �ff overlayroot=tmpfs overlayroot_cfgdisk=disabled cc:\{'datasource_list': [\�
 �'MAAS']\}end_cc cloud-config-url=http://10.229.32.21:5248/MAAS/metadata/lat\�
 �est/enlist-preseed/?op=get_enlist_preseed apparmor=0 log_host=10.229.32.21 \�
 �log_port=5247 --- sysrq_always_enabled BOOTIF=01-${net_default_mac}         �
 �    initrdefi (http,10.229.32.21:5248)/images/ubuntu/amd64/ga-20.04/focal/s\�
 �table/boot-initrd                                                           �
 �                                                                            � 
 ������������������������������������������������������������������������������

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to grub2-signed in Ubuntu.
https://bugs.launchpad.net/bugs/1923268

Title:
  grubnet default grub.cfg should try /grub/grub.cfg-${net_default_mac}
  before /grub/grub.cfg

Status in MAAS:
  Fix Committed
Status in grub2-signed package in Ubuntu:
  Confirmed

Bug description:
  MAAS uses the signed network GRUB bootloader when a machine network
  boots on AMD64 and ARM64. The configuration MAAS produces depends on
  the machine which are identified by MAC address. The default grub.cfg
  in the boot loader downloads /grub/grub.cfg from the remote host. As
  that doesn't provide the MAC address MAAS provides a default
  configuration file:

  configfile /grub/grub.cfg-${net_default_mac}
  configfile /grub/grub.cfg-default-amd64

  There are two issues with this:

  1. This causes an additional unnecessary request.
  2. It is assumed an known machine is amd64.

  Can the default grub.cfg embedded in grubnet<arch>.efi be updated to

  configfile /grub/grub.cfg-${net_default_mac}
  configfile /grub/grub.cfg-default-<ARCH>
  configfile /grub/grub.cfg

  This would be similar to what PXELinux[1] does.

  [1] https://wiki.syslinux.org/wiki/index.php?title=PXELINUX

To manage notifications about this bug go to:
https://bugs.launchpad.net/maas/+bug/1923268/+subscriptions



More information about the foundations-bugs mailing list