I’m in the process of creating new VM templates for vRA. These include Ubuntu 22, Rocky 9 und SLES 15 SP4. All templates are configured the same, including EFI, Secure Boot, Passthrough CD drive, CPU, Memory and Disk config.
With the Rocky 9 and SLES 15 templates I don’t have any problems. Every deployment is working just fine and the machines are customized with Cloud-init. The customizations include changing the root password, setting static IPs and changing the hostname.
Ubuntu 22 on the other hand is driving me nuts. For some deployments, the Cloud-init customization is working just fine, for other deployments, Cloud-init cannot get the cloudConfig from the OVF datasource (ISO) and just exists with the warning “Used fallback datasource”. Even though the ISO is attached and I can even read the content with “cat /dev/sr0”.
This is even happening when I start a deployment where multiple machines are deployed at the same time. Just now I deployed 3 machines and for 2 of them Cloud-init worked, but 1 failed.
This tells me that the VM template, the vRA cloud template and the Cloud Config should be fine. But I don’t have a clue why it fails every other time.
Did anybody else run into the same issue?
Failed cloud-init:
Successful cloud-init:
Both of the above deployments are from the same deployment, with the same template, cloud config and so on.
Thanks for responding! Your idea and https://kb.vmware.com/s/article/90331 pointed me in the right direction and I got it fixed. Scenario 1 is the solution that worked for me.
Why not inject the metadata by the vmware tools. Much more stable. (only in combination with cloud(base)-init.
Thanks for responding! Your idea and https://kb.vmware.com/s/article/90331 pointed me in the right direction and I got it fixed. Scenario 1 is the solution that worked for me.
I push everything with cloud-init and no cd ovf needed or all kind of scripts.
Just create a second variable in your template and push it into the guestinfo.metadata.
Live just became so easy with this. Best thing it is pretty universal. Only you need the latest cloud-init that supports this option.
I used this based on this article https://blog.v12n.io/cloud-init-with-vrealize-automation-and-vsphere-no-cd-drive/