AltCloud¶
The datasource AltCloud will be used to pick up user-data on RHEVm and vSphere.
RHEVm¶
For RHEVm v3.0 the user-data is injected into the VM using floppy injection via the RHEVm dashboard “Custom Properties”.
The format of the “Custom Properties” entry must be:
floppyinject=user-data.txt:<base64 encoded data>
For example, to pass a simple bash script:
$ cat simple_script.bash
#!/bin/bash
echo "Hello Joe!" >> /tmp/JJV_Joe_out.txt
$ base64 < simple_script.bash
IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8gSm9lISIgPj4gL3RtcC9KSlZfSm9lX291dC50eHQK
To pass this example script to cloud-init
running in a RHEVm v3.0 VM
set the “Custom Properties” when creating the RHEMv v3.0 VM to:
floppyinject=user-data.txt:IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8gSm9lISIgPj4gL3RtcC9KSlZfSm9lX291dC50eHQK
Note
The prefix with file name must be: floppyinject=user-data.txt:
It is also possible to launch a RHEVm v3.0 VM and pass optional user data to it using the Delta Cloud.
vSphere¶
For VMWare’s vSphere the user-data is injected into the VM as an ISO via the CD-ROM. This can be done using the vSphere dashboard by connecting an ISO image to the CD/DVD drive.
To pass this example script to cloud-init
running in a vSphere VM
set the CD/DVD drive when creating the vSphere VM to point to an
ISO on the data store.
Note
The ISO must contain the user-data.
For example, to pass the same simple_script.bash
to vSphere:
Create the ISO¶
$ mkdir my-iso
Note
The file name on the ISO must be: user-data.txt
$ cp simple_script.bash my-iso/user-data.txt
$ genisoimage -o user-data.iso -r my-iso
Verify the ISO¶
$ sudo mkdir /media/vsphere_iso
$ sudo mount -o loop user-data.iso /media/vsphere_iso
$ cat /media/vsphere_iso/user-data.txt
$ sudo umount /media/vsphere_iso
Then, launch the vSphere VM the ISO user-data.iso
attached as a CD-ROM.
It is also possible to launch a vSphere VM and pass optional user data to it using the Delta Cloud.