This page describes how to configure guest setup for hypervisor tools on VMware vCenter and VCD.
With hypervisor tools, Abiquo can do the following:
Set a fully qualified domain name (FQDN)
Generate a random password at deploy and optionally send by email and/or SMS to owner
Inject network configuration if no DHCP server is available
Inject variables into the VM
To inject a network configuration (static IP address) in Windows, you must use a custom specification. You cannot use an unattend file.
Guest setup with hypervisor tools can run the first time you deploy a VM and when you add a NIC to a VM that is powered off.
Customize the Windows unattend file for hypevisor tools
Configure Windows with a custom specification for hypervisor tools
If you do not want to use an unattend file, then you can use a custom specification. See Limitations of a custom specification to configure Windows.
If there is no DHCP service available and you use a custom specification, Abiquo can assign a static IP address to the VM. The guest setup will run the first time you deploy a VM and when you add a NIC to a powered-off VM
On VMware, to use a custom specification to configure Windows, set the unattend file property to false.
com.abiquo.esxi.experimental.customize.win.unattendfile=false
You can also configure these properties to ensure that Abiquo waits for guest setup stages to complete.
com.abiquo.esxi.experimental.customize.configure.timeoutms=1200000 com.abiquo.esxi.experimental.customize.waitpassword.timeoutms=1200000
Configure guest initial password
Configure default FQDNs for guest setup
Abiquo can set a hostname and fully qualified domain name (FQDN) before the VM is deployed.
If a user enters an FQDN when they configure the VM, this will override the defaults because it is the highest priority FQDN
If the user does not enter an FQDN, Abiquo uses the following default:
Abiquo database ID (on Windows) or the
VM_uuid
(on Linux); andVM network domain name (from the network of the VM’s NIC or the VDC default network) or
localdomain
To change the default to always generate the automatic VM name from the database ID:
Login to the Abiquo API Server as administrator
Edit the
abiquo.properties
file and set the following property
# Generate VM name from database ID. If false use VM_uuid on Linux and VM_database ID on Windows abiquo.api.experimental.hostname13charsFromVirtualMachineDatabaseId=true
After the user deploys the VM, the user can change the FQDN in the VM operating system. In this case, Abiquo will update the FQDN stored in the platform.
Prepare VM templates for static IP injection with hypervisor tools
By default, Abiquo uses DHCP to configure IP addresses.
Automate first boot of a VM with guest setup
To work with first-boot automation, create a VM by selecting a template with automation configured. Your administrator may have already added a default bootstrap script and variables.
To connect to your VM in public cloud, you must have your SSH public key in your user account. To add an SSH public key, see Edit your user account details.
To configure your VM for first boot automation:
Go to General
Enter the VM Name. Some hypervisors require unique VM names, so the platform may rename your VM if the name already exists
Optionally, before you deploy, enter a Fully qualified domain name (FQDN). If you don’t enter one, the platform may define one based on the configuration options
In private cloud, VCD, AWS, and Azure, the platform will send you the initial password for your VM if the if the Guest initial password checkbox is selected
Go to Variables. Optionally, enter or edit Keys and/or Values
If you are using Cloud-init or similar, you can enter a startup script or configuration. Go to Bootstrap script. Enter a configuration definition for cloud-init or another compatible script. It can use the VM Variables. The following example is adapted from: https://cloudinit.readthedocs.io/en/latest/topics/examples.html
Click Save
The platform saves the bootstrap script configuration and variables in the VM metadata.
You can also manage cloud-init metadata using the Abiquo API. See Manage virtual machine metadata via API
When you deploy the VM, the template's guest setup process will run and it will configure the VM according to your guest setup options and definition.