news 2026/5/28 9:08:03

用bhyve-webadmin来管理FreeBSD系统下的bhyve虚拟机(上)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
用bhyve-webadmin来管理FreeBSD系统下的bhyve虚拟机(上)

BVCP((Bhyve Virtual-Machine Control Panel ,bhyve-webadmin )是一个图形化和安全的web控制面板,旨在管理FreeBSD bhyve虚拟机。BVCP专为数据中心级可靠性而设计,专为连续24/7运行而构建,专注于稳定性和性能。它是一个本机FreeBSD应用程序,具有简单的一键安装过程,确保快速轻松的部署。BVCP独立于系统配置运行,不修改现有设置,允许它在大多数环境中平稳运行。使用BVCP,管理员可以通过单个统一的界面管理多个物理主机,而不需要集群。

bhyve-webadmin网址:KGitHub - DaVieS007/bhyve-webadmin: FreeBSD Bhyve Web Administration Software

下载软件

如果用git下载,我看整个仓库挺大的,大约1G左右,所以我们还是直接下载它的代码压缩包

fetch https://bhyve.npulse.net/release.tgz

如果没有fetch,就用wget

下载完毕解压缩

tar -xzvf release.tgz

安装

进入目录执行安装脚本

sudo sh install.sh

安装界面

安装完成

██████╗ ██╗ ██╗ ██████╗██████╗ ██╔══██╗██║ ██║██╔════╝██╔══██╗ ██████╔╝██║ ██║██║ ██████╔╝ ██╔══██╗╚██╗ ██╔╝██║ ██╔═══╝ ██████╔╝ ╚████╔╝ ╚██████╗██║ ╚═════╝ ╚═══╝ ╚═════╝╚═╝ Bhyve Virtual-Machine Control Panel under FreeBSD N 2026-01-16 19:30:06 | BVCP | Initialising BVCP-Backend 2.2.0p2 Application Available Command Line Arguments: - /var/lib/nPulse/BVCP/Backend/vmm setup Initial Setup - /var/lib/nPulse/BVCP/Backend/vmm resecure Change API Keys - /var/lib/nPulse/BVCP/Backend/vmm reset_password Change Admin Credential - /var/lib/nPulse/BVCP/Backend/vmm cli CLI Interface Dropping to CLI .. N 2026-01-16 19:30:07 | INTR | TCP Buffers Adjusted: R:64.00KB,S:32.00KB E 2026-01-16 19:30:07 | BVCP | CLI Connection Failed: 127.0.0.1:8628 N 2026-01-16 19:30:07 | SW | Program exited gracefully... Installation Finished! Navigate: https://[your-ip]:8086

一些有用的信息

(!) Admin Credentials recreated,
- User: admin
- Password: zGW88Jfw

Available Command Line Arguments:
- /var/lib/nPulse/BVCP/Backend/vmm setup Initial Setup
- /var/lib/nPulse/BVCP/Backend/vmm resecure Change API Keys
- /var/lib/nPulse/BVCP/Backend/vmm reset_password Change Admin Credential
- /var/lib/nPulse/BVCP/Backend/vmm cli CLI Interface
Dropping to CLI ..

浏览器端口连接

浏览器连8086端口,这样的

使用启动时提醒的密码登录,进入管理页面

完蛋了,改了密码进不去了。

重复执行install,再次进去。也可以重置密码,见调试部分。

更新密码的时候,要把账户写成邮箱地址才可以。密码先不改。

这回ok了,可以登进去。

配置bhyve的公共内容

添加网卡

添加存储

安装Ubuntu22.04版本

下载iso

到163加速镜像http://mirrors.163.com/ubuntu-releases/jammy/去下载iso

wget http://mirrors.163.com/ubuntu-releases/jammy/ubuntu-22.04.5-live-server-amd64.iso

突然发现清华和中科大的镜像里面都没有amd64的安装盘了,只有arm和riscv的了。

创建ubuntu虚拟机

但是创建后,配置cdrom,无法找到文件!原来要放到/vms/iso_images 这个目录里

启动

见到了久违的装机画面

好了就先到这里吧。

总结

尽管是浏览器web控制,我也是晕头转向的,这个配置起来没有想象的那么顺利啊!

原来卡在cdrom,是因为没有把镜像文件放到指定的位置:/vms/iso_images 这个目录。

附:api命令

_> vm * [vm] Available Commands: [Start/Stop Commands] + start [prefix] | Start virtual machine + check [prefix] | Check virtual machine + stat [prefix] {format: safe,raw} | Get CPU/MEM statistics + shutdown [prefix] | ACPI Shutdown + user [user] | Add user to the VM + log [prefix] [max_entries] | Fetch VM Journal + pause [prefix] | Pause virtual machine + resume [prefix] | Resume virtual machine + kill [prefix] | Kill virtual machine + stop [prefix] | Stop virtual machine + list {prefix} | List virtual machine + destroy {prefix} | Destroy virtual machine + restart [prefix] | Restart virtual machine [Management Commands] + create [prefix] [description] | New virtual machine + desc [prefix] [new_description] | Modify virtual machine + note [prefix] {new_note} | Add/Get note + clear [prefix] | Clear config (debug purpose) + set [prefix] [key] [value] | Set core variables - keys: cpu.socket, cpu.core, memory, sys[linux,win,bsd] arch[intel,amd] - keys: vnc.wait, vnc.display, utc_time, wire_memory, passthru, hda - keys: clear_bios [DEPRECATED] - keys: reset_uefi=[yes], protect_uefi=[true/false] - keys: auto_boot=[true/false], boot_priority=[low/med/high] - keys: custom_prepend | Prepend custom parameters - keys: custom_append | Append custom parameters - destroy [prefix] | Destroy virtual machine [Disk Management Commands] + disk create [prefix] [storage] [name] [size] | Create new disk + disk attach [prefix] [file] [desc] [slot] [legacy/ahci/virtio/nvme] | Attach Disk into VM + disk nvme_set [prefix] [name] [key] [value] | Set nvme values on disk - keys: maxq (Max number of queues), qsz (Queue Size), isoslots (IO Slots), sectsz (Sector Size in Bytes) + disk detach [prefix] [file] | Detach Disk from VM + disk destroy [prefix] [ID/file] | Delete Disk + disk resize [prefix] [file] [new_size] | Resize Disk + disk list [prefix] | List Disks [Share Management Commands] + share attach [prefix] [share_name] [host_dir] {readonly} | Create Virtio-9P VirtFS + share detach [prefix] [share_name] | Remove Share + share list [prefix] | List Shares [CDROM Commands] + cdrom attach [prefix] [iso_file] | Attach ISO file as CD-ROM + cdrom detach [prefix] [iso_file] | Detach ISO + cdrom list [prefix] | List ISO Images [Network Commands] + nic add_virtio [prefix] [switch] {mac_addr} {host_ip} {custom_route} | Add VirtIO/NIC bound to switch + nic add_legacy [prefix] [switch] {mac_addr} {host_ip} {custom_route} | Add Intel/NIC bound to switch + nic change [prefix] [NIC] [switch] | Change Switch + nic mac [prefix] [NIC] [mac_addr] | Change MAC Address + nic host_ip [prefix] [NIC] [ip] | Add IP to host's TAP interface + nic custom_route [prefix] [NIC] [ip] | Add custom route rule to host's TAP interface + nic enable [prefix] [NIC] | Enable NIC + nic disable [prefix] [NIC] | Disable NIC + nic remove [prefix] [NIC] | Remove NIC + nic list [prefix] | List Interfaces

调试

页面找不到了怎么回事

https://192.168.1.5:8086/

netstat -rn,可以看到有8086端口啊

tcp6 0 0 *.8086 *.* LISTEN
tcp4 0 0 *.8086 *.* LISTEN

不明白怎么回事?

后来是重置密码,服务也ok了

密码找不到了怎么办

修改密码

sudu /var/lib/nPulse/BVCP/Backend/vmm reset_password

最后用的这条命令重置的密码

sudo /var/lib/nPulse/BVCP/Backend/vmm setup user

cdrom找不到东西怎么办

点击加入cdrom,没有东西

明白了,需要放在/vms/iso_images 这个目录里

果然就能看到了

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/14 8:05:02

Z-Image-ComfyUI本地同步开发,SFTP自动上传技巧

Z-Image-ComfyUI本地同步开发,SFTP自动上传技巧 在AIGC工程化落地的进程中,开发者面临的核心挑战之一是如何高效地进行模型工作流的定制与调试。尽管ComfyUI提供了强大的可视化节点编排能力,但其本质仍是一个基于Python的可编程图像生成引擎…

作者头像 李华
网站建设 2026/5/13 13:00:54

AutoGLM-Phone-9B核心优势揭秘|轻量化多模态模型落地实战

AutoGLM-Phone-9B核心优势揭秘|轻量化多模态模型落地实战 1. 引言:移动端多模态推理的挑战与破局 随着智能终端设备对AI能力的需求日益增长,如何在资源受限的移动平台上实现高效、低延迟的多模态理解成为工程实践中的关键难题。传统大模型因…

作者头像 李华
网站建设 2026/5/15 15:39:01

AI写作大师Qwen3-4B创意写作:诗歌生成实战案例

AI写作大师Qwen3-4B创意写作:诗歌生成实战案例 1. 引言:AI赋能创意写作的新范式 1.1 创意写作的智能化转型 随着大语言模型技术的不断演进,AI在自然语言生成领域的表现已从简单的文本补全发展到具备高度创造性的内容产出。尤其是在文学创作…

作者头像 李华
网站建设 2026/5/24 13:16:12

科哥构建的镜像做了哪些优化?启动脚本深度剖析教程

科哥构建的镜像做了哪些优化?启动脚本深度剖析教程 1. 功能概述 本工具基于阿里达摩院 ModelScope 的 DCT-Net 模型,支持将真人照片转换为卡通风格。该模型采用 UNet 架构设计,专为人像到卡通图像的端到端转换任务优化,在保留人…

作者头像 李华
网站建设 2026/5/23 17:40:20

Qwen3-1.7B自动化测试用例生成:研发提效实战

Qwen3-1.7B自动化测试用例生成:研发提效实战 1. 背景与技术选型 在当前软件研发流程中,测试用例的编写是保障代码质量的重要环节。然而,传统手工编写测试用例的方式存在效率低、覆盖率不足、维护成本高等问题。随着大语言模型(L…

作者头像 李华