Installation de NetBSD sur un serveur XEN

NetBSD console

Nous allons dans ce billet décrire l'installation d'un système NetBSD 5.0.1 (tout beau tout chaud) sur un serveur de virtualisation XEN (3.0). Pour ceux qui ne suivent pas régulièrement ce blog (c'est pas bien, un ave maria ce soir), vous pouvez lire cet article sur le comment d'une installation d'un serveur XEN (dom0) sous une distribution GNU/Linux Debian.

On télécharge NetBSD

On commence notre aventure par le téléchargement des noyaux xenifiers (jenifer ?):
cd /root mkdir xen mkdir netbsd cd /root/xen/netbsd wget http://ftp.netbsd.org/pub/NetBSD/NetBSD-5.0.1/i386/binary/kernel/netbsd-INSTALL_XEN3PAE_DOMU.gz wget http://ftp.netbsd.org/pub/NetBSD/NetBSD-5.0.1/i386/binary/kernel/netbsd-XEN3PAE_DOMU.gz
A noter que mon serveur Xen supporte le mode PAE (Physical Address Extension: permet à des processeurs de type x86 de gérer jusqu'à 64 giga-octets de mémoire physique sur des systèmes 32 bits, si le système d'exploitation le supporte), si ce n'est pas le cas, il suffit de récupérer les .gz sans PAE...

On installe le système NetBSD sur notre DomU

Ensuite on passe à la création du fichier de configuration du DomU (/etc/xen/netbsd):
kernel = '/root/xen/netbsd/netbsd-INSTALL-XEN3PAE_DOMU' memory = '256' root = '/dev/sda2 ro' disk = [ 'file:/xen/domains/netbsd/disk.img,sda1,w', ] name = 'netbsddev.alcasat.net' vif = [ 'ip=192.168.29.172,mac=00:16:3E:8B:F0:9F' ] on_poweroff = 'destroy' on_reboot = 'restart' on_crash = 'restart'
On génère l'image disque virtuelle (sous la forme d'un fichier de 3 Go) qui permettra de faire l'installation du système BSD.
cd /xen/domains mkdir netbsd cd netbsd dd if=/dev/zero of=disk.img bs=1024k seek=3000 count=1
On lance l'installation de NetBSD:
xm create -c  /etc/xen/netbsd
Lors de l'installation, il faut choisir une installation réseau via FTP ou HTTP. L'instraller vous demandera alors de configurer votre interface virtuelle (@IP, masque et touti quanti...). Une fois l'installation terminé, il faut aller dans le menu e: Utility menu et exécuter un shell (/bin/sh). Il faut finaliser l'installation en saisissant les commande suivante:
mount /dev/xbd0a /mnt cd /mnt/dev cp -pR /dev/rxbd* . cp -pR /dev/xbd* . halt -p
A la suite de cette dernière commande et après quelques secondes, vous voici de retour dans votre maison Dom0.

On démarre notre serveur virtuel NetBSD !

On modifie le fichier de configuration du DomU (/etc/xen/netbsd):
kernel = '/root/xen/netbsd/netbsd-XEN3PAE_DOMU' memory = '256' root = '/dev/sda2 ro' disk = [ 'file:/xen/domains/netbsd/disk.img,sda1,w', ] name = 'netbsddev.alcasat.net' vif = [ 'ip=192.168.29.172,mac=00:16:3E:8B:F0:9F' ] on_poweroff = 'destroy' on_reboot = 'restart' on_crash = 'restart'
On vérifie que le DomU a bien été lancée:
# xm list Name ID Mem VCPUs State Time(s) Domain-0 0 1503 2 r----- 8270.2 netbsddev 10 256 1 -b---- 32.0 saurondev 2 256 1 -b---- 19132.7
Ouha c'est beau :) et si on se connecte dessus en ssh:
# ssh root@192.168.29.172 NetBSD/i386 (netbsddev.alcasat.net) (console) login:
Et voili, bienvenu dans le monde magique de NetBSD.

Vous en voulez plus ?

Coquin va... Vous voulez pouvoir faire mumuse avec le meilleur Firewall open_source (j'ai nommé PF), vous allez un peu déçu car le kernel xenifier n'inclue pas PF par défaut, il va donc falloir recompiler le kernel (mais bon c'est un exercice indispensable pour tout geek *bsd...). Pour vous aider dans cette légère tache, je ne saurais trop vous conseiller la lecture de ce très bon article de GLMF.
Vus : 284
Publié par Nicolargo : 402