Import et export
Importer une machine virtuelle depuis un paquet OVA ou OVF et l'exporter en paquet OVF dans la console, et via des baux de transfert avec la CLI ou l'API.
Un paquet OVF décrit une machine virtuelle dans un descripteur XML et transporte ses disques sous forme de fichiers distincts ; un OVA est le même paquet dans une seule archive. La console importe et exporte des paquets depuis sa page Importation et exportation. Pour un import, il vous faut le paquet sur votre ordinateur, un groupe de ressources et un datastore disposant de suffisamment d'espace libre, ainsi qu'un réseau du cluster pour chaque réseau que nomme le paquet. Pour un export, il vous faut une machine hors tension que vous avez le droit d'exporter.
Dans la console
Pour importer un paquet :
Sur la page d'accueil, sélectionnez Importation et exportation, ou ouvrez le menu d'actions d'un hôte et sélectionnez Importer un OVA ou OVF.
(Agrandir)
Sélectionnez Importer un OVA ou OVF. L'assistant Importer une machine virtuelle s'ouvre. À l'étape Paquet, sélectionnez Choisir des fichiers et choisissez un fichier OVA, ou un fichier OVF accompagné de ses fichiers de disque. Les fichiers restent sur votre ordinateur. La console lit le descripteur et affiche son nom, la taille de téléchargement, la taille déployée et le nombre de réseaux. Lorsque des fichiers de disque manquent, elle les liste.
(Agrandir)
- À l'étape Destination, saisissez le Nom de la machine virtuelle, choisissez le Groupe de ressources et le Datastore, et, en option, le Dossier et l'Hôte. La console compare l'espace libre du datastore à l'espace dont la machine a besoin.
- À l'étape Réseaux, connectez chaque réseau du paquet à un réseau du cluster. Un réseau laissé sans connexion exclut ses cartes réseau.
- À l'étape Récapitulatif, vérifiez les processeurs, la mémoire, les cartes réseau et les disques, puis sélectionnez Démarrer l’importation.
- Laissez la page ouverte pendant l'envoi des disques. Elle affiche la progression par fichier, et Annuler l’importation arrête l'import. Lorsqu'il se termine, sélectionnez Ouvrir la machine virtuelle.
Pour exporter une machine virtuelle :
- Mettez la machine hors tension.
- Sélectionnez Exporter en OVF sous Autres actions, puis Préparer l’exportation. Le contrôleur prépare les disques.
- Sélectionnez Enregistrer tous les fichiers pour enregistrer tous les disques, ou enregistrez les fichiers un par un, puis sélectionnez Enregistrer le descripteur (OVF) pour enregistrer le descripteur OVF.
Laissez la boîte de dialogue ouverte jusqu'à ce que vous ayez enregistré tous les fichiers, puis sélectionnez Terminer l’exportation. Annuler l’exportation libère l'export sans le terminer.
(Agrandir)
Résultat
Après un import, la machine se trouve dans l'inventaire, dans le dossier que vous avez choisi, hors tension. Après un export, vous disposez sur votre ordinateur des fichiers de disque et du descripteur. Après l'import liste les vérifications à effectuer sur une machine importée, et Importer un paquet OVA ou OVF décrit ce qu'un import reprend.
Automatisation
Avec la CLI
Un import passe par un bail de transfert : un objet de courte durée qui nomme les fichiers à envoyer ou à recevoir. Analysez d'abord le descripteur, construisez ensuite le plan, puis importez. Les trois requêtes acceptent un corps JSON qui contient le document OVF dans ovfDescriptor, sous la forme d'une seule chaîne échappée :
kyvernon ovf parse --body-file parse.json
kyvernon ovf import-spec --body-file import.json
kyvernon ovf import-vapp --pool <pool> --body-file import.jsonimport.json :
{
"datastoreId": "datastore-1",
"entityName": "web-01",
"folderId": "group-v5",
"networkMapping": [{"name": "VM Network", "networkId": "network-1"}],
"ovfDescriptor": "<?xml version=\"1.0\"?>..."
}parse lit le descripteur. import-spec renvoie le plan : la machine qui serait créée avec ses disques, ses cartes réseau et ses lecteurs CD/DVD, ainsi que warnings et errors ; une carte réseau dont le réseau n'est pas associé est exclue avec un avertissement. import-vapp crée la machine et renvoie un bail. Envoyez chaque fichier que le bail marque requireUpload, puis terminez le bail :
kyvernon nfc get <lease>
kyvernon nfc upload <lease> disk-0.vmdk ./disk-0.vmdk
kyvernon nfc progress <lease> --percent 100
kyvernon nfc complete <lease>nfc abort <lease> annule le transfert. Pour exporter, demandez un bail sur la machine, téléchargez ses fichiers puis terminez le bail :
kyvernon vm export <id>
kyvernon nfc download <lease> disk-0.vmdk --to disk-0.vmdk
kyvernon nfc complete <lease>ovf create-descriptor construit le descripteur à partir des métadonnées des fichiers exportés ; son corps nomme la machine (vmId) et les fichiers (ovfFiles) et peut définir name et includeImageFiles.
Avec l'API
| Opération | Requête |
|---|---|
| Analyser un descripteur | POST /v1/ovf/parse |
| Planifier un import | POST /v1/ovf/import-spec |
| Importer | POST /v1/resource-pools/{id}/import-vapp |
| Exporter | POST /v1/vms/{id}/export |
| Lire, progression, terminer, annuler | GET /v1/nfc-leases/{id}, POST .../progress, POST .../complete, POST .../abort |
| Envoyer ou récupérer un fichier | PUT ou GET /v1/nfc-leases/{id}/files/{name} |
| Construire un descripteur | POST /v1/ovf/create-descriptor |
Un bail indique son state (initializing, ready, done ou error), les transferProgress et initializeProgress en pourcentage, et la liste des files avec leurs URL de transfert. Les outils écrits pour l'API vSphere accèdent aux mêmes fonctions via ImportVApp, ExportVm et le gestionnaire OVF.
Voir aussi
Version 0.1. Dernière modification : 2026-11-14