Инструкция по запуску в системе FreeBSD bhyve виртуализация.
Понадобилось мне запустить Linux на системе FreeBSD.
Долго думал какую виртуализацию использовать, выбрал bhyve.
В свежих версиях FreeBSD реализована полная поддержка этой виртуализации.
Систему под виртуализацию выбрал Debian.
Виртуалке я выделил 512 метров, под мои нужды самый раз.
Настройки виртуализации.
/etc/rc.conf vm_enable="YES" #vm_dir="/mnt/vms" vm_list="" cloned_interfaces="bridge0 tap0" ifconfig_bridge0="addm tap0 addm em0 up"
Добавляем автозагрузку модуля.
/boot/loader.conf if_bridge_load="YES" if_tap_load="YES" nmdm_load="YES" vmm_load="YES"
Файл с путями к созданному диску и образу системы.
# cat /mnt/vms/debian/device.map (hd0) /mnt/vms/debian/debian.img (cd0) /mnt/vms/.iso/debian-8.7.1-amd64-netinst.iso
Запуск и установка системы, стандартная установка системы, желательно сразу поднимать ssh.
# cat /mnt/vms/debian/debian.start #!/bin/sh #sleep 5 while [ 1 ]; do /usr/local/sbin/grub-bhyve -r hd0,msdos1 -m /mnt/vms/debian/device.map -M 512 debian /usr/sbin/bhyve -c 1 -m 512M -H -P -A -s 0:0,hostbridge -s 1:0,lpc -s 2:0,virtio-net,tap0 -s 4,ahci-cd,/mnt/vms/.iso/debian-8.7.1-amd64-netinst.iso -s 4,virtio-blk,/mnt/vms/debian/debian.img debian done bhyve_exit=$? exit $bhyve_exit
Скрипт запуска.
# cat /mnt/vms/debian/debian.start #!/bin/sh #sleep 5 while [ 1 ]; do /usr/local/sbin/grub-bhyve -r hd0,msdos1 -m /mnt/vms/debian/device.map -M 512 debian /usr/sbin/bhyve -c 1 -m 512M -H -P -A -s 0:0,hostbridge -s 1:0,lpc -s 2:0,virtio-net,tap0 -s 4,virtio-blk,/mnt/vms/debian/debian.img debian done bhyve_exit=$? exit $bhyve_exit
Скрипт остановки.
# cat /mnt/vms/debian/debian.stop #!/bin/sh bhyvectl --destroy --vm=debian
Смотрим в ведомой системе (FreeBSD) поднялась ли сеть для виртуалки.
# ifconfig em0: flags=8943metric 0 mtu 1500 options=42098 ether 0c:c2:7a:38:1c:0f inet 80.3.7.2 netmask 0xfffffff8 broadcast 80.3.7.7 inet 80.3.7.4 netmask 0xffffffff broadcast 80.3.7.4 inet 80.3.7.5 netmask 0xffffffff broadcast 80.3.7.5 inet 80.3.7.6 netmask 0xffffffff broadcast 80.3.7.6 media: Ethernet autoselect (1000baseT ) status: active em1: flags=8c02 metric 0 mtu 1500 options=4219b ether 0c:c4:7a:48:5c:0e media: Ethernet autoselect status: no carrier lo0: flags=8049 metric 0 mtu 16384 options=600003 inet 127.0.0.1 netmask 0xff000000 groups: lo bridge0: flags=8843 metric 0 mtu 1500 ether 02:7a:7c:29:3b:00 groups: bridge id 00:00:00:00:00:00 priority 32768 hellotime 2 fwddelay 15 maxage 20 holdcnt 6 proto rstp maxaddr 2000 timeout 1200 root id 00:00:00:00:00:00 priority 32768 ifcost 0 port 0 member: em0 flags=143 ifmaxaddr 0 port 1 priority 128 path cost 2000000 member: tap0 flags=143 ifmaxaddr 0 port 5 priority 128 path cost 2000000 tap0: flags=8943 metric 0 mtu 1500 options=80000 ether 00:bd:f6:8c:db:00 media: Ethernet autoselect status: active groups: tap Opened by PID 1125
Запускаем изначально так
/mnt/vms/debian/debian.start
После авторизовываемся в системе и поднимаем ssh, после запускать заходить в Linux через ssh.
Вот и все, мы только что подняли в FreeBSD bhyve виртуализация.
Pingback: freebsd ezjail - FRYAHA.RU