web-dev-qa-db-fra.com

Cloud-init et OVA

J'ai souvent été ici pour chercher et trouver d'excellentes solutions pour mon travail. Merci! Maintenant, je pose ma première question ici:

J'ai un fichier OVA (tar contenant les fichiers OVF et VMDK - https://en.wikipedia.org/wiki/Open_Virtualization_Format ) contenant un Ubuntu VM que je déploierai. sur ESXi à l'aide du client vSphere. J'ai également un script Shell que j'aimerais pouvoir exécuter au premier démarrage de la machine virtuelle.

Quelle serait la bonne façon de faire cela en utilisant cloud-init? Y a-t-il un endroit spécial où cloud-init chercherait un tel script?

Merci et salutations! Dinko

1
Dinko Ivanov

Pour VMware vSphere, les données utilisateur sont injectées dans le VM en tant qu’ISO via le CD-ROM. Cela peut être fait à l'aide du tableau de bord vSphere en connectant une image ISO au lecteur de CD/DVD.

Pour transmettre cet exemple de script à cloud-init s'exécutant dans un vSphere VM, définissez le lecteur de CD/DVD lors de la création de vSphere VM afin qu'il pointe vers un ISO du magasin de données.

Remarque: l'ISO doit contenir les données de l'utilisateur.

Par exemple, pour transmettre le même simple_script.bash à vSphere:

Créer l'ISO

% mkdir my-iso

REMARQUE: le nom de fichier sur l'ISO doit être: user-data.txt

 % cp simple_scirpt.bash my-iso/user-data.txt
    % genisoimage -o user-data.iso -r my-iso

Vérifier l'ISO

% Sudo mkdir /media/vsphere_iso
% Sudo mount -o loop JoeV_CI_02.iso /media/vsphere_iso
% cat /media/vsphere_iso/user-data.txt
% Sudo umount /media/vsphere_iso

Ensuite, lancez vSphere VM le fichier ISO utilisateur-data.iso joint en tant que CD-ROM.

Il est également possible de lancer une vSphere VM et de lui transmettre des données utilisateur facultatives à l'aide de Delta Cloud.

Pour plus d'informations sur Delta Cloud, voir: http://deltacloud.Apache.org

0
ddlingo