virsh

Rédigé par Paulo Aucun commentaire
Classé dans : Virtualisation Mots clés : virsh, libvirt

 

Il existe plusieurs solutions de Virtualisation disponibles sous Fedora.
Libvirt est une bibliothèque permettant d'interagir avec différentes solutions de virtualisation ( dont notamment  KVM/QEMU  ) mais il existe aussi Xen, VirtualBox...

 


 

Autoriser user non root à se servir des commandes "virsh" :

#Creation du fichier suivant avec le nom du user (ex : toto ) à autoriser :
#cat /etc/polkit-1/localauthority/50-local.d/50-org.libvirt.unix.manage.pkla
    [Allow a user to manage virtual machines]
    Identity=unix-user:toto
    Action=org.libvirt.unix.manage
    ResultAny=yes
    ResultInactive=yes 
    ResultActive=yes




Eviter d'avoir a saisir l'URI sous libvirt (option -c des commandes) :

export LIBVIRT_DEFAULT_URI=qemu:///system





Parmi les outils fournis par libvirt, voici quelques lignes sur la commande virsh qui permet la gestion de vos VM en ligne de commande :


Gestion de la connexion à l'hyperviseur :
-avec la commande "virsh -c qemu:///system" pour se retrouver sous un environnement virsh.
 

virsh -c qemu:///system
Bienvenue dans virsh, le terminal de virtualisation interactif.

Taper : « help » pour l'aide ou « help » avec la commande
« quit » pour quitter

virsh #list all 



-même commande sans passer par l'environnement virsh :
 

virsh -c qemu:///system list --all


-possibilité de creer une connexion par defaut en rajoutant une ligne dans le bashrc de l'utilisateur :

cat /home/user/.basrhrc
...
#virsh connect default
export LIBVIRT_DEFAULT_URI="qemu:///system"
...

A la prochaine execution du bashrc, la connexion sera "automagique":


Gestion des snapshots :
-création d'un snapshot (VM stoppée ou pas...)

virsh snapshot-create-as --domain VM1 --name Test 
                         --description "Test de Snapshot en ligne de commande"


- restauration snapshot (VM stoppée ou pas...):

virsh snapshot-revert  VM1  Test


 

- liste des snapshots pour une VM :

#liste des snapshots d'une VM
virsh snapshot-list VM1

#description détaillée...
virsh snapshot-info VM1 --current
virsh snapshot-info VM1 --snapshotname Test

 

Ajout interface reseau a une VM :

#ajout interface
virsh attach-interface --domain lindvd027018-2007V2.20_x32_j43-ssamba 
   --type network --source default --model virtio
   --mac 52:54:00:4b:73:5f --config

#reboot de la vm


Lorsque la VM a redémmaré :
 

#on doit voir la nouvelle interface
 ifconfig -a

#on peut lui donner une @IP dynamique + une route 
ifconfig eth3 192.168.122.63/24
ip route add 10.125.35.2 via 192.168.122.1


Optimisation des disques :
Permet de gagner de l'espace disque (tout plein de GiGo) en retassant l'image de la VM

#on tasse le bazar sur un nouveau disque
qemu-img convert -p -O qcow2 diskVM.qcow2 diskVMbis.qcow2


#on renomme le disque comme à l'origine
mv diskVMbis.qcow2 diskVM.qcow2




Quelques commandes en vrac :
 

#liste de toutes les VM définies
virsh list --all

#liste des VM en execution
virsh list

#demarrer une VM
virsh start VM1

#lancer un terminal sur la VM1
virt-viewer VM1

#acceder à la console d'une VM
virsh console VM1
Ps: il faut rajouter 'console=ttyS0' sur la ligne kernel du grub.conf


Excellent aide-mémoire : ici

Les commentaires sont fermés.