In Abiquo 3.1 and above, you can insert Unix bootstrap scripts to execute on first boot of your virtual machines in public cloud.
You can use the bootstrap script feature in all public cloud providers supported by Abiquo.
Bootstrap scripts can be used on all UNIX VMs
Windows virtual machines are not yet supported
You must open port 22 on the virtual machine. In the cloud providers that support Firewalls (such as AWS, HP Cloud and Google Compute Engine), you can use the Abiquo firewalls feature to allow access.
Abiquo will connect to the virtual machine via SSH and upload the bootstrap script before running it. If you have a public SSH key configured in Abiquo, it will also be installed on the virtual machine to allow easy access to it.
Depending on the features supported by the cloud provider, Abiquo might create a key pair to be used to access the virtual machine, or might use the default (well known) credentials for the image.
The only requirement is that the virtual machines that are being configured have a public IP address (or a reachable IP address) and have a running SSH server and the port 22 accessible. Abiquo will use an SSH connection to the virtual machine to run the bootstrap script on it.
Edit the virtual machine, and open the Bootstrap script tab. Paste your script in the text box.
Do not use any headers, such as #!/bin/sh, because your script will be included in an Abiquo wrapper bash script
With this feature you can use your own scripts or tools such as Ansible to configure your virtual infrastructure. See also http://www.abiquo.com/2014/05/14/abiquo-dynamic-inventory-plugin-for-ansible/
Abiquo will wrap the user's bootstrap script in another bash script. This is done to provide a way to store the output and the errors that the script might generate, so users can troubleshoot it if something does not work as expected. Therefore you should not include script headers because they are already included in the wrapper script. Abiquo names the wrapper script "abiquo-bootstrap". Abiquo will upload the script to the virtual machine and leave a symbolic link to the script location in the user's home directory.
From your home directory, use the following commands to see the output and status of the script: