...
In Abiquo, the main implementation of cloud-init is using a Configuration Drive. See reference: https://cloudinit.readthedocs.io/en/latest/topics/datasources/configdrive.html
The Configuration drive enables users to automate the configuration of a VM at first boot because it creates an ISO disk with user data files. Then Cloud-init or a similar system can configure the VM from the user data.
The Configuration drive feature can be used on VMs with private network or no network connectivity, because the VM pulls its own configuration from the ISO and there is no need for an external process to connect to the VM to configure it.
...
Configuration drive in Abiquo
When the user deploys the VM, Abiquo copies and uploads the configuration data to the hypervisor and attaches an ISO disk with this data to the VM. The ISO disk will count towards the limit of a maximum of 4 IDE drives per VM. At first boot, cloud-init configures the VM.
Abiquo places the Bootstrap script content in a user_data file and the variables in a vm-variables.rc
file. Abiquo also creates a Configuration drive meta_data.json
file. For example, Abiquo supplies the VM’s unique identifier VM's name to configure the default VM hostname. However, for example, the user can override the hostname in the Bootstrap script.
As part of this feature, the VM's Bootstrap script tab is now available in private cloud for cloud-init use only. Configuration drive is hypervisor agnostic and support for the bootstrap script depends on the configuration of cloud-init or another system on the VM template. However, cloud-init can also run other types of scripts, such as bash scripts.
See also VM bootstrap script and Modify a VM template.
...
...
Remove the configuration drive
After Abiquo configures the VM, you may wish to remove the Configuration drive. Otherwise, the cloud-init process may run again and reset any changes you have tried to make to the network configuration. See How to work with ISO disks
If you wish to update the network configuration after you configure the VM, you may need to use hypervisor tools. See Prepare for guest setup with hypervisor tools.