Préparation (INSA-CVL)

Pour réaliser ces TDs, nous allons utiliser des machines virtuelles Fedora et Ubuntu.

Nous allons mettre en place un environement pour utiliser Vagrant avec libvirt.

Toutes ces opérations doivent être effectuée sur le Xeon sur CentOS.

En tant qu’utilisateur root

Installer libvirtd et Vagrant :

root@xeon $ yum upgrade -y
root@xeon $ dnf config-manager --set-enabled crb
root@xeon $ yum install -y qemu-kvm libvirt rsync libvirt-devel ruby-devel gcc
root@xeon $ yum install -y yum-utils
root@xeon $ sudo yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
root@xeon $ sudo yum -y install vagrant

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

root@xeon $ vim /etc/libvirt/libvirtd.conf
unix_sock_group = "libvirt"
unix_sock_rw_perms = "0770"
root@xeon $ usermod -G libvirt user
root@xeon $ systemctl restart libvirtd

Vérifier qu’il fonctionne correctement :

root@xeon $ systemctl status libvirtd

En tant qu’utilisateur user

Vérifier l’accès au démon libvirtd :

user@xeon $ virsh --connect=qemu:///system list --all

Récupérer la configuration Vagrant et l’image disque virtuelle depuis le server de fichier partagé :

user@xeon $ ls
Vagrantfile
fedora-2su.box
ubuntu-2su.box

Installer le plugin Vagrant libvirt :

user@xeon $ vagrant plugin install vagrant-libvirt

Lancer la première machine virtuelle :

user@xeon $ vagrant up ubuntu

Accéder à la première machine virtuelle :

user@xeon $ 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