GNU/Linux >> Tutoriels Linux >  >> Linux

Comment cloner des machines virtuelles basées sur KVM sur Redhat Linux

Objectif

L'instruction suivante explique comment cloner des machines virtuelles basées sur KVM sur Redhat Linux à partir de la ligne de commande à l'aide de virt-clone commande.

Versions du système d'exploitation et du logiciel

  • Système d'exploitation : – Redhat 7.3
  • Logiciel : – libvirtd (libvirt) 2.0.0

Exigences

Un accès privilégié à votre installation Redhat Linux sera nécessaire.

Difficulté

FACILE

Congrès

  • # - nécessite que les commandes linux données soient exécutées avec les privilèges root soit directement en tant qu'utilisateur root, soit en utilisant sudo commande
  • $ - nécessite que les commandes linux données soient exécutées en tant qu'utilisateur régulier non privilégié

Instructions

Obtenir les informations de la machine virtuelle source

Avant de commencer à cloner une machine virtuelle, nous devons d'abord obtenir quelques informations de base à son sujet. Les informations minimales absolues requises sur la machine virtuelle source que nous sommes sur le point de cloner seraient son nom et le numéro de disque utilisé. Pour obtenir le nom des machines virtuelles, procédez comme suit :

# virsh list
 Id    Name                           State
----------------------------------------------------
 1     server1.linuxconfig.org            running

Ensuite, nous aimerions peut-être connaître le nombre de disques utilisés par nos machines virtuelles sources ainsi que leur emplacement. Les informations sur l'emplacement des disques sont facultatives car elles ne nous fournissent qu'un indice sur l'endroit où stocker les nouveaux fichiers de disque clone dans un souci de cohérence :

 # virsh dumpxml server1.linuxconfig.org | grep "source file"
      <source file='/var/lib/libvirt/images/server1.linuxconfig.org.qcow2'/>
      <source file='/var/lib/libvirt/images/server1.linuxconfig.org-1.qcow2'/>
      <source file='/var/lib/libvirt/images/server1.linuxconfig.org-2.qcow2'/>

À partir de la sortie ci-dessus, nous pouvons voir que notre machine virtuelle d'origine a trois disques stockés à l'emplacement /var/lib/libvirt/images/ .

Suspendre la machine virtuelle source

Avant que le clonage puisse avoir lieu, notre machine virtuelle source doit être mise en pause/suspendue :

# virsh suspend server1.linuxconfig.org
Domain server1.linuxconfig.org suspended

Clonage automatique de la machine virtuelle

Une façon de cloner des machines virtuelles basées sur KVM sur Redhat Linux consiste à utiliser --auto-clone interrupteur. Le principal avantage de --auto-clone est qu'il clone automatiquement n'importe quel nombre de disques source, l'utilisateur n'a donc pas besoin de connaître l'emplacement et le numéro du disque attaché à la machine virtuelle d'origine.

L'inconvénient est que l'utilisateur n'est pas en mesure de spécifier des noms de disque et de privilégier un emplacement alternatif aux nouveaux disques virtuels clonés. La commande linux suivante clonera la machine virtuelle d'origine server1.linuxconfig.org vers une nouvelle machine virtuelle clone server2.linuxconfig.org automatiquement en utilisant --auto-clone commutateur.

# virt-clone --original=server1.linuxconfig.org --name=server2.linuxconfig.org --auto-clone
WARNING  Setting the graphics device port to autoport, in order to avoid conflicting.
Allocating 'server2.linuxconfig.org.qcow2'                                      |  10 GB  00:00:00     
Allocating 'server1.linuxconfig.org-1-clone.qcow2'                              | 5.0 GB  00:00:07     
Allocating 'server1.linuxconfig.org-2-clone.qcow2'                              | 5.0 GB  00:00:00     
Clone 'server2.linuxconfig.org' created successfully.

Comme nous pouvons le voir sur la sortie ci-dessus, le --auto-clone cloné automatiquement tous les disques virtuels attachés à la machine virtuelle d'origine et ajouté clone mot-clé à tous les disques supplémentaires. La nouvelle machine virtuelle clonée devrait maintenant attendre dans shut off état à démarrer :

# virsh list --all
 Id    Name                           State
----------------------------------------------------
 1     server1.linuxconfig.org            paused
 -     server2.linuxconfig.org            shut off

Cloner manuellement plusieurs disques

Pour mieux contrôler l'emplacement et le nom du nouveau disque cloné, nous pouvons omettre le --auto-clone basculez et fournissez tout le nouveau nom de disque cloné et le chemin de destination en utilisant --file interrupteur. Notez le numéro de --file les arguments fournis doivent être égaux au nombre de disques attachés à la machine virtuelle d'origine. Exemple :

# virt-clone --original=server1.linuxconfig.org --name=server2.linuxconfig.org --file /var/lib/libvirt/images/server2.linuxconfig.org.img --file /var/lib/libvirt/images/server2.linuxconfig.org-1.img --file /var/lib/libvirt/images/server2.linuxconfig.org-2.img
WARNING  Setting the graphics device port to autoport, in order to avoid conflicting.
Allocating 'server2.linuxconfig.org.img'                                                                                                                                                            |  10 GB  00:00:00     
Allocating 'server2.linuxconfig.org-1.img'                                                                                                                                                          | 5.0 GB  00:00:07     
Allocating 'server2.linuxconfig.org-2.img'                                                                                                                                                          | 5.0 GB  00:00:00     
Clone 'server2.linuxconfig.org' created successfully.

Reprendre/Démarrer

À ce stade, nous sommes prêts à reprendre notre machine virtuelle d'origine server1.linuxconfig.org :

# virsh resume server1.linuxconfig.org
Domain server1.linuxconfig.org resumed

et démarrez également la machine virtuelle nouvellement clonée server2.linuxconfig.org :

# virsh start server2.linuxconfig.org
Domain server2.linuxconfig.org started

Vérifiez l'état de toutes les machines virtuelles :

# virsh list --all
 Id    Name                           State
----------------------------------------------------
 1     server1.linuxconfig.org            running
 3     server2.linuxconfig.org            running

Linux
  1. Comment supprimer des machines virtuelles basées sur KVM sur Redhat Linux

  2. Configuration du démarrage automatique de la machine virtuelle sur l'hôte Redhat Linux

  3. Comment configurer la virtualisation sur Redhat Linux

  4. Comment forcer l'installation en mode texte de Redhat Linux

  5. Comment confirmer la version de RedHat Enterprise Linux ?

Comment sauver des machines virtuelles avec Virt-rescue

Comment exporter et importer des machines virtuelles KVM sous Linux

Comment exporter et importer des machines virtuelles VirtualBox

Comment cloner une machine virtuelle dans VirtualBox

Comment installer MX Linux sur Virtual Box

Comment créer et gérer des machines virtuelles dans KVM