UEFI support in Emulab
We have skirted around this for awhile (see issues #53 (closed) and #123 (closed)), just making things work. At some point we must face the general problem of UEFI booting nodes. Some of the issues:
- The boot loader. Do we move to Grub or try to update the FreeBSD-based pxeboot? Or do we go some other path (e.g., pxelinux).
- Backward compatibility. How hard to we try to support both legacy BIOS images (i.e., those with embedded code in the boot loader or kernel for interacting with the BIOS)? Do we try to continue to make these images boot on UEFI-based nodes?
- The whole secure boot thing. Part of the reason for vendor adoption of UEFI is the ability to allow only "signed" boot loaders and thus control what runs on the machine. In our limited involvement thus far, we have been able to avoid the need for a signed boot loader.
- Better support for GPT. Our support for GPT thus far as been for non-boot disks. An interesting example of this problem is that we cannot boot from and fully utilize a hard drive larger than 2TB since we are locked in to MBR.
Months later, a final checklist of things to do:
-
Nail down the image format -
Make the necessary MFS changes -
Deploy and test MFSes on all clusters -
Test image deployment (frisbee MFS) -
Test image capture (admin MFS) -
Test local datasets and mkextrafs
-
Test VMs with new image -
Deploy/synch latest Linux MFSes at all clusters (see #678 (closed)) -
Make final images -
Announce