January 05 2019, 00:00#

Gérer ses VM bhyve avec vm-bhyve

Pour faire suite à mon billet du 4 janvier, ci-dessous une petite introduction sur la gestion des VM bhyve sous FreeBSD avec vm-bhyve.

L'objectif est le même que celui de mon précédent billet, virtualiser une machine Debian sous FreeBSD à l'aide de bhyve.

Les instructions suivantes sont à exécuter en tant que root.

Préparation de l'hôte

Installation de vm-bhyve

pkg install grub2-bhyve vm-bhyve
sysrc vm_enable=YES
sysrc vm_delay=5
sysrc vm_dir=/bhyve

Charger les modules noyau nécessaires

kldload nmdm vmm if_tap if_bridge

Persistance

sysrc -f /boot/loader.conf nmdm_load=YES
sysrc -f /boot/loader.conf vmm_load=YES
sysrc -f /boot/loader.conf if_tap_load=YES
sysrc -f /boot/loader.conf if_bridge_load=YES

Initialisation

mkdir /bhyve
vm init

vm-bhyve fournit des modèles de machine. Pour les récupérer :

cp /usr/local/share/examples/vm-bhyve/* /bhyve/.templates/

Création d'un pont réseau avec l'interface physique em0.

vm switch create public
vm switch add public em0

Créer une VM Debian

  • Nom d'hôte : exemple
  • Mémoire : selon le modèle /bhyve/.templates/debian.conf
  • Taille du disque virtuel : 16G
  • Système d'exploitation : Debian GNU/Linux Stretch
  • Image d'installation : debian-9.6.0-amd64-netinst.iso

Récupération de l'image d'installation

vm iso https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-9.6.0-amd64-netinst.iso

Création de la VM

vm create -t debian -s 16G exemple

Installation du système

vm -f install exemple debian-9.6.0-amd64-netinst.iso

Gérer une VM

Se connecter à la console de la VM

vm console exemple

Se déconnecter de la console

Pour se déconnecter de la console, il faut être logué sur le système invité, puis utiliser la combinaison ~+Ctrl-D. Cela ne fonctionne pas depuis l'invite de connexion du système invité, d'où la nécessité d'être logué. Plus d'info dans man 1 cu.

Stopper la VM

vm stop exemple

Démarrer la VM

vm start exemple

Lister les VMs

vm list

Supprimer une VM

vm stop exemple
vm destroy exemple

Liens utiles

Tags : unix freebsd bhyve virtualisation