This page describes how to configure guest setup that will use hypervisor tools on VMware vCenter and VCD.
We assume that you have already installed hypervisor tools on your VM templates.
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.
On Linux VMs, the platform will configure a global DNS that will apply to all NICs on the VM
Customize the Windows unattend file for hypervisor tools
If you are using vCenter 7.0.3 U3, please see Use a Windows unattend file with vCenter 7.0.3 U3.
For guest tools with Windows, the platform default is to use a Windows unattend file.
The default unattend file is Abiquo default Windows unattend file.
When you configure Windows with an unattend file, the VM obtains its IP addresses using DHCP
Guest setup with a Windows unattend file runs the first time you deploy a VM.
If the guest setup is not successful, the VM deploy or reconfigure will fail and roll back.
Using the Windows unattend file, Abiquo sets:
Fully qualified domain name (FQDN)
Guest password at deploy time
The Abiquo default Windows unattend file also includes these static settings:
TimeZone with default W. Europe Standard Time
JoinWorkgroup with default WORKGROUP
To configure a custom Windows unattend file for a datacenter
Log in to the Remote Services server as an administrator
Create your own custom unattend file and make the tomcat user the owner of the file
By default Abiquo will replace the following variables:
$adminPassword
$domain
$hostName
Edit the abiquo.properties file and set the location of your custom unattend file. For example:
// Path to Windows unattend file com.abiquo.esxi.experimental.customize.win.unattendfile=/root/windows_unattend.xml
Your Windows VMs will obtain their network configuration with DHCP.
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
The platform can set an initial password for a VM before it deploys. The administrator can configure this option in a VM template but the user may then edit the VM to change the option. To configure guest initial passwords, do these steps. To configure the length and characters, on the Abiquo API server edit For more details see Abiquo configuration properties To customize messages see the following pages. To enable guest initial passwords, in Abiquo, go to Configuration view → Security (see Configuration view). To enable password emails, select the Enable password emails option To enable password SMS, enter the SMS gateway address In Abiquo, load and configure appropriate VM templates! See Edit a VM template for guest setup below Related pages:abiquo.properties
and set the following properties:abiquo.guest.password.exclude
abiquo.guest.password.length
Configure FQDN
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, etc); and VM network domain name (from VM NIC or VDC default network) or 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 Restart the Abiquo server to activate the property 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.localdomain
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
Prepare VM templates for static IP injection with hypervisor tools
By default, Abiquo uses DHCP to configure IP addresses.
If you are not using DHCP, prepare your VM templates for static IP injection.
For Linux with CENTOS:
Download a minimal CentOS OVA, for example, https://sourceforge.net/projects/virtualappliances/files/Linux/CentOS/CentOS-7.0-amd64-minimal.ova/download
If Perl is not installed, then install it
Install VMware tools from vCenter, following the instructions for Option 2 at: https://webhostinggeeks.com/howto/how-to-install-vmware-tools/
For Windows:
Download a Windows template such as
WS-2019-template-40GB-BIOS-1.vmdk
Install VMware tools
In Abiquo, for the Guest setup option, select Hypervisor tools, and select the Guest initial password checkbox
Edit a VM template for guest setup
To prepare a VM template for guest setup: Go to Catalogue Edit a template with cloud-init or hypervisor tools installed. Go to Advanced For Guest setup, select Cloud-Init or Hypervisor tools. For Windows on AWS, you can select from: Select Guest initial password to generate an initial password according to platform configuration For Windows systems we strongly recommend this option The platform will log in with the template User and Password (see below) and change the Password to the guest initial password. For the User, enter the default user for the template On Windows, enter On Linux, enter If sudo is not available, please contact Abiquo Support to configure the For the Password, enter the default password of the user on the VM template The platform does not save VM passwords On Linux, before deploying an instance template, edit the instance template's password to set it to the current VM password. Select the Operating system. If required, enter the OS version. For more details see Set the guest operating system for VMware Optionally, go to Variables and set variables for the VM template. The platform will add these variables to the VM using metadata or user data. See VM variables If you are using Cloud-init or similar, you can enter a startup script or configuration on the Bootstrap tab. The platform will add this script to the VM and the VM user may also be able to modify it. For more details, see VM bootstrap script Add the SSH public key to your user before you deploy VMs. To connect to your VM, you will often require the SSH key pair, for example, to connect to Windows VMs in public cloud via RDPCLOUDBASE_INIT
, EC2LAUNCH_V2
, EC2LAUNCH
, EC2CONFIG
The platform will send the guest initial password to the user via mail or SMS, and users can display it with the VM key buttonAdministrator
root
or another user that can run chpassword
, with sudo and by always entering the passwordnosudoerrequiredforuser
property
Users can now automate their VMs with guest setup. See Automate first boot of a VM for guest setup
Troubleshooting hypervisor tools
For troubleshooting Linux VMs, please check this file: /var/log/vmware-imc/toolsDeployPkg.log