Préparation (INSA-CVL)

Pour réaliser ces TDs, nous allons utiliser des machines virtuelles Fedora et Ubuntu. Pour cela, nous allons mettre en place libvirt et Vagrant sur notre système.

Installation de libvirtd & vagrant

Suivre les instructions officielles pour installer Vagrant: https://developer.hashicorp.com/vagrant/install

Installer aussi le démon libvirtd si nécessaire.

Configurer l’accès à libvirtd pour l’utilisateur :

$ nano /etc/libvirt/libvirtd.conf
unix_sock_group = "libvirt"
unix_sock_rw_perms = "0770"

Puis redémarrer le démon libvirtd :

$ systemctl restart libvirtd

Vérifier que libvirtd fonctionne correctement :

$ systemctl status libvirtd

Si nécessaire, ajouter votre utilisateur au groupe libvirt :

$ usermod -G libvirt user

Vérifier l’accès au démon libvirtd en tant qu’utilisateur :

$ virsh --connect=qemu:///system list --all

Récupération des images disque

Monter le partage NFS si il n’est pas déjà monté :

$ mkdir -p /mnt/
$ mount -t nfs -o soft 172.19.3.254:mnt /mnt

Créer un dossier sous votre nom (sans caractères spéciaux ni accents ou espaces) et récupérer la configuration Vagrant et l’image disque virtuelle depuis le server de fichier partagé :

$ mkdir <nomprénom>
$ cd <nomprénom>
$ cp /mnt/nfs/DATASTORE/RAVIER/* ./
$ ls
Vagrantfile
fedora-2su.box
ubuntu-2su.box
sha256sums

Installer le plugin Vagrant libvirt :

$ vagrant plugin install vagrant-libvirt

Lancer la première machine virtuelle :

$ vagrant up ubuntu

Accéder à la première machine virtuelle :

$ vagrant ssh ubuntu

Préparation pour une machine Debian

Instructions nécessaires uniquement si vous n’avez pas accès aux serveurs Xeons mais à un serveur sous Debian à la place.

Instructions
$ sudo -i

$ apt-get update
$ apt-get upgrade
$ apt-get install libvirt-daemon-system

$ rm /etc/udev/rules.d/99-kola-kvm.rules
$ rm -rf /run/libvirt*

$ usermod -aG libvirt userX

# Editer /etc/libvirt/libvirtd.conf pour définir les options:
unix_sock_group = "libvirt"
unix_sock_rw_perms = "0770"

$ systemctl edit libvirtd.socket
[Socket]
SocketUser=root
SocketGroup=libvirt
SocketMode=0770

$ systemctl edit virtlogd.socket
[Socket]
SocketUser=root
SocketGroup=libvirt
SocketMode=0770

$ systemctl restart libvirtd.socket libvirtd.service virtlogd.socket virtlogd.service

$ chmod a+rw /dev/kvm