PROJET AUTOBLOG


Planet-Libre

source: Planet-Libre

⇐ retour index

Fitzdsl Blog : Comment utiliser le nouveau virsh provider de Foreman 1.4

dimanche 19 janvier 2014 à 15:30

Ce matin j’ai décidé de tester une nouvelle fonctionalité de Foreman 1.4 : le nouveau DHCP, DNS et TFTP provider : virsh.
Virsh provider permet de manager via la Libvirt les réseaux virtuels (via dnsmasq) pour du test ou du dévelopement en local. Cela permet d’avoir un workflow complet de provisioning sans avoir à installer bind, tftpd et dhcpd.

Ce post est largement inspiré de la documentation de Foreman 1.4.

Configuration de la Libvirt

La première chose à faire est de configurer un réseau persistent à la libvirt.
Créez un fichier nommé net-defintion.xml. Vous pouvez bien sur changer le nom du réseau, les ranges d’IP, le nom du domaine, etc ..

$ cat net-defintion.xml

default
16b7b280-7462-428c-a65c-5753b84c7545
















Vous devez ensuite créer et démarrer le réseau par la libvirt:

# virsh net-define --file net-definition.xml
# virsh net-start default

Ensuite nous devons configurer le répertoire qui va servir les fichiers TFTP. Les commandes ci-dessous viennent tout droit de la documentation de Foreman pour Fedora :

mkdir -p /var/tftproot/{boot,pxelinux.cfg}
yum -y install syslinux
cp /usr/share/syslinux/{pxelinux.0,menu.c32,chain.c32} /var/tftproot
chgrp -R nobody /var/tftproot
find /var/tftproot/ -type d | xargs chmod g+s

Configuration du smart-Proxy

Vous devez avoir un smart-proxy qui tourne en local sur votre machine. Celui-ci va prendre en charge TFTP, DNS and DHCP.
Il faut maintenant configurer celui pour utiliser le nouveau provider :

:tftp: true
:tftproot: /var/tftproot
:tftp_servername: 192.168.122.1
:dns: true
:dns_provider: virsh
:dhcp: true
:dhcp_vendor: virsh
:virsh_network: default

Vérifiez que votre smart-proxy a les droits sudo suivants:

Defaults !requiretty
foreman-proxy ALL=/usr/bin/virsh

Configuration de Foreman

Vous devez d’abord créer le smart-proxy (ou raffraichir ses features si il existait déjà):

Dans Infrastructure:
New proxy : http://localhost:8443

Vous devez ensuite créer un nouveau domaine et sous-réseau:

Dans mon cas:

Name: Home
Network address: 192.168.122.0
Netmask: 255.255.255.0
Start IP Range: 192.168.122.2
Stop IP Range: 192.168.122.255

Créer une nouvelle VM

Lorsque vous allez créer une nouvelle VM, prennez soin de sélectionner dans l’onglet « Virtual Machine »:

Vous savez maintenant créer un environement complet de provisioning avec Foreman. La seule fonctionalité manquante est le que PTR record n’est pas créé.

Un grand merci à Lukas (@lzap) qui à implémenté cette super fonctionnalité !

Gravatar de Fitzdsl Blog
Original post of Fitzdsl Blog.Votez pour ce billet sur Planet Libre.