vm-bhyve:bhyve虚拟机的管理系统@FreeBSD

先说情况,当前创建虚拟机后网络没有调通....不明白是最近自己点背,还是确实有难度...

缘起:

前段时间学习bhyve虚拟机,发现bvm这个虚拟机管理系统,但是实践下来发现网络方面好像有问题,至少我花了两天时间都没有配置成功。于是继续寻找,通过pkg search bhyve,发现了vm-bhyve这个虚拟机的管理系统。

pkg search bhyve

bhyve+-0.1.0 BHyVe with unofficial extensions

bhyve-firmware-1.0_1 Collection of Firmware for bhyve

bhyve-rc-4 FreeBSD RC script for starting bhyve guests in tmux

edk2-bhyve-g202308_4 EDK2 Firmware for bhyve

grub2-bhyve-0.40_10 Grub-emu loader for bhyve

rubygem-vagrant-bhyve-0.1.0 Vagrant provider plugin to support bhyve

u-boot-bhyve-arm64-2023.10_1 Cross-build das u-boot for model bhyve-arm64

uefi-edk2-bhyve-csm-0.2_4,1 UEFI EDK2 firmware for bhyve with CSM (16-bit BIOS)

vm-bhyve-1.5.0 Management system for bhyve virtual machines

vm-bhyve-devel-1.5.0.26

介绍

bhyve是FreeBSD下的虚拟化解决方案,它提供了一种在FreeBSD上创建和运行虚拟机的方法。支持多种操作系统,高效精简。

使用命令行操作,帮助用户轻松创建、启动和停止虚拟机。

快速使用

1. pkg install vm-bhyve
2. zfs create pool/vm
3. sysrc vm_enable="YES"
4. sysrc vm_dir="zfs:pool/vm"
5. vm init
6. cp /usr/local/share/examples/vm-bhyve/* /mountpoint/for/pool/vm/.templates/
7. vm switch create public
8. vm switch add public em0
9. vm iso https://download.freebsd.org/ftp/releases/ISO-IMAGES/11.2/FreeBSD-11.2-RELEASE-amd64-bootonly.iso
10. vm create myguest
11. vm install [-f] myguest FreeBSD-11.2-RELEASE-amd64-bootonly.iso
12. vm console myguest

下面是详细安装使用过程。

安装

直接使用pkg进行安装

pkg install vm-bhyve

安装之后提示:

--

To enable vm-bhyve, please add the following lines to rc.conf,

depending on whether you are using ZFS storage or not. Please note

that the directory or dataset specified should already exist.

vm_enable="YES"

vm_dir="zfs:pool/dataset"

OR

vm_enable="YES"

vm_dir="/directory/path"

Then run 'vm init'.

因此我们需要按照提示进行相应的配置。

配置

设置启动配置

按照提示进行配置,可以直接使用命令:

sysrc vm_enable="YES"

sysrc vm_dir="/root/vmbhyve"

也可以将以下两句写入/etc/rc.conf文件,然后执行 sh /etc/sh 即可。

vm_enable="YES"

vm_dir="/root/vmbhyve"

然后进行初始化:

vm init

将例子文件拷贝到主目录

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

配置网络

vm switch create public
vm switch add public em0

对我的机器来说,是igb0网口

wm switch add public igb0

启动

配置安装光盘

vm iso https://mirrors.ustc.edu.cn/freebsd/releases/ISO-IMAGES/14.1/FreeBSD-14.1-BETA3-amd64-bootonly.iso

vm install myguest http://FreeBSD-14.1-BETA3-amd64-bootonly.iso

开始启动

vm install myguest FreeBSD-14.1-BETA3-amd64-bootonly.iso

Starting myguest

* found guest in /root/vmbhyve/myguest

* booting...

root@fbhost:~/vmbhyve #

连接虚拟机

vm console myguest

不出意外的出意外了。

dhcp拿不到ip地址

总结

暂时用vm-bhyve还是没有调通虚拟机的网络部分。

调试

绑定igb0网络出错

switch add public igb0

/usr/local/sbin/vm: ERROR: failed to add member igb0 to the virtual switch public

好像这台机器的虚拟网那边有些乱了。强制虚拟机运行起来,也是无法拿到dhcp地址,手工设地址也连不上。

启动虚拟机报错

vm install testvm freeBSD-14.1-BETA3-amd64-bootonly.iso

/usr/local/sbin/vm: ERROR: unable to locate iso file - 'freeBSD-14.1-BETA3-amd64-bootonly.iso'

不明白这里为什么没有这个iso

后来怎么又不报错了呢? 反正又从中科大重新配了一下启动光盘,就好了:

vm iso https://mirrors.ustc.edu.cn/freebsd/releases/ISO-IMAGES/14.1/FreeBSD-14.1-BETA3-amd64-bootonly.iso

网络不通

把这两句配上试试

network0_type="virtio-net"
network0_switch="public"

还是不通,最近调的虚拟机网络都不通...

vm console myguest 无法连接虚拟主机

/usr/local/sbin/vm: ERROR: myguest doesn't appear to be a valid virtual machine

但是换了一个控制台,就登上去了。

命令报错-su: switch: not found

而且用其它的没有的命令测试,也是有-su的报错:

-su: ldde: not found

为什么发的命令会报错:-su: ldde: not found ,如果没有ldde这个命令,也不应该有-su 什么事啊

原来命令前面少了vm,不是 switch add public igb0, 而整个命令是:

vm switch add public igb0

相关推荐
远游客07133 小时前
centos stream 8下载安装遇到的坑
linux·服务器·centos
LIKEYYLL5 小时前
GNU Octave:特性、使用案例、工具箱、环境与界面
服务器·gnu
云云3216 小时前
搭建云手机平台的技术要求?
服务器·线性代数·安全·智能手机·矩阵
云云3216 小时前
云手机有哪些用途?云手机选择推荐
服务器·线性代数·安全·智能手机·矩阵
CircleMouse6 小时前
Centos7, 使用yum工具,出现 Could not resolve host: mirrorlist.centos.org
linux·运维·服务器·centos
木子Linux7 小时前
【Linux打怪升级记 | 问题01】安装Linux系统忘记设置时区怎么办?3个方法教你回到东八区
linux·运维·服务器·centos·云计算
鹏大师运维7 小时前
聊聊开源的虚拟化平台--PVE
linux·开源·虚拟化·虚拟机·pve·存储·nfs
不惑_7 小时前
小白入门 · 腾讯云轻量服务器部署 Hadoop 3.3.6
服务器·hadoop·腾讯云
阿甘知识库7 小时前
宝塔面板跨服务器数据同步教程:双机备份零停机
android·运维·服务器·备份·同步·宝塔面板·建站
zhou周大哥9 小时前
linux 安装 ffmpeg 视频转换
linux·运维·服务器