Upgrade from 2.4 to 2.6 but DHCP still directing boot to port 5248

We just upgraded one of our labs from 2.4 to 2.6 as there seemed to be no path for 2.4->2.5. The upgrade seemed to work fine. However, when I tried to deploy a machine, it’s PXE is attempting to pull a kernel from MaaS on port 5248.

I see that /var/lib/maas/dhcpd.conf is in fact pointing to :5248. How does one fix this?

Try regenerating the DHCP configuration. You can do this by clicking on the Subnets tab, selecting the VLAN with the incorrect configuration, and clicking reconfigure DHCP.

Did that. Nothing changed. Reading up more on this, I need to confirm. Is :5248 actually the correct port on which PXE uses to pull the kernel? Can someone confirm that?

Here’s the boot problem:

The thing is that the image is there. The nginx server is serving on that port. So I’m at a loss. This worked in maas 2.5 and 2.6.1rc1, but it has failed for 2.6.1.

The nginx error logs:

==> access.log <==
192.168.4.25 - - [01/Oct/2019:12:08:40 -0700] "GET /ldlinux.c32 HTTP/1.0" 200 115812 "-" "Syslinux/6.03"
192.168.4.25 - - [01/Oct/2019:12:08:40 -0700] "GET /pxelinux.cfg/00fe87a3-4f91-e411-bb4a-b8aeed7db39e HTTP/1.0" 404 0 "-" "Syslinux/6.03"
192.168.4.25 - - [01/Oct/2019:12:08:40 -0700] "GET /pxelinux.cfg/01-b8-ae-ed-7d-b3-9e HTTP/1.0" 200 1187 "-" "Syslinux/6.03"

==> error.log <==
2019/10/01 12:08:40 [error] 3451#3451: *50 open() "/var/lib/maas/boot-resources/current/custom/amd64/ga-16.04/os=ubuntu-xenial,k8s=1.13.10,type=standard/no-such-image/boot-kernel" failed (2: No such file or directory) while sending to client, client: 192.168.4.25, server: , request: "GET /images/custom/amd64/ga-16.04/os=ubuntu-xenial,k8s=1.13.10,type=standard/no-such-image/boot-kernel HTTP/1.0", host: "192.168.4.2"

==> access.log <==
192.168.4.25 - - [01/Oct/2019:12:08:40 -0700] "GET /images/custom/amd64/ga-16.04/os=ubuntu-xenial,k8s=1.13.10,type=standard/no-such-image/boot-kernel HTTP/1.0" 404 178 "-" "Syslinux/6.03"

However, these custom images were imported using maas-cli. I will re-import them and see what happens.

The following import command is what’s being used:

maas <PROFILE> boot-resources create name=custom/os=ubuntu-xenial,k8s=1.13.10,type=standard title="Ubuntu 16.04 K8s 1.13.10 Standard CPU" architecture=amd64/generic content@=/var/tmp/ubuntu-16.04-standard.tar.gz```

I tried deleting the images and re-importing them. Also followed the SO here: https://askubuntu.com/questions/759109/maas-2-0-importing-custom-images-does-not-work

Nothing seems to be working. Seems odd that an import succeeds but the deploy of that imported image fails. I'll re-deploy though. That's something I didn't try yet.

OK, reimporting the images seems to have fixed the problem…maybe. I am noticing that MaaS doesn’t want to play nice behind a firewall with 100% blocked egress. Seems like I’ll need to look at some cloud-init scripts which attempt to apt-update during the deploy process.

I think I’m good here. I’m still having issues with maas behind a FW with no egress to the Internet, but I’ll more about that in a different thread.