API des opérations avancées sur les VM
Guide complet des opérations avancées sur les VM dans VergeOS, y compris le clonage, les snapshots, la suppression et le dépannage
Ce guide couvre les opérations avancées des machines virtuelles dans VergeOS, notamment le clonage, la gestion des instantanés, la suppression et le dépannage. Ces opérations offrent de puissantes capacités pour la gestion du cycle de vie des VM et la reprise après sinistre.
Étape: Opérations avancées de VM (4 sur 4) Entrée: clé de VM (42), type d'opération, paramètres Sortie: VM clonées, instantanés, confirmation du nettoyage Précédent: VM configurée → Configuration de la VM Opérations courantes:
Cloner pour les modèles → Cycle de création d'une nouvelle VM
Instantané pour sauvegarde → Flux de reprise
Supprimer pour le nettoyage → Fin du cycle de vie
Ce document aide pour
"Comment cloner des VM via l'API"
"Créer des instantanés et des sauvegardes de VM"
"Restaurer des VM à partir d'instantanés"
"Supprimer des VM et effectuer le nettoyage en toute sécurité"
"Dépannage et diagnostics des VM"
"Flux de création de modèles"
"Opérations de reprise après sinistre"
"Gestion groupée des VM"
"Automatisation du nettoyage des ressources"
Référence rapide
Endpoints principaux
Actions VM:
POST /api/v4/vm_actionsSuppression de VM:
DELETE /api/v4/vms/{vm_key}Liste des VM:
GET /api/v4/vms
Actions clés
clonage: Créer une copie complète de la VMinstantané: Créer un instantané de VMrestaurer: Restaurer à partir d'un instantané
Authentification
Prérequis
La VM doit exister → Voir Création de VM
Référence rapide de l'API
Cloner la VM
POST
/api/v4/vm_actions
clé VM
Créer une copie complète
Créer un instantané
POST
/api/v4/vm_actions
clé VM
Sauvegarde à un instant donné
Restaurer un instantané
POST
/api/v4/vm_actions
clé VM
Opération de récupération
Lister les instantanés
GET
/api/v4/vms
Requête de filtrage
Trouver des instantanés
Supprimer la VM
DELETE
/api/v4/vms/{id}
clé VM
Suppression complète
État de la VM
GET
/api/v4/vms/{id}
clé VM
Vérification de la configuration
État de l'opération
GET
/api/v4/machine_status/{id}
clé machine
Surveillance à l'exécution
Index de dépannage
409 Conflit: le nom du clone existe, la VM est déjà en cours d'exécution, opération en cours
507 Stockage insuffisant: espace insuffisant pour le clone, stockage d'instantanés plein
403 Interdit: autorisations de la clé API, accès à la VM refusé, restrictions du cluster
404 Introuvable: VM introuvable, instantané introuvable, clé de VM invalide
408 Délai d'attente de la requête: délai d'attente de l'opération de clonage, délai d'attente de création de l'instantané
422 Entité non traitable: paramètres de clonage invalides, conflit lors de la restauration de l'instantané
500 Erreur interne du serveur: problèmes du système de stockage, problèmes de l'hyperviseur, défaillances du cluster
Clonage de VM
POST /api/v4/vm_actions
Description: Crée une copie complète d'une VM, y compris tous les disques et la configuration.
Clonage de base
Appel API complet:
Exemple de réponse:
Options avancées de clonage
Paramètres du clone
name
chaîne
Oui
Nom de la VM clonée
description
chaîne
Non
Description du clone
quiesce
chaîne
Non
Mettre la VM en pause avant le clonage ("true"/"false") pour assurer la cohérence des données
preserve_macs
chaîne
Non
Conserver les adresses MAC ("true"/"false")
preserve_device_uuids
chaîne
Non
Conserver les UUID des périphériques ("true"/"false")
cluster
chaîne
Non
ID du cluster cible
Options de clonage
Mettre en pause: Utilisez
"quiesce": "true"pour garantir la cohérence des données en mettant brièvement la VM en pauseConserver les MAC: Utilisez
"preserve_macs": "true"pour conserver les mêmes adresses MAC (peut provoquer des conflits réseau)Conserver les UUID des périphériques: Utilisez
"preserve_device_uuids": "true"pour conserver les identifiants des périphériquesInter-cluster: Indiquez un ID de cluster différent pour cloner vers un autre cluster
Exemple de flux de clonage
Instantanés de VM
Création d'instantanés
Appel API complet:
Restauration à partir d'instantanés
Appel API complet:
Liste des instantanés de VM
GET /api/v4/vms
Utilisez des filtres pour trouver des instantanés :
Trouver tous les instantanés d'une VM:
Flux de gestion des instantanés
Suppression et nettoyage de VM
Suppression complète de la VM
DELETE /api/v4/vms/{vm_key}
Description: Supprime une VM et élimine automatiquement toutes les ressources associées, y compris les disques, les NIC, les périphériques et les configurations.
Réponse: 200 OK en cas de suppression réussie.
Nettoyage automatique
Lorsque vous supprimez une VM à l'aide de DELETE /api/v4/vms/{vm_key}, VergeOS supprime automatiquement :
Tous les disques attachés à la VM
Toutes les interfaces réseau (NIC)
Tous les périphériques (GPU, passthrough PCI, USB, TPM, etc.)
Configuration de la VM et métadonnées
Fichiers cloud-init et configurations
Notes de la VM et documentation
Ressources machine associées
Considérations avant suppression
Avant de supprimer une VM, prenez en compte :
Sauvegarde des données: Assurez-vous que les données importantes sont sauvegardées
Instantanés: les instantanés de VM peuvent être supprimés avec la VM
Dépendances: Vérifiez si d'autres systèmes dépendent de cette VM
Configuration réseau: Notez toute configuration réseau particulière
Licences: Tenez compte des implications liées aux licences logicielles
Processus de suppression sécurisée
Étape 1 : Éteindre la VM (recommandé)
Étape 2 : Vérifier l'état d'alimentation
Étape 3 : Créer une sauvegarde finale (facultatif)
Étape 4 : Supprimer la VM et toutes les ressources
Utilisation de la clé VM
Utilisez la clé VM (par exemple, 42) à partir de la réponse de création de la VM ou de la liste des VM, et non la clé machine. Le processus de suppression gère automatiquement toutes les ressources machine associées.
Aucun nettoyage manuel requis
Contrairement à certaines plateformes de virtualisation, VergeOS gère automatiquement le nettoyage complet des ressources. Vous n'avez pas pas besoin de procéder manuellement à :
Supprimer des disques individuels
Retirer les interfaces réseau
Détacher les périphériques
Nettoyer les fichiers de configuration
Supprimer les entrées d'état de la machine
La seule DELETE /api/v4/vms/{vm_key} opération gère automatiquement tout le nettoyage.
Recherche de ressources orphelines
Gestion des erreurs et dépannage
Scénarios d'erreur courants
Échecs de création de VM
Erreur: 400 Requête incorrecte - type de machine invalide
Solution: Utilisez des types de machines valides issus de la liste prise en charge.
Conflits d'état d'alimentation
Erreur: 409 Conflit - la VM est déjà en cours d'exécution
Solution: Vérifiez l'état d'alimentation actuel avant d'envoyer des commandes d'alimentation.
Contraintes de ressources
Erreur: 507 Stockage insuffisant
Solution: Choisissez un autre niveau de stockage ou réduisez la taille du disque.
Échecs de clonage
Erreur: 409 Conflit - le nom du clone existe déjà
Solution: Utilisez des noms uniques pour les VM clonées.
Surveillance des opérations de VM
Vérification de l'état de l'opération
De nombreuses opérations de VM sont asynchrones. Surveillez la progression à l'aide de :
Délais d'attente des opérations
Définissez des délais d'attente appropriés pour les opérations longues :
Création de VM: 5 à 10 minutes
Opérations de clonage: 10 à 30 minutes (selon la taille)
Création d'instantané: 2 à 5 minutes
Restauration d'instantané: 5 à 15 minutes
Changements d'état d'alimentation: 30 à 60 secondes
Suppression de VM: 2 à 5 minutes
Logique de relance
Implémentez une logique de relance pour les échecs transitoires :
Débogage des problèmes de VM
Vérifier la configuration de la VM
Vérifier l'état de la machine
Vérifier les ressources système
Bonnes pratiques
Testez toujours les opérations dans les environnements de développement d'abord
Créez des instantanés avant les changements majeurs
Surveillez l'utilisation des ressources pendant les opérations
Implémentez une gestion des erreurs appropriée dans les scripts d'automatisation
Utilisez des noms descriptifs pour les clones et les instantanés
Nettoyez régulièrement les ressources inutilisées
Documentez les procédures opérationnelles pour votre équipe
Mis à jour
Ce contenu vous a-t-il été utile ?