All In Boom 带来的思考

2024-09-04 15:03:05 +08:00
 qizheng22

ESXi 7*24 小时稳定运行两年多,前几天拉闸换灯,没提前关电脑。重新开机时发现有台虚拟机找不到了,无法重新注册。目录里只有-flat.vmdk 文件。后来通过其他虚拟机挂载 vmdk 找回。

没过几天,ESXi 的 ssl 证书到期。替换证书重启无法进入系统。提示:

Shutting down firmware services... 
Using 'simple offset' UEFI RTS mapping policy
Relocating the modules and starting the kernel...

即使指定 ignoreHeadless=TRUE 也无法跳过。

虽然重装 ESXi 解决。但是在故障期间,我试着把硬盘拿出来备份数据,在读取 ESXi 的 VMFS 文件系统遇到不少阻碍。一般的磁盘工具无法识别,还有的只能识别很老版本的 VMFS 文件系统。还有一个数据恢复软件是收费的。

使用 ESXi 的初衷是为了隔离不同系统和运行环境。而 ESXi 稳定可靠,自身占用开销小,接近物理机性能。但是这几年使用中发现不少痛点。

  1. 显卡只能直通某一台虚拟机。如果有多台虚拟机,无法共享 GPU 算力。
  2. 未直通显卡的虚拟机无法 GPU 加速。浏览器/远程桌面等应用只能 CPU 软解码,导致 CPU 使用率占用高。
  3. VMFS 文件系统没有预想的通用,不能方便地通过其他系统或磁盘管理工具拿回文件。

必需基于 ESXi 的 All In One ?

在回答这个问题前,先看 ESXi 带来的优点。

  1. 可以 7*24 在线,只能手动更新。ESXi 本身只提供虚拟平台,只要没有功能 bug 和驱动问题。基本不用更新。
  2. 因为 ESXi 只是一个虚拟平台,在使用过程中非常纯净,不会担心因为安装其他乱七八糟的软件弄坏系统。而且支持 U 盘运行。(我用 U 盘稳定运行过一年,系统是加载到内存里里启动的)
  3. 系统自己占用 1G 多内存,不会有其他内存开销。基于 WEB 管理,非常方便。

如果换其他平台,上面三点如何解决?

  1. 对 7*24 小时的机器来说,影响最大的是重启。windows 现在的更新每月一次,可以关闭自动更新和自动重启。而 linux 大多数更新都不用重启。
  2. 无论是 Windows 还是 Linux ,用户文件基本只在用户目录里。只是一般 Windows 都会给最大权限,其他软件又不规矩,相对于 Linux 确实会产生更多垃圾文件。
  3. 在默认启动图形化系统后,Linux 轻量级桌面环境 xfce ,lxqt 占用内存 1G 以下。即使是 gnome ,kde ,占用 2G 以内。Windows 10 LTSC 是 2G 以下。都是可以接受的。

Windows+Hyper-V 还是 Linux+VMware ?

Windows 平台软件丰富,驱动支持好。Windows 下使用 Linux 子系统或 Docker ,需要开启 Hyper-V 。Hyper-V 虚拟化方案是 Type1 ,对标 ESXi ,性能比 VMware ,VirualBox 这类 Type2 好。能用 GPU 加速,但不支持 USB 。启用 Hyper-V ,会和其他虚拟类软件冲突。虽然最新的 VMWare 和 VirtualBox 虽然已兼容,但性能会有损耗。还有很多如安卓模拟器等依然会冲突。

Linux 下对于程序员来说开发环境搭建方便,大多数开发环境只需一条命令安装,玩 AI 也适合。VSCode ,JetBrains Gateway 等远程开发方案都只支持 Linux 。Linux 下原生支持 Docker ,大多数非图形化程序在 Linux 下运行效率高( Windows 的 Microsoft Defender 扫描,对有很多小文件的项目磁盘 IO 有较大影响)。VMWare Workstation 个人已完全免费,性能好,支持 USB 。

如果选择 Windows ,一定会安装 Linux ,因为 NAS 和 Docker 是刚需。而且现在两块数据机械硬盘都是 EXT4 格式,迁移成本大。

如果选择 Linux ,不一定会安装 Windows 。因为有笔记本电脑,Windows 下的电源管理比 Linux 强多了,笔记本电脑还是首选 Windows 。

9068 次点击
所在节点    程序员
65 条回复
msg7086
2024-09-04 17:22:23 +08:00
ESXi 不是一个适合 DIY 的东西。如果掉电了,那是没有 UPS 的锅。如果换证书换炸了,那基本上也是你的锅。ESXi 就是你不动他他就很稳,但是但凡你要搞点什么事,就炸了。这是我从 ESXi 5.5 平台上学来的血泪教训。

PVE 没有很多痛点,只要你熟悉 Linux ,什么都可以按照你的心思来,一切都在你自己的掌握中。怕存磁盘的文件系统断电爆炸?你可以用 lvm raw device 。需要 snapshot ?你可以用 zfs 。需要高可用? ceph 走起。内核补丁打完要不要重启也是你自己决定,想玩集群也可以玩,热迁移到另一台母鸡上然后滚动重启也是可以做到的。

显卡共享算力这个,你买了支持共享共享算力的显卡了吗。
swLoXtOtd89pGg8t
2024-09-04 17:37:26 +08:00
@hez2010 #17 试过了,极慢无比,而且吃很多资源。
yuantinghg
2024-09-04 17:44:35 +08:00
切 PVE 吧
iloveayu
2024-09-04 17:45:27 +08:00
个人用就 PVE 吧,ESXi 这种黑盒想稳还是得靠原厂 support 。
povsister
2024-09-04 17:48:28 +08:00
ESXi 迁移 PVE 用户

稍微会玩一点的,搞 AIO 肯定都还是偏向于使用 linux ,那么 pve 可以 lxc 直接以极低的 overhead 跑 linux 就是一个很大优势。
如果实在需要 guest kernel ,那 pve 也有完善的 vm 支持和模板可以用。

而且,#21 说的很对,如果你对 linux 熟悉,那你甚至可以把 pve 搞成任何你需要的样子。
这一点,ESXi ?就是只能当个 hypervisor 用罢了。
blankmiss
2024-09-04 17:54:54 +08:00
@Jinnrry 10 系以下的吗
zbatman
2024-09-04 18:01:16 +08:00
@wheat0r 有啥问题吗这句话
roidinev
2024-09-04 18:45:19 +08:00
支持 kvm +linux 方案。一切在自己掌控下 也容易更新。就是需要折腾
hertzry
2024-09-04 18:53:14 +08:00
Hyper-V 能挂载外部设备。
zyq2280539
2024-09-04 19:00:23 +08:00
最近自学了 Linux 运维,感觉底层用 Linux 然后使用 KVM 方式使用虚拟机更方便。😄
512357301
2024-09-04 19:20:28 +08:00
boot2docker 无敌
displayabc
2024-09-04 19:27:45 +08:00
之前在公司内部用 pve ,虚拟出来几个机器,不知道怎么回事,过一段时间就会把整个公司网络搞挂掉,只要把这个 pve 机器断网或重启就没事了,最后只能卸载了,后来就没出现过了
LoliconInside
2024-09-04 20:55:20 +08:00
@wheat0r
Hyper-V 确实是第一类 VMM ,直接与硬件交互并调度资源,开启 Hyper-V 功能后,Windows 宿主机本身也是作为一个特权虚拟机运行的(类似 Xen 中的 Domain 0 )。
VMWare Workstation 、VirtualBox 等方案就是第二类 VMM ,依赖于宿主机操作系统进行硬件资源分配。
wangsd
2024-09-04 23:41:16 +08:00
@wheat0r 确实是这样,开启 Hyper-V 之后,原来的系统会变成一个运行在其上的虚拟机。
n2l
2024-09-04 23:45:06 +08:00
@haython DHCP 没关吧
wheat0r
2024-09-05 00:01:43 +08:00
@zbatman #27 是把 ESXi 从 VMware 家里开除了吗?
3L99FY8Topz9608o
2024-09-05 00:02:26 +08:00
越少越好,只要必要
hez2010
2024-09-05 00:47:05 +08:00
@NevadaLi Windows Admin Center 是装在网关上用来管理集群的,这个网关的资源你得给够。反正我给了 2 核 4G 的资源给它用起来非常流畅。
qizheng22
2024-09-05 00:54:24 +08:00
目前选择了 Linux+Docker ,除了远程桌面有点蛋疼。大多数远程桌面不支持 Wayland ,Gnome 的 RDP 不能保存会话,退出远程后,所有程序都关了
4s4IYOLfT1s3InRR
2024-09-05 08:35:00 +08:00
上边好几个 v 友都说了 pve 可以解决,非要用 linux+docker ,这不纯若只么,如果只是远程操控自带的 vnc 完全够用

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1070200

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX