Tout d'abord, effectuez une installation standard de NetBSD/i386 current à partir du snapshot le plus récent. Ensuite, installez sysutils/grub, sysutils/xentools30, et sysutils/xenkernel30, et copiez le kernel xen dans votre /.
# cp /usr/pkg/xen3-kernel/xen.gz /
Maintenant, nous avons besoin d'un kernel NetBSD/Xen dom0 qui est fourni avec la distribution i386, qu'il faudra installer en tant que /netbsd (pensez à conserver votre kernel standard au cas ou ça se passerai mal.).
Passons maintenant à la configuration de grub.
# charger la première entrée automatiquement default=0 # booter après 10 secondes si aucune réaction de la part de l'user timeout=10 # entrée xen + netbsd dom0 title Xen 3.0 / NetBSD root (hd0,0) kernel (hd0,a)/xen.gz dom0_mem=131072 module (hd0,a)/netbsd root=/dev/wd0a ro console=pc # entrée netbsd "normal" au cas ou xen ne booterai pas. title NetBSD bootloader root (hd0,0) chainloader +1
Redémarrez, et *théoriquement* xen a dû booter et charger le kernel NetBSD dom0.
Nous allons passer à la création d'un domU tournant sous NetBSD 3.1 (= un guest).
Il nous faut d'abord créer les entrées nécéssaires à xen dans /dev
# cd /dev && sh MAKEDEV xen
Poursuivons en lançant xend et xenbackendd :
# xend start && xenbackendd
Il faut tout d'abord créer un fichier de taille adéquate:
# dd if=/dev/zero of=/path/diskimg bs=1m count=2k # pour créer un disque de 2 Go
Création du fs:
# newfs -F /path/diskimg
Ensuite, mapper le fichier sur un vnd(4):
# vnconfig vnd0 /path/diskimg
Maintenant, monter le disque virtuel: (Notez que pour ce domU plutôt basique, je ne crée pas différents label, tout est sur la même partition. )
# mount -t ffs /dev/vnd0a /mnt/blah/
Installez le kernel NetBSD/Xen domU dans /netbsd_3.1_domU (dans l'arborescence de votre dom0).Puis, récuperez les sets que vous voulez installer, et décompressez-les dans /mnt/blah. Pensez aussi à mettre une copie du kernel NetBSD/Xen domU dans /netbsd dans votre domU et à effectuer la configuration standard: /etc/rc.conf toussa.
Éditez le fstab de votre domU et mettez-y une ligne de ce genre:
/dev/xbd0a / ffs rw,softdep 0 0
Passons au fichier de configuration du domU, éditez /usr/pkg/etc/xen/monsupairdomU:
# -*- mode: python; -*- # emplacement du kernel domU kernel = "/netbsd_3.1_domU" # mémoire allouée au domU memory = 128 # nom du domU pour l'identifier name = "monsupairdomU" # interface réseau (laisser vide pour configuration automatique) vif = [ '' ] # emplacement du disque virtuel, possibilité d'utiliser une partition réelle avec phy:/dev/partition au lieu de file:/ disk = [ 'file:/path/diskimg,xbd0a,w' ] # root_device qui sera passé en argument au kernel root = "/dev/xbd0a"
Voilà ! Le domU est configuré.
Créer le fichier /etc/ifconfig.bridge0 (remplacer wm0 par votre interface réseau réelle) :
create !brconfig $int add wm0 up
Editer le fichier /usr/pkg/etc/xen/scripts/vif-bridge et remplacer la ligne:
xbridge=$(xenstore-read "$xpath/bridge")
par:
xbridge=bridge0
(Oui, c'est gruik, mais ça marche.)
Ensuite, ajouter ça au /etc/rc.conf du domU:
dhclient=YES dhclient_flags="xennet0"
Penser à démonter et à unmapper le vnd:
# umount /mnt/blah && vndconfig -u vnd0
Et maintenant, lançons le domU !
# xm create -c /usr/pkg/etc/xen/monsupairdomU
Et là, normalement, vous devriez voir votre domU booter, et avoir accès à la console de votre domU. (Ctrl-] pour détacher la console)
Tip en grande partie repompé du howto NetBSD/Xen 2, adapté pour xen 3.
À suivre: installation de guests melenusmes.