We're using a ubuntu-18.04
template on a virtualization environment. Therefore, before creating the template, we always empty the /etc/machine-id
file so it's recreated upon the first boot.
The problem is that if several ubuntu-18-based VMs are started at once, systemd-machine-id-setup
will generate the same ID for all of them, resulting in IP duplication. I checked these servers and they all have the same content in the /etc/machine-id
file.
If machines are powered-on spaced in time, different IPs are assigned, thus I assume systemd-machine-id-setup
is generated based on current time (possibly). This isn't acceptable for us because of the problem in the image above.
Is there a way to make the OS generate the /etc/machine-id
on boot based on an alternative binary?
--- UPDATE 1 ---
On @GeraldSchneider's tip, I switched back from netplan to ifdownup and the IPs stopped duplicating, so definitely this is a netplan issue.
Even if this could solve the problem, I'm curious if there's a way to set an alternative way to generate the /etc/machine-id
file so no duplications happen using netplan.