Étiquette : virsh

29 octobre 2018 /

[pastacode lang= »bash » manual= »virsh%20nodeinfo » message= »Pour afficher le nombre total de vCPU de l’hyperviseur » highlight= » » provider= »manual »/]

[pastacode lang= »bash » manual= »virsh%20list%20%7C%20awk%20’%7Bprint%20%241%7D’%20%7C%20grep%20-oIE%20%22%5B0-9%5D*%22%20%7C%20while%20read%20word%3B%20do%20virsh%20dominfo%20%24%7Bword%7D%20%7C%20grep%20%22CPU.s%22%3B%20done%20%7C%20awk%20’BEGIN%20%7Ba%3D0%3B%7D%20%7Ba%3Da%2B%242%3B%7D%20END%20%7Bprint%20a%3B%7D' » message= »Pour afficher le nombre de vCPU que KVM a attribué à ses VMs » highlight= » » provider= »manual »/]

 

 

27 avril 2018 /

1) Pour commencer nous allons arrêter le domaine que nous souhaitons migrer

[pastacode lang= »bash » manual= »virsh%20shutdown%20nom_VM » message= » » highlight= » » provider= »manual »/]

2) Sur l’hyperviseur source, nous allons exporter la configuration du domaine dans un fichier xml:

[pastacode lang= »bash » manual= »virsh%20dumpxml%20nom_VM%20%3E%20nom_VM.xml » message= » » highlight= » » provider= »manual »/]

3 ) Toujours sur l’hyperviseur source, on copie le ou les fichiers disques du domaine que l’on souhaite migrer, depuis son emplacement dans /var/lib/libvirt/images vers le même répertoire sur l’hyperviseur de destination.

[pastacode lang= »bash » manual= »scp%20%20-p%20%2Fvar%2Flib%2Flibvirt%2Fimages%2Fnom_VM.qcow2%20hyperviseur_destination%3A%2Fvar%2Flib%2Flibvirt%2Fimages%2F » message= » » highlight= » » provider= »manual »/]

Si le chemin du disque est différent sur l’hyperviseur de destination, il faudra le modifier le fichier xml générer dans l’étape précédente pour que cela pointe au bon endroit.

4 ) On copie également notre fichier XML sur l’hyperviseur de destination

[pastacode lang= »bash » manual= »scp%20%20-p%20nom_VM.xml%20hyperviseur_destination%3A%2Ftmp%2F » message= » » highlight= » » provider= »manual »/]

5) On intègre le domaine dans KVM à l’aide de notre fichier xml:

[pastacode lang= »bash » manual= »virsh%20define%20%2Ftmp%2Fnom_VM.xml » message= » » highlight= » » provider= »manual »/]

6) Il ne reste plus qu’a démarrer notre domaine

[pastacode lang= »bash » manual= »virsh%20start%20nom_VM » message= » » highlight= » » provider= »manual »/]

 

16 mars 2018 /

On commence par lister tous nos domaines:

virsh list --all

ID      Nom            État
----------------------------------------------------
-      Centreon      fermé
-      generic      fermé
-      Ubuntu      fermé
-      win10      fermé

Ici nous voulons faire un snapshot du domaine « Ubuntu », nous allons donc regarder si il y a des snapshot existant pour ce domaine:

virsh snapshot-list --domain Ubuntu

Nom            Creation            Time            État
------------------------------------------------------------

On vérifie si le fichier disque est bien au format qemu/qcow2:

virsh dumpxml Ubuntu | grep -i qemu

<driver name='qemu' type='qcow2' cache='none'/>
<driver name='qemu' type='qcow2'/>

Pour un domaine éteint:

virsh snapshot-create-as --domain Ubuntu --name "Snapshot_test" --description "Snapshot de test"

Domain snapshot Snapshot_test created

Pour un domaine en fonctionnement:

virsh snapshot-create-as --domain Ubuntu --name "Snapshot_test" --description "Snapshot de test" --live

Domain snapshot Snapshot_test created

On peut maintenant voir notre snapshot:

virsh snapshot-list --domain Ubuntu

Nom Creation Time État
------------------------------------------------------------
Snapshot_test 2018-03-14 20:39:53 +0100 shutoff

Pour restaurer le snapshot:

virsh shutdown --domain Ubuntu
virsh snapshot-revert --domain Ubuntu --snapshotname Snapshot_test --running

Pour supprimer le snapshot:

virsh snapshot-delete --domain Ubuntu --snapshotname Snapshot_test

Domain snapshot Snapshot_test deleted

15 décembre 2017 /

Commandes de base

Lister les vms allumées:

virsh list

Lister toutes les vms:

virsh list --all

Editer le xml d’une vm:

virsh edit nom_vm

Affiche le fichier xml sur la sortie standard:

virsh dumpxml

Manipuler les images disques:

qemu-img

Informations sur une image:

qemu-img info fichier_image

Étendre la taille de l’image:

qemu-img resize fichier_image +tailleG

Éteindre une vm par l’acpi:

virsh shutdown nom_vm

Éteindre une vm en coupant l’alim:

virsh destroy nom_vm

Démarrer une vm:

virsh start vm :

Se connecter à la console d’une vm (pour en sortir « Ctrl+Shift+5"):

 

virsh console vm :

Commandes distante:

Virsh --connect qemu+ssh://nom_hyperviseur/system nom_commande

virt-viewer --connect qemu+ssh://nom_hyperviseur/system nom_vm

Bien sur il faut un accès ssh à l’hyperviseur (et le mieux est de mettre sa clé).

Comment étendre un disque (si il n’y a pas LVM …)?

1) Éteindre la vm :

virsh shutdown vm

2) Sauvegarde de l’image disque :

cp -p fichier_image fichier_image.bak

3) Étendre l’image disque :

qemu-img resize fichier_image +tailleG

3) Démarrer la vm :

virsh start vm

4) Arrêter les services et démonter la partition

5) Avec fdisk (!!!) : détruire la partition, la recréer

6) e2fsck -f /dev/partition

7) resize2fs /dev/partition

8) e2fsck -f /dev/partition

9) remonter et démarrer les services