Linux 主力机+多开虚机的最佳实践是什么

2022-04-17 22:07:11 +08:00
 hanssx
前 2 天发了这么一个帖子(已下沉 1 天) https://v2ex.com/t/847100

主要需求:
1. Linux 作主力机,把虚拟机多开的这个需求分离出来,让 PVE 方案来做,当主力机需要用到虚拟机时,就 rdp 或 vnc 到 pve 里面的 windows 或 linux 。
2. 只用来安装 windows 与 linux ,不需要安装 openwrt 、omv 、nas 等。初步想法是在 PVE 里面装一个 windows 7 (用作日常工作沟通、收发邮件、安装 windows 的一些软件比如 X 雷)、一个 windows server 2016 (学习与测试)、一个 ubuntu (学习与测试)、一个 linux mint (学习与测试)。
3. 不考虑 mac ,已习惯 i3wm+mint ,主要是业界这些毒瘤软件不支持 Linux 让人烦。


因为没做过相关实操,有几个问题想请教做过的老哥:
1. 我也知道 pve 里面装 Linux 比较合适,但是需求就是要用 windows ,想问一下,在相同硬件情况下,pve 里面装 windows 虚拟机和普通的 vmware workstation 装 windows 虚拟机的方式,性能差别应该不大吧?如果相差很大,是为什么以及咋解决呢?
2. 如果这套方案可行,我是想把 pve 放到公司 7*24 (主要在公司用电脑嘛,只走内网 RDP 也快,还能用公司电费),硬件体积最好小一些(也不用追求太极致,性能还是最主要的),pve 也是看了几天 youtube 视频才了解一点点(视频杂乱不成系统),硬件选配方面也不懂,我想问一下应该如何学习硬件选配和 pve 虚拟化(有网络基础和 Linux 基础),老哥们有比较推荐的播主或资源论坛吗。
13582 次点击
所在节点    Linux
76 条回复
ety001
2022-04-19 14:42:18 +08:00
我是 Dell R730xd ,E5-2680 v3 *2 + 256G 内存 + 若干硬盘 + 1060 显卡。
USB 扩展显卡只需要直通 USB 设备即可,难度比直通 PCI 显卡简单好几个量级。
如果还想玩大型游戏的话,还是得折腾 PCI 显卡直通。
photon006
2022-04-19 17:05:59 +08:00
@Agre 这性价比好高,1200+
ropon
2022-04-19 17:08:41 +08:00
@Agre 耗电量如何 7*24 小时开机么
hanssx
2022-04-19 17:21:33 +08:00
@itgoyo 握手,没想到有同道。
@Agre
@ety001
感谢两位老哥提供配置


@documentzhangx66
@msg7086
两位老哥别吵啦
documentzhangx66
2022-04-19 17:24:14 +08:00
@CatCode 总之是这样的:

虚拟化兼容性、功能,VMware 肯定是最强的。msg7086 说他的客户 VMware 老炸,我问他原因,你看到没,都是客户自己的问题。连个 UPS 都没有。这就类似于,没经过 Oracle 的培训,却去管理 Oracle 一样,不炸就奇怪了。

但是,如果是跑在一些 VMware 不支持的家用级硬件上,PVE 可能是个更好的选择。另外,PVE 的底层是 KVM ,对于计算密集型来说,性能可能会比 VMware 更好。
documentzhangx66
2022-04-19 17:26:44 +08:00
@msg7086

你客户的 VMware 经常炸,原因是在于,VMware 太复杂,你的客户又没经过整个培训与认证,那么不炸才奇怪,炸了反而正常。

就像你说的,你的客户,机房电力供应会出问题,那么连 UPS 都没配,不炸才奇怪。

另外别的问题,你的客户没买正版吧?没买正版,不打补丁,遇到一些小问题,也是很正常的。
documentzhangx66
2022-04-19 17:27:04 +08:00
@hanssx 没吵,只是正常讨论交流。
CatCode
2022-04-19 17:49:52 +08:00
@documentzhangx66 我不是很理解为啥计算密集型 KVM 性能可能会比 VMware 更好。

但针对其他的方面我也说两点:
1. 我司的那台测试机是老机器了,ESXi 只能装 6.7 ,7.0 报兼容性问题。所以在那段折腾的时间就感受到了 ESXi 对硬件的严苛要求。
2. 我好奇 PVE 对高版本内核的兼容性:比如 PVE 的内核是 5.4 ,我开个虚拟机去折腾 Arch Linux 跑上了 5.17 。这俩会不会打架?(我不是说我司测试的 PVE 客户机炸内核吗?当时 PVE 的内核还在 4.x ,我们的虚拟机内核是 5.4 。当然也怀疑是 NUMA 相关的问题。但没有继续调查了)
3. 我司的大部分机器也是没有配置 UPS 的(毕竟垃圾公司)。我个人认为非关键应该、高负载应用,没有 UPS 的情况下用 ESXi 也不是不行。
documentzhangx66
2022-04-19 19:00:23 +08:00
@CatCode

1.每种虚拟化,都有自己的优劣。

2.VMware 的最大优势在于功能多 + 管理方便。

3.VMware 底层虚拟化技术,在计算上,不如 KVM 高效。

4.PVE 的底层是 KVM 。
documentzhangx66
2022-04-19 19:03:45 +08:00
@CatCode

1.你们开发,真的需要 ESXi 、PVE 、Hyper-V 这种彻底的虚拟化?如果 Docker 这种半虚拟化 能满足要求,用 Docker 比 ESXi 、PVE 、Hyper-V 性能高一个数量级。

2.如果一定要用彻底的虚拟化,能用 ESXi 就最好用 ESXi ,用不了才用 PVE 。

3.UPS 并不一定需要那种很贵的。能撑几分钟的几百元普通家用的也行。关键一定要几分钟的关机时间,这非常重要。
CatCode
2022-04-19 19:13:07 +08:00
@documentzhangx66 主要是我们很奇特地全员歧视 docker ,大家的想法是宁愿用虚拟机这种重的,也不用 docker (笑)
其次是我们不是用虚拟化跑应用,主要还是测试,在各种花里胡哨的环境上测试、以及测试一些骚点子(瞎折腾)
documentzhangx66
2022-04-19 21:29:52 +08:00
@CatCode

1.测试肯定是 ESXi 、PVE 这类彻底虚拟化的系统更方便,有一种玩法是:

高主频 CPU + 高主频内存条 + m.2 nvme SSD raid 0 ,可以打在线快照(开机时打快照),极端方便。比如你打个在线快照,接着 rm -rf /,然后立即恢复,机器配置好,甚至可以做到秒级恢复。这个问题上,Docker 就不合适。

2.但是,高性价比、快捷地部署生产系统,docker 却又比是完胜。因为目前虚拟化发展到现在,出现了各种妖魔鬼怪的平台,除了大家在上面提到的 ESXi 、PVE 、Hyper-V 之外,还有阿里云、腾讯云、百度云、华为云、电信天翼云、联通沃云、移动云、深信服信服云等等。

这些云中,很多云为了设置门槛与壁垒,不支持通用虚拟机文件,互不能导入整体虚拟机,有些云甚至连 ghost 备份出来的 xx.gho 这种磁盘文件,都无法进行恢复。

所以,这种情况下,docker 就成了快速导入、导出、部署的最佳选择了。这么多云,今天这个云做活动,明天那个云又降价,后天这个云又涨价。用 docker ,甚至可以做到像高频交易一样,在高性价比的云里反复横跳,给公司或工作室节约大量的资金。
msg7086
2022-04-20 02:09:40 +08:00
@documentzhangx66 你太想当然了,各种假设都是拍脑瓜想出来的,这还怎么讨论下去。

1. VMware 出现过多次紫屏,那都是自己崩溃的。
我们生产用的硬件都是 HP Dell 超微的全新原装服务器,不是几百块的洋辣鸡,就是全新出厂拿过来的机器,最便宜也是 4000 美元一台,我们卖给客户的是 9500 美元一台(成本价),要求比较高的客户会直接定制高端服务器,经常出问题的一家客户用的就是四路 E7-8890 配了 3TB 内存和 4 个全闪盘柜,花了多少钱我没问,但是不会是便宜货。就这样的生产环境也遇到过好几次紫屏的情况。

2. 机房电力供应出问题是怎么推断出 UPS 没配的,你不会以为只要有 UPS 就不会遇到断电的情况了吧?
先说我朋友在加州的机房,光我知道的就已经断过两次电了,而且是全机房断电。你以为他们整个机房没配 UPS ?
再说说最近我司在加拿大的机房,也是好几个房间断电,原因是维护 UPS 的时候配电板莫名其妙炸了,电也没有切到机房自己的发电机组,导致整个区域 sev1 事故。

3. 正版的问题,这个我实在不知道怎么吐槽了。上面我都告诉你我们和 VMware 签约的价格了,你跟我说没买正版……你猜猜买了全新品四路 E7-8890 的客户会不会区区 5000 刀的 vCenter 都不想买 →_→
msg7086
2022-04-20 02:27:51 +08:00
说实话,你的回复给我的感觉就是虽然你没怎么深入研究过 VMware 全家桶但是你就打心底里相信他们的系统稳得一批,不会出问题。像我做了五六年的 VMware 二次开发和运维,装过起码几十次 ESXi 和 vCenter ,处理过大大小小各种 incident 的人的亲身体验,你是不信的,就觉得要么是我们用盗版,要么是机房不装 UPS 。你这已经不像是在正经讨论了,完全就是在找机会挑刺了。你完全可以分享你自己的 VMware 使用经验,让我们看看「经过培训与认证」以后 VMware 就不会出问题的场景。或者你可以分享一下你搭建机房的经验,怎么设计电力供应冗余系统可以让服务器保持百分百 SLA ,说不定我司可以请你来设计我们全球那十几栋新建的机房呢。
documentzhangx66
2022-04-20 10:03:44 +08:00
@msg7086

1.我想当然?我拍脑瓜假设??别双标好吧老弟?

你在 34 楼提出:就稳定性来说 vCenter 和 PVE 真的是不能比。你这不是想当然?你这不是拍脑袋假设?然后我在 35 楼问你要证据,你给过没?


2.你真的回答问题了?

你在 34 楼提出:客户大概有 20%的时间是 vCenter 炸了、VMFS 也经常炸,我在 35 楼问你具体原因,

你在 36 楼说 ESXi 会紫屏崩溃,你觉得这是回答?你要想怪 ESXi ,你得找出 ESXi 为啥紫屏崩溃。找出原因后还要进行 AB 测试来验证这种说法。


3.你真的懂全责划分?

连机房电力供应出问题,导致丢数据,导致虚拟机损坏,你把这锅丢给 VMware ?


4.你真懂机房供电问题?

你说 UPS 的配电板挂了,服务器就断电,那请问服务器的冗余电源是怎么接的?市电与发电机就没独立的配电板了?

所以我在上面说了,客户不专业,没经过培训,配个电都不专业,这锅还甩给 VMware ?

正经的机房,是多路供电的,这你知道吗?至少要有双路市电、发电机、UPS 。3 路供电不说百分百 SLA ,总比你说的那些炸一路就全炸的客户机房要强吧?


5.当你不了解别人的情况下,别轻易觉得自己咋滴咋滴。你只是给 VMware 做二开,只是装过 ESXi 与 vCenter ,说白了你就是个产品用户而已。我都不好意思说我大二在不知道 VMware 的情况下,就把它最初的那一套虚拟化、自动化伸缩扩容的东西设计出来了,你明白用户与设计者的差距吗?
msg7086
2022-04-20 11:54:34 +08:00
@documentzhangx66 那可真抱歉了,我没应聘 VMware 。说不定哪天我跳槽过去了可以帮他们调试调试内核。

至于机房供电,这个我不懂,但是我没明白你的意思,你说「不说百分百 SLA 」,那到底服务器的供电能不能做到百分百不断电?如果能做到,为什么说「不说百分百 SLA 」?如果不能,那么 VMware 遇到断电就会丢数据,是不是意味着机房就不应该用 VMware 了?我没看懂这里面的逻辑是怎么样的,想听听你的分析。
msg7086
2022-04-20 12:14:39 +08:00
顺便我要提醒你一句,这个帖子从头开始讨论就是关于家用虚拟化环境的。
我一开始提的是 ESXi 功能被 PVE 吊打,因为这两者都是对家用环境免费的。
但是从 27 楼开始你把整个主题带到了 VMware 全家桶几千甚至几万美元的产品上去。
你说 ESXi 和 PVE 比不恰当,要拿 VMware 全家桶去和 PVE 去比。
好家伙,几千美元一套的软件和开源产品比就恰当了。

再往下的论点就很奇怪了,断电丢数据好像是理所当然的事情一样。企业级的软件,就说 Windows Server 或者 RHEL 这些产品,他们会断个电虚拟机就点不亮了,文件就丢了?我们开发企业级软件的时候都要考虑 Resiliency ,怎么就 VMware 不需要考虑这些问题?

再往下就更奇怪了。你做过虚拟化设计,这和我说 VMware 做得烂有什么关系?
这就好比,你是微软员工,搞 Hyper-V 的,我是做 VMware 二开的。我说 VMware 代码写得好烂啊。结果你来一句,老子做 Hyper-V 的时候还不知道 VMware 呢,所以你 VMware 用出问题肯定是你的问题。

啊?这逻辑属实给我整不会了。
documentzhangx66
2022-04-20 14:00:18 +08:00
@msg7086

1.软件问题:

1.1 软件不可能是 100%稳定的,无论是 ESXi 还是 PVE 或者别的什么。

1.2 正版软件比盗版稳定,主要是 3 点:有补丁、有培训、有厂家技术支持。

1.3 软件系统有个通病,功能越多,越复杂,测试调试也越麻烦,测试能覆盖的百分比越低,软件系统也越不稳定。一旦炸了,就越容易丢数据,越难恢复。

特别是 VMware 企业级的备份与恢复,还是 EMC 提供的技术支持,这种跨了厂子,更容易出问题。EMC 的备份软件来备份 VMware ,以前老版本会小概率失败。

VMware 全家桶的功能比 PVE 要多得多,如果从功能数量上来说,VMware 全家桶,如果炸了,说不定比 VirtualBox 还要麻烦,根本就不需要和 PVE 比。

就像我回复楼上某个弟兄,如果能用 Docker ,尽量别用虚拟化。


2.供电问题:

2.1 机房供电理论上无法做到 100%保障,就像数据备份一样,谷歌推荐 1 份数据至少要有 3 个副本,也只是说企业级常用情况下足够了,并不是 100%安全。

2.2 你客户的机房供电问题,是你客户的不专业造成的,这事与你没啥关系,你也不需要帮他们洗。

2.3 你的客户,我盲猜要不是不专业,要不就是为了高性价比,做成了以下结构:

一路市电 + 发电机 -> UPS -> 机架 -> 服务器,这样导致只要一环炸了,服务器就全炸。而且服务器的两路电源也成了摆设,这种结构早期国内大多也是这种情况。

注释:正规服务器至少有 2 个电源,任意一个电源单独工作都可以给整个服务器供电,任意一个电源挂掉都不影响服务器正常工作。

但这种结构,优点也很明显,就是节约钱,并且各种半吊子电工也能搞定。

后来专业的商业机房供电,一般是 2 路,结构如下:

市电 A + 发电机 A -> UPS A -> 机架 PDU A -> 服务器电源 A

市电 B + 发电机 B -> UPS B -> 机架 PDU B -> 服务器电源 B

注释:PDU 是专用于机柜的高档插排。

这种结构,就算是炸一路,服务器也能正常工作,虽然不是 100%保障,但我目前还没听说过,这种结构导致全炸事故。


3.逻辑问题。

3.1 我在 27 楼引入 VMware 全家桶这个概念,是因为你在 23 楼拿 VMware ESXi 与 PVE 比较。我认为这种比较,对 VMware 不公平,因为它们不是对等产品。

3.2 断电丢数据,本来就是理所当然的事情。因为除了系统设计上支持断电之外,没有哪个系统与软件,能保证自己断电后仍然正常,包括地球上 TOP 1 数据库:Oracle 。

3.3 一个系统,在设计与实现上,是可以支持断电不丢数据的,但这是一个系统工程,需要从硬件、操作系统以及软件、数据库等各层次都要进行专门设计,甚至硬盘也要修改业务逻辑,并且系统整体性能会很低,不丢数据也并不是说业务没问题,掉电前最后一部分业务也会快速失败。这套系统因为性能低,所以在经济上不可行,大部分通用系统与软件,不会去这样设计与实现,而是希望外部环境去保障不断电,同时通过备份来保障数据安全性。目前很多系统甚至有一种叫 CDP 的技术,每隔 3-5 秒进行一次差异备份,然后每小时进行一次差异备份的汇总。

3.4 我说我做过虚拟化设计,是针对你在 54 楼,你说你做了很多年的 VMware 二开、运维、安装、处理问题。你想通过这些证明你对 VMware 问题比我熟悉,质疑我的专业性,质疑我是在胡说八道,我才解释这些,来说明我是在认证和你讨论。
readonly
2022-04-20 14:16:09 +08:00
我就 win10 做宿主机,vbox 开 openwrt 和黑裙,稳定运行两年多了,没什么问题,本身主力就是用 win10 ,宿主机就是 win10 了没有所谓的性能损耗,而且 win10 驱动什么的完全不用折腾,虚拟机备份这种直接移动硬盘文件复制粘贴完事,维护成本超低,主力 win10 性能无损耗,想不明白天天搞 pve 和 esxi 的,这些都是企业级应用,家用老老实实 win10 做宿主
Agre
2022-04-20 14:23:25 +08:00
@ropon #43 放公司,平常 CPU 火力全开。

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

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

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

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

© 2021 V2EX