ROS软路由论坛 ROSABC.com 网络方案网络工程交流

 找回密码
 会员注册

QQ登录

只需一步,快速开始

查看: 114|回复: 0

ESXi、PVE、unRaid对比

[复制链接]
发表于 2022-12-17 10:42:36 | 显示全部楼层 |阅读模式

马上注册成为ROSABC会员,随时发帖回复。

您需要 登录 才可以下载或查看,没有账号?会员注册

x
【前言】
虚拟机下的软路由、NAS玩了几个月了,当初选择虚拟系统真是纠结得很,觉得哪个都好哪个都有问题。试来试去,发现已经把ESXi、PVE、unRaid这三大虚拟系统(unRaid有点冤)都折腾了几遍了。
这里罗列记录一下,也许也可以帮你少纠结一点。
我会粗略描述一些操作步骤,旨在体现操作复杂度等,可能无法当做完整教程。有需要了解详细步骤的同学可以参看其它大神的文章。
【概述】
ESXi,是VMWare vSphere Hypervisor套件之下重要组件。前身是ESX,依赖Linux源码,后来抛弃Linux源码做成了ESXi。整个产品商用气息浓重,界面清晰易用,但硬件兼容性较差(主要面向服务器),没什么扩展性(毕竟不是linux)。
PVE,全称Proxmox Virtual Environment,是基于Debian的Linux系统,虚拟机内核为KVM。硬件兼容性优秀。界面功能不强,很多操作要靠命令行,但扩展能力几乎是无限的。
unRaid,其实是个NAS系统,是基于Slackware的Linux系统,虚拟机内核也是KVM。磁盘阵列管理非常有特色,灵活性很高。同时还有很不错的插件、Docker和虚拟机支持。
【系统安装】
ESXi,官网获取iso镜像,做成启动盘来安装。


                               
登录/注册后可看大图

iso引导界面。整个安装过程界面都很简陋。

                               
登录/注册后可看大图

有磁盘选择和密码设定等简单环节。

                               
登录/注册后可看大图

安装成功后重启进入系统,会看到管理地址的提示。

                               
登录/注册后可看大图

此时可以按f2进入这个系统设定菜单。主要是用来解决网络设定等问题。
PVE,同样是官网获取iso镜像,做成启动盘来安装。


                               
登录/注册后可看大图

iso引导界面

                               
登录/注册后可看大图

有磁盘、密码、网络等设定过程。

                               
登录/注册后可看大图

同样,安装重启后即可看到管理地址。也可以此时登陆控制台进行高级操作。
unRaid,比较特别,需要准备一个U盘,制作启动U盘。可以从官网的下载制作工具(exe)来制作。也可以直接下载系统的zip包,如果要用开(po)心(jie)版,也只能下载zip包。


                               
登录/注册后可看大图

如果是zip包,需要解压到U盘,修改卷标为UNRAID,执行make_bootable.bat。

                               
登录/注册后可看大图

插上U盘,设置好引导,启动后直接进入系统。可以看到后台管理地址,也可以登陆控制台。【系统资源占用】
以下测试数据来自于我笔记本的Win10下的VMWare虚拟机,仅供参考。
ESXi 7.0b,安装iso大小351M,系统占用130G硬盘,待机内存1.1G,待机CPU约1-6%,系统启动时间61秒。
你没看错,系统占用130G磁盘!如果你是128G的ssd,可用空间直接就没有了!其实罪魁祸首是ESXi 7.0版本安装系统会默认分配120G的虚拟闪存(安装系统启动前,可以用shift+o,加上autoPartitionOSDataSize=...来改变默认大小,单位MB)。另外,ESXi 6.7安装之后默认占用磁盘空间约10G。
PVE 6.2-4,安装iso大小862M,系统占用6G以上硬盘,待机内存900M,待机CPU约1%,系统启动时间20秒。
安装系统时,磁盘空间会动态分配,除了交换分区等,主要两个分区是:系统分区和LVM分区,后者提供给虚拟机磁盘使用。不知道具体什么分配算法,实测得到:
16G硬盘安装PVE,交换分区1.9G、系统3.6G(1.8G已用)、LVM 6G。
128G硬盘安装PVE,交换分区4G、系统31G(1.8G已用)、LVM 74G。
unRaid 6.8.3,zip包213M,系统必须放入U盘(所需空间不足300M),占用23G硬盘空间,待机内存不足200M,待机CPU约1-3%,系统启动时间59秒。
23G硬盘空间中,启动Docker会默认创建20G的镜像文件。不用Docker可以手动删除镜像,也可以自定义镜像大小,还可以采用文件夹的方式而不是固定大小的镜像。
【创建/编辑虚拟机】
ESXi,创建/编辑虚拟机,比较简单易懂


                               
登录/注册后可看大图

创建按钮,你应该一眼就能找到了。

                               
登录/注册后可看大图

创建(1/2)前面的指引步骤,降低了新手理解难度。

                               
登录/注册后可看大图

创建(2/2)后面也有详细参数的设定。

                               
登录/注册后可看大图

编辑虚拟机跟创建时的详细参数差不多,每一项都比较好理解,多数可以进一步展开。
PVE,创建/编辑虚拟机,功能也比较全


                               
登录/注册后可看大图

创建按钮,你能想到藏在右上角吗?

                               
登录/注册后可看大图

创建也是多步骤指引,但是设计细节还是略不友好(步骤太多、有几个步骤不能默认)。

                               
登录/注册后可看大图

编辑虚拟机变成了截然不同的界面
unRaid,需要先设定并启用阵列后才能使用虚拟机。(阵列相关后面再讲)


                               
登录/注册后可看大图

虚拟机放在靠后的菜单里面了(毕竟主要是做NAS的)

                               
登录/注册后可看大图

创建的系统选择倒是挺直观的

                               
登录/注册后可看大图

创建/编辑界面完全一样,可设定参数比较有局限

                               
登录/注册后可看大图

创建/编辑可以切换为xml形式,看起来比较高级,但每次用界面编辑都会导致xml修改丢失。。。【硬盘直通】
三个虚拟系统的虚拟硬盘性能都不怎么样。具体虚拟磁盘的性能问题可以见我另一篇分享(https://zhuanlan.zhihu.com/p/271901267)。如果真的需要高性能磁盘,最好还是做硬盘直通。
ESXi,需要命令行操作找到硬盘并挂载(RDM),然后在界面添加此磁盘。


                               
登录/注册后可看大图

首先要先开启SSH(最好在完成操作后再关上)

                               
登录/注册后可看大图

SSH下找到硬盘并执行命令挂载为vmdk文件

                               
登录/注册后可看大图

虚拟机中添加刚才的vmdk磁盘(ESXi 6.7以上理论上可以直接添加裸盘,但有额外要求)
PVE,只需要命令行操作


                               
登录/注册后可看大图

SSH下找到硬盘并直接添加给虚拟机
unRaid,先用命令行找到磁盘名,然后界面添加


                               
登录/注册后可看大图

类似pve,用SSH查到硬盘名

                               
登录/注册后可看大图

添加Manual类型硬盘,并指定前面找到的硬盘全路径【PCI硬件直通】
网卡、声卡、sata控制器等都可以用PCI直通的方式供虚拟机使用(显卡相关后面详述),性能会好过模拟设备。使用硬件直通,需要CPU有Vt-d功能,并在bios中开启,且要求不可以使用动态内存。
还有一种叫SR-IOV直通的,能力更强一些,但要求较高,我还没成功过,就不聊了。
ESXi,直接界面操作


                               
登录/注册后可看大图

在硬件列表中切换需要直通的设备为活动状态。7.0以后,直通切换无需重启系统。

                               
登录/注册后可看大图

添加新PCI设备、选择需要的设备。
PVE,先修改系统配置打开直通功能,然后就可以直接界面操作了


                               
登录/注册后可看大图

引导配置加上一段,执行update-grub更新

                               
登录/注册后可看大图

模块配置确保包含这些模块,然后重启

                               
登录/注册后可看大图

此后,就可以随时添加任意一个PCI设备了
unRaid,6.9.2之后可以在系统工具中屏蔽要直通的设备,然后在虚拟机配置中勾选要直通的设备即可。(6.9.1以及之前需要安装VFIO-PCI Config插件)


                               
登录/注册后可看大图

在Tools/System Devices中选择要直通的硬件,打勾、保存、重启。(有一些情况会失败,甚至无法开机,好在你可以拔掉U盘在另一台电脑上修复一下U盘上的配置文件)

                               
登录/注册后可看大图

在虚拟机配置中会出现新的可直通设备,勾选即可直通。【显卡直通】
显卡本来也是PCI硬件之一,但是会有诸多原因导致它的直通不会那么容易。
ESXi,基本操作还是PCI硬件直通的操作,但可能遇到了以下诸多的限制:
  • 核显直通后在Win10下驱动错误,代码43(据说其它系统可以直通,但不能显示)
  • 想直通独显,需要在bios屏蔽核显,否则可能无法启动或蓝屏(有的主板没这个限制)
  • NVIDIA显卡直通需要配置hypervisor.cpuid.v0 = FALSE,否则驱动错误,代码43
  • ESXi7.0以后切换显卡直通不需要重启,但是已经直通显卡再重启会导致直通失败,手动切换两次可恢复。这个BUG导致直通显卡的虚拟机是无法开机自动启动的。
PVE,除一般PCI硬件直通的步骤外还需要一些配置,具体操作因为pve版本不同、硬件不同等差别很大。几乎没有限制,技术够牛(改bios、改源码……),基本能直通成功。这里只按照我遇到的简单情况说明下(PVE 6.4-4、Q87主板、NVIDIA显卡)。


                               
登录/注册后可看大图

在/etc/modprobe.d/pve-blacklist.conf添加这些驱动黑名单,随后重启。

                               
登录/注册后可看大图

虚拟机的硬件配置中,机器(machine)设置为q35。

                               
登录/注册后可看大图

添加PCI设备,需要勾选“高级”,随后勾选主GPU、PCI-Express
unRaid,系统帮忙解决了很多直通问题,仅在虚拟机中设置即可,连硬件的屏蔽都省了。


                               
登录/注册后可看大图

直接把默认的VNC虚拟显卡改成想要直通的显卡即可。也可以添加多个显卡。声卡一样。【自动开机、关机】
有时候虚拟系统主机会需要重启或是意外断电等情况,此时我们需要某些虚拟机会在系统启动后按顺序自动启动。


                               
登录/注册后可看大图

ESXi,一次性整体设置自动启动的开关、顺序、延迟时间等。

                               
登录/注册后可看大图

PVE,需要在每一个虚拟机里面设置自动启动的开关和顺序。

                               
登录/注册后可看大图

unRaid,每个虚拟机可以开关自动启动,启动顺序就是但是不能调整顺序和间隔时间。【网络管理】

                               
登录/注册后可看大图

ESXi,有众多的网络配置功能,完全可以自己组建各式各样的复杂虚拟网络拓扑结构。不过家用的话,基本用不上,甚至你可能都不需要碰到这个界面。

                               
登录/注册后可看大图

PVE,网络管理简单一些,功能也没那么强,但家用足够了。

                               
登录/注册后可看大图

unRaid,几乎只有网卡设置,不过一般用途倒是够了。只是每次修改网络配置必须先停掉阵列(所有虚拟机、Docker都要关闭)。【稳定性】
单说长时间运行的话,三者没发现什么区别,都很稳定。但如果你跟我一样喜欢“瞎折腾”,那就很容易出事了。
所以ESXi是最稳的,界面清晰、扩展性不强,所以也不太会出故障。PVE、unRaid折腾多了都很危险。尤其是unRaid,似乎虚拟机部分还没那么成熟,花样越多坑越多,而且很多设定(比如网络、直通)必须通过重启或关闭磁盘阵列(所有Docker、虚拟机都要关闭)来生效。
【CPU性能】
ESXI使用自己的VMware内核,CPU优化相当好,损耗趋近于0%。
PVE与unRaid接近(都是KVM),损耗大约是4-10%的样子。
详细的对比我就不展示了,受影响因素太多,我也没搞清楚,容易误导大家。总的来说三者差距不会很大,如果你的CPU性能本身有一定过剩,就不用特别纠结这点点损耗了。
【总结特点】
ESXi,注重企业支持,界面简单易用,自身功能较强,对硬件要求较高,扩展性较低。
适合初学者、不想太折腾的、有服务器主板的(例如Gen8这种家用服务器)。迷茫的时候,优选ESXi吧。
PVE,兼容性最好,扩展性好,界面友善度欠佳,需要一定Linux基础。
适合低端机型、懂Linux的、爱折腾的。PVE玩得溜了之后,看其它的系统都像是弟弟。(可惜我玩不溜)
unRaid,Docker、磁盘阵列、显卡直通、虚拟U盘等都是亮点。必须U盘引导有点麻烦(廉价U盘7x24工作,心还是很慌)。特色功能多,出新快,因此问题也多。
适合直接做NAS、玩PT,尤其适合做家庭影视库、HTPC,玩一拖二也是个不错的选择。比较有可玩性,又不会难度特别高。
转载自:https://zhuanlan.zhihu.com/p/166352130

您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

不良信息举报Q:2000617

软路由

不良信息举报Q:2000617|Archiver|ROS软路由论坛 ROSABC.com 网络方案网络工程交流

GMT+8, 2024-4-30 15:12 , Processed in 0.102152 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表