V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
cwcc
V2EX  ›  分享发现

自己家用主机的虚拟化方案实施情况

  •  
  •   cwcc · 2022-03-12 21:22:37 +08:00 · 2761 次点击
    这是一个创建于 1020 天前的主题,其中的信息可能已经有所发展或是发生改变。

    家用主机见前帖提到过的几个问题:

    先说我的目前方案,我使用的是华擎 Deskmini Ryzen 5600G / 32GBx2 3200 / 128GB + 256G + 512G 三块 SSD 。

    1. 宿主机安装 Windows 10 LTSC 2021 ,加上一个输入法补丁,CPU 日常占用可不到 1%。
    2. 虚拟机使用 Hyper-V 方案,安装了 6 个虚拟机,其中 4 个虚拟 Linux (无桌面)和 2 个 Windows 。
    3. 网络使用扁平化处理(桥接模式,无 NAT )。
    4. 机器放到脚下柜子里,猫头鹰风扇。

    运行了以下服务:

    • Ubuntu #1 虚拟机当 Web 服务计算节点,跑一些 Web 服务。
    • Ubuntu #2 虚拟机当透明代理网关设备,其他主机如有科学上网需求网关 IP 换到这里就好。
    • Alpine 虚拟机当自建的 GitHub Action 构建跑自己的项目编译,比如这个
    • OpenEuler 做家庭物联网相关实验。
    • Windows #1 做养蛊安装国内软件。
    • Windows #2 做付费软件安装点,并开启快照。
    • 宿主机安装 Steam 偶尔玩些游戏。

    先说这样虚拟化的优点

    • 不会出现虚拟机空载的时候还少量占用 CPU 的现象,基本虚拟机占用多少宿主机就占用多少,对于我这种功耗敏感的用户来说待机功率低( 20W )就感觉很爽。
    • 设置成动态内存的话,内存资源没有浪费,Hyper-V 对虚拟机的内存支持得较好,比如启动时可以只占掉 1G 左右内存,软件开得多一点就自动一点一点往上涨,不用了就降回去,比直接固定死占用内存更灵活。
    • 宿主机 Windows ,偶尔打游戏直接键鼠一接上去显示器换模式就能玩。(核显性能也很强的)。
    • 虚拟的 Windows 也同时用来给家里其他人用,统一使用 RDP 连接,资源能很好地分离。
    • 虚拟的 Ubuntu 用作本地 Linux Web 服务器,放些本地的 Web 计算节点。
    • Hyper-V 在 Windows 下的 RDP 效果在调整性能后不错,在 macOS 的 RDP 下尚可(局域网环境)。
    • 创建快照比较方便,可以很好地利用 Windows 资源管理器进行管理。
    • 宿主机如果正常关机,Hyper-V 也能做到较好地平滑关机,开启后自动再次开启。

    使用上遇到的缺陷

    • Hyper-V 对 Linux 桌面的支持还是一坨,想都不要想,超级差。
    • 动态内存下的操作系统如果遇到先检测内存大小再申请内存的软件可能比较难受,会遇到无法使用的情况。
    • Hyper-V 下的 Linux 如果依赖 tmp 目录的程序,和宿主机平滑重启后会出现问题,比如 tmux 。
    • 还是 RDP 的问题,在 RDP 下,没办法实现 60fps 和显示器直连的最佳效果,即使分辨率能达到,远程桌面玩游戏是不可能了。
    • USB 设备不能直接重定向到虚拟机内。

    所以总结了一下,我使用下来就是感觉,如果想充分利用 CPU 资源和内存资源,且对非图形计算的 Windows 系统有需求的选 Hyper-V 做虚拟化是一个不错的方案。

    目前下一步的使用想法就是尝试一下 PVE ,但是有个核心的问题就是我的主机是核显,做核显直通可能会比较麻烦,可能是一个需要研究的事情。

    另外,我自己由于已有白群晖,所以就没有让主机做 NAS 的需求了,但我这个方案也非常适合做一个基本的小 NAS ,主机支持塞两条 NVME M2 ,两个 2.5 寸 SATA 盘,可以结合虚拟机搞个 NAS 环境也非常不错。

    感觉 PVE 也很好,但是比较折腾,不过要是能把以上的缺点都干掉,我觉得折腾还是值得的。

    18 条回复    2022-03-19 19:25:37 +08:00
    wccc
        1
    wccc  
       2022-03-12 21:35:36 +08:00
    deskmini 3400g pve 虚拟化 spice 日常远程 manjaro 开发
    amd 核显直通还是很麻烦的
    brMu
        2
    brMu  
       2022-03-13 07:44:58 +08:00 via Android
    hyper-v 玩的人少,个人还是推荐 esxi 或 pve ,win 三天二头给你来个补丁让你重启就烦的要死,我的 esxi 差不多 1 年没重启过了
    bao3
        3
    bao3  
       2022-03-13 13:22:06 +08:00 via iPhone
    用 PVE 吧
    cwcc
        4
    cwcc  
    OP
       2022-03-13 13:25:26 +08:00
    @brMu 用 LTSC 好像目前没有遇到过任何自动重启的时候,基本都是想要更新的时候就手动点进去更新的。
    cwcc
        5
    cwcc  
    OP
       2022-03-13 13:29:15 +08:00
    @bao3 打算切,但是 AMD 核显直通确实比较头疼,可能得考虑一下。
    brMu
        6
    brMu  
       2022-03-13 19:16:15 +08:00
    @crazywhalecc 那奇怪了,我也是 LTSC ,用了 3 年了,几乎每个月的补丁打完后都提示要重启,不需要重启的很少
    patrickyoung
        7
    patrickyoung  
       2022-03-13 22:42:20 +08:00 via iPhone
    看到 HPV 我就不打算继续看了……因为自己在笔电上体验过,额外开销太大,功能废物……
    danielzhang0212
        8
    danielzhang0212  
       2022-03-14 03:12:50 +08:00
    可以考虑 unraid ,gpu passthrough 做得很好
    Pogbag
        9
    Pogbag  
       2022-03-14 13:45:51 +08:00
    很不习惯用 windows 做宿主机,还是推荐 esxi
    cwcc
        10
    cwcc  
    OP
       2022-03-14 14:17:58 +08:00
    @Pogbag 哈哈,我也不习惯,但是我发现 Windows 也能调教好,主要是我家里不想买显卡,但是家里就这么一台高性能电脑,有偶尔打游戏的需求,所以就只能 Windows 做宿主机系统了。
    745839
        11
    745839  
       2022-03-16 10:54:39 +08:00
    USB 设备不能直接重定向到虚拟机内。
    745839
        12
    745839  
       2022-03-16 10:54:49 +08:00
    leoleoasd
        13
    leoleoasd  
       2022-03-16 15:03:30 +08:00
    有 nvidia 显卡的话,可以考虑用 moonlight 远程串流
    410054336
        14
    410054336  
       2022-03-16 15:14:17 +08:00
    PVE 可以支持你的需求。
    cwcc
        15
    cwcc  
    OP
       2022-03-16 15:17:50 +08:00
    @410054336 目前有 PVE 对 AMD 的核显直通的菜坑教程吗,找了全网基本没有
    cwcc
        17
    cwcc  
    OP
       2022-03-19 01:04:07 +08:00
    @410054336 这个好像还是独立显卡,独立显卡的教程有很多,但是核心显卡更为困难一点,文中好像没有提到(还是我眼瓢了?)
    cwcc
        18
    cwcc  
    OP
       2022-03-19 19:25:37 +08:00
    经过最后尝试 PVE 直通显卡失败,放弃使用 PVE 了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5687 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 01:48 · PVG 09:48 · LAX 17:48 · JFK 20:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.