虚拟化三巨头怎么选
目前搞机里,虚拟化 Hypervisor 三巨头有:VMware vSphere ESXi,Microsoft Hyper-V 和 Proxmox Virtual Environment(PVE)。他们都是 Type 1 Hypervisor,虚拟化损耗比 Type 2 的 VMware Workstation 等要小。
ESXi
作为服务器界广泛使用的商业闭源 Hypervisor 一哥,它有很多优点,但是我没有使用的唯一原因是网卡不支持,压根安装不了。使用服务器级别的硬件(特别是戴尔 EMC 全家桶)或者自行注入驱动可解决,但是我是穷鬼+懒狗。
Hyper-V
硬件兼容性比 ESXi 好,还捆绑个 Windows Server 作为图形化管理界面。我没有使用的原因也正是捆绑的 Server 对低性能硬件而言是个不小的开销。
2023.10.18 更新:上面不完全正确。事实上,完全可以安装无 GUI 的 core 版本,降低操作系统开销;然后用服务器管理器或者 Windows Admin Center 远程管理服务器。参见:
在 Windows Server 上安装 Hyper-V 角色 | Microsoft Learn
“服务器核心”与“带桌面体验的服务器”安装选项 | Microsoft Learn
服务器管理器 | Microsoft Learn - 从客户端计算机管理远程计算机
开始使用 Windows Admin Center | Microsoft Learn
PVE
基于 KVM 的开源虚拟化软件。由于基于 debian,硬件兼容性也比 ESXi 要好。
基于此,有一个优势是,如果物理机性能确实捉襟见肘,那么可以在 PVE 上做事,而不用单独虚拟一个 debian(虽然这属实是有点厕所里打灯笼——找屎了)。
PVE 中文文档:Promxox VE 中文文档 7.1 文档
配置单
价格
2023年10月中旬价格,仅供参考。
配件 | 价格 |
3865U 矿机主板,送 6pin 转 5525 DC 线 | 67 |
4G DDR4 笔记本内存 | 25 |
128G MSATA 固态 | 30 |
12V5A 电源适配器 | 8 |
纸盒机箱 | 0 |
总计 | 130 |
板U
英特尔赛扬 3865U 双核双线程 1.8GHz,带 HD610 核显,支持 VT-D 和 VT-X 虚拟化,实属入门软路由和虚拟化的好 U。不过,目前海鲜市场上正经的 3865U 板子都要快200。那么有没有不正经的呢?有,就是矿潮狂欢结束后的矿机主板。这类主板以缩水缩得妈都不认识为代价,把价格降到了五六十。
我这块板子最大的问题是没有 SATA 口,做不了 NAS。不过我不在乎,因为我是用来做软路由的。
存储固态
同一个海鲜店一起买的。如果要开多台虚拟机,内存和硬盘最好加更大。
电源适配器
随便并夕夕整个 12V4A 以上的 5525 DC 电源就可。
其他配件
风扇不是必要的,3865U 功耗很低。我的是从抽屉里摸出一个多余的风扇用。记得买 5V 的风扇。
机箱直接用板 U 的包装盒做机箱,发扬图吧精神~
此外我还买了个 8 口千兆交换机 ¥50,因为不是必要的就没算进去。
装机
矿机 3865U 主板有带风扇和不带风扇两种,带风扇的有个问题是因为缩水导致风扇没有温控,直接满速运行,活像飞机发动机。不带风扇露天也能压住,不过因为我打算丢进盒子里,所以还是选了有风扇的,不过整多了个无风扇的散热器。
到手之后拆了带风扇的飞机发动机散热器,装上无风扇的散热器,然后插上自己的 9025 风扇。结果发现,怎么 9025 风扇转速这么慢?一看,原来的小风扇是 5V , 9025 风扇是 12V,电压不够。变相起到了降速效果,不过是否有不良影响尚待观察。
制作启动盘
首先准备一个大于 4G 的空 U 盘。
然后下载最新的 PVE ISO 镜像:Download Proxmox software(别下错了)。
之后到这个网址下载 Ventoy Windows 版本,这个是个用于制作启动盘的神器。
然后解压并启动 Ventoy,在空 U 盘上安装 Ventoy。之后将下好的 PVE ISO 复制到 U 盘上即可。
安装 PVE
给鞋盒主机插上键鼠显示器网线,以及做好的启动 U 盘,插电开机。
自行引导到 U 盘(我的矿机板子不需要任何设置,即可自动 U 盘引导),进入 Ventoy。选中并回车 PVE 镜像。
选择 normal mode
。
之后进入 PVE 安装界面。
重要
因为安装的过程没有拍照,所以下面的图片用虚拟机的截图代替。步骤是一样的。
首先回车进入图形安装界面。
备注
如果你卡在检测国家(如下图),可以拔掉网线,强制重启,安装完毕后再插回网线。
鼠标点击右下角的 agree
,点击 next
遵从默认的硬盘设置(多个硬盘这里选择想要安装到的硬盘)。
国家打字 China,时区选上海,键盘布局默认。
填写 root 账号密码和邮箱。
选择网口,域名自己写个喜欢的(没什么用,但是三级域名会被当作主机名,比如下图的 hahaha),IP 写个局域网内还没被占有的 IP,网关和 DNS 服务器一般写路由器局域网 IP。
取消自动重启,点击安装。
安装结束后,记住 PVE 的网址,插上网线(如果之前拔掉了),点击重启然后赶紧拔掉 U 盘。
进入 PVE 后台
输入网址(记得是 HTTPS),点击高级,继续访问。(因为是自签名证书,操作系统不信任)
输入 root 账号密码,语言选择简体中文,选择保存用户名,登录。
会提示没有商业许可证,不用管,点击“确定”跳过即可,个人免费。
安装 OpenWrt
参考:超详细,多图 PVE 安装 OpenWRT 教程(个人记录)_pve安装openwrt_优雅码农的博客-CSDN博客
首先上传 OpenWrt 的镜像。我上传我自己编译的 ImmortalWrt(自编译教程:自编译 OpenWrt,以 UA2F 为例),或者自己去官网下载。
上传完成会弹出个 Task Viewer,关闭即可。
然后创建虚拟机:
取个名字,点击高级选择开机启动。我们希望在 PVE 开机后,软路由第一时间内自动启动,而不是我们手动开机。
不需要任何介质。稍后将使用命令行创建一个和镜像一样大小的磁盘。如果在这里创建磁盘,因为一般软路由的镜像都很小,大于镜像大小的磁盘空间用不上,造成空间浪费。
系统直接默认,下一步。
删掉唯一的磁盘(原因之前说了)。
选择核心数。因为我的外网带宽是百兆而且内网没啥设备,还上了千兆交换机处理内网传输,所以只需要 1 核心。CPU 类别选择 host,即保持和实体机的 CPU 特性一致。
同样由于上面的原因,我只给了 128 MB 内存(之后运行实际占用 70-80 MB)。
之后一路默认下一步(“网络”有多个网卡的可以添加,我只有一个网口做旁路由所以默认即可),创建虚拟机。先不要开机。
来到 PVE 服务器的 shell,输入:
qm importdisk <刚才创建的虚拟机的序号> /var/lib/vz/template/iso/<镜像文件名> local-lvm
使用上传的镜像为刚才创建的软路由虚拟机创建磁盘。
之后来到软路由虚拟机的硬件,双击“未使用的磁盘”。
如果虚拟磁盘是在固态上就开启 SSD 仿真,然后添加。
移除毫无卵用的 CD 驱动器。
引导程序中,把新添加的硬盘移到第一位并且勾上启用;不启用网络引导。
之后就可以开机,在控制台中输入命令了。
后续可参见:
个人数字基建(1):在 VMware 安装 OpenWrt 主路由
个人数字基建(2):在 VMware 安装 OpenWrt 旁路由
性能
目前只开了 OpenWrt 一个虚拟机。可以在 PVE 后台查看服务器负载。
轻负载时(网络没啥使用,仅有5个设备连接),服务器的整体 CPU 利用率在10%以下。
百兆宽带下行测试时,服务器的整体 CPU 利用率在35-60%之间。
Steam 游戏下载,负载相似,在 50% 附近。
修改 PVE 软件仓库订阅源
https://blog.csdn.net/weixin_52960369/article/details/135361688
解决vi编辑器按键异常问题
cp /etc/vim/vimrc ~/.vimrc
修改软件源
# 将此文件的中的所有内容使用 # 注释掉,如果编辑的时候出现上下键和DEL异常请看补充
vi /etc/apt/sources.list.d/pve-enterprise.list
# 下载中科大的GPG KEY
wget https://mirrors.ustc.edu.cn/proxmox/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg
# 使用Proxmox非企业版源
echo "deb https://mirrors.ustc.edu.cn/proxmox/debian bookworm pve-no-subscription" > /etc/apt/sources.list.d/pve-no-subscription.list
# 将Debian官方源替换为中科大源
sed -i 's|^deb http://ftp.debian.org|deb https://mirrors.ustc.edu.cn|g' /etc/apt/sources.list
sed -i 's|^deb http://security.debian.org|deb https://mirrors.ustc.edu.cn/debian-security|g' /etc/apt/sources.list
# 替换Ceph源
echo "deb https://mirrors.ustc.edu.cn/proxmox/debian/ceph-quincy bookworm no-subscription" > /etc/apt/sources.list.d/ceph.list
# 替换CT镜像下载源
sed -i 's|http://download.proxmox.com|https://mirrors.ustc.edu.cn/proxmox|g' /usr/share/perl5/PVE/APLInfo.pm
# 更新
apt update
删除订阅弹窗(https://www.bilibili.com/read/cv28639629/)
sed -Ezi.bak "s/(Ext.Msg.show\(\{\s+title: gettext\('No valid sub)/void\(\{ \/\/\1/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js && systemctl restart pveproxy.service
Ctrl+F5刷新缓存
添加 Tailscale 访问端口
首先安装 Tailscale 并且上线
shell 输入 ip a
之后就可以使用 https://<tailscale-ip>:8006
或 https://<tailscale机器名>:8006
登录。
Comments NOTHING