news 2026/6/15 17:21:09

用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/6/15 15:11:51

中文在线预计2025年净亏损5.8亿到7亿:同比扩大 股价大跌9%

雷递网 乐天 1月16日中文在线集团股份有限公司(证券代码:300364 证券简称:中文在线)日前发布业绩预告,预计2025年内净亏损5.8亿到7亿元,上年同期的净亏损为2.4亿元;预计扣非后净亏损为5.79亿到7…

作者头像 李华
网站建设 2026/6/15 12:48:50

通义千问2.5-7B上下文溢出?128K长度配置实战教程

通义千问2.5-7B上下文溢出?128K长度配置实战教程 1. 引言:为何需要处理长上下文? 随着大模型在文档摘要、代码分析、法律文书处理等场景的深入应用,长上下文建模能力已成为衡量模型实用性的重要指标。通义千问2.5-7B-Instruct作为…

作者头像 李华
网站建设 2026/6/15 13:53:19

Hunyuan模型推理延迟高?HY-MT1.8B吞吐量优化实战教程

Hunyuan模型推理延迟高?HY-MT1.8B吞吐量优化实战教程 1. 引言:企业级翻译服务的性能挑战 在实际生产环境中,Tencent-Hunyuan/HY-MT1.5-1.8B 作为一款参数量达18亿的高性能机器翻译模型,广泛应用于多语言内容处理、跨境交流和本地…

作者头像 李华
网站建设 2026/6/15 13:51:57

Heygem系统深度解析:AI驱动的数字人视频合成原理

Heygem系统深度解析:AI驱动的数字人视频合成原理 1. 技术背景与核心价值 近年来,随着生成式人工智能技术的快速发展,数字人视频合成已成为内容创作、在线教育、虚拟客服等领域的关键技术。传统视频制作依赖专业设备和后期团队,成…

作者头像 李华
网站建设 2026/6/15 12:53:34

IndexTTS2效果优化:语调、停顿、重音调节实战技巧

IndexTTS2效果优化:语调、停顿、重音调节实战技巧 1. 引言:提升语音自然度的关键挑战 随着AI语音合成技术的快速发展,用户对TTS(Text-to-Speech)系统的自然度和表现力提出了更高要求。尽管IndexTTS2在V23版本中显著增…

作者头像 李华
网站建设 2026/6/10 16:21:37

避坑指南:PETRV2-BEV模型训练常见问题全解

避坑指南:PETRV2-BEV模型训练常见问题全解 1. 引言 随着自动驾驶技术的快速发展,基于多摄像头的3D感知模型逐渐成为研究热点。PETRv2-BEV作为其中的代表性框架,通过引入时间建模与任务特定查询机制,在3D目标检测、BEV分割和车道…

作者头像 李华