Trying to setup a public VM with:
sudo cookbook sre.ganeti.makevm --network public --os bookworm --cluster codfw02 --group AB -p 7 testvm2008
Fails at the DHCP step:
Apr 11 12:27:43 install2004 dhcpd[3186579]: DHCPDISCOVER from aa:00:00:7e:e0:91 via 10.192.21.6: network 10.192.24.0/23: no free leases
This is because the dhcrelay tool adds this to the DHCP request by design:
OPTION: 82 ( 12) Relay Agent Information
Circuit-ID 74:61:70:31 ---> tap1
BOOTPREQUEST 0a:c0:18:01 ---> 10.192.24.1There are multiple ways of solving this.
With KEA DHCP, we can maybe do some more advanced logic to assign the proper IP (and ignore that field).
Alternatively in net-common. We can set the TAP side IP to a "regular looking" 208.80.152.129/32 which will be present in the BOOTPREQUEST field.
That means a little bit of Puppet change, as well as wasting a public IP. With the upside of being more clear and explicit in traceroute results (as the public IP would show up instead of the private one).
early_command.sh also needs to be adapted to account for that new prefix and gateway until D-I is compatible with that setup.
https://github.com/wikimedia/operations-puppet/blob/production/modules/install_server/files/autoinstall/scripts/early_command.sh#L22