V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
hanssx
V2EX  ›  Linux

PVE 纸上谈盘之买大了

  •  
  •   hanssx · 2022-06-23 10:37:35 +08:00 · 10820 次点击
    这是一个创建于 875 天前的主题,其中的信息可能已经有所发展或是发生改变。

    趁 618 想用 Intel 12 代组 PVE 开虚拟机,主要是 Linux+Windows 的虚拟机,兼顾家用的话先放到次要地位(因为没想好到底是放家里还是放公司),在网上看了不少也在 V 站问了好多,最后硬盘好像是买大了,且听我细细道来。。。

    我当时寻思一步到位,买了个 2T 的三星 970EP+4T WD 红盘,后面发现诸多不便,主要体现在 2 个方面:

    1. All in One SSD ,这样对硬盘使用加大,且一损俱损,全荣才能荣。
    2. 没法硬盘直通,来提高硬盘使用效率。

    现在想到了一个办法,把 2T 换成 4 个 512G 的 SSD ,2 个 Nvme+2 个 SATA ,用途如下: 1 个 Nvme 用于 PVE 系统 1 个 Nvme 用于分配空间给其他虚拟机,比如 NAS 、LCX 容器等 1 个 SATA 用于直通给 Linux 主力 1 个 SATA 用于直通给 Windows 主力 4T WD 红盘用于开启 SMB ,共享给其他虚拟机。

    好处如下:

    1. 更好地隔离系统之间的影响,比如装 PVE 的那个 Nvme 不会将空间分配给其他虚拟机,不会一损俱损,只会你荣任你荣,我荣不管你。
    2. 硬盘直通的时候直通 SATA 控制器,硬盘使用效率达到最高,而且还能使用硬盘的 SMART 功能。

    补充:

    Nvme 好像可以单盘直通,不过和主板有关系,有运气成分?具体参见 https://v2ex.com/t/845488


    各位玩过的前辈,这种方案可以吗,可以的话我就去换硬盘了。

    49 条回复    2023-08-10 15:21:49 +08:00
    ScepterZ
        1
    ScepterZ  
       2022-06-23 10:40:16 +08:00   ❤️ 1
    别的不知道,但是你的主板应该挺贵的,这么多位置
    hwdef
        2
    hwdef  
       2022-06-23 10:42:11 +08:00
    typo: lcx -> lxc
    hanssx
        3
    hanssx  
    OP
       2022-06-23 10:43:06 +08:00
    @ScepterZ 主板那个 X 星的迫击炮,有 2 个 Nvme 的,机箱 Meshify C Mini 可以带 3 块 2.5 SSD+2 块 3.5 HDD(具体没上手,带一块也行)
    hanssx
        4
    hanssx  
    OP
       2022-06-23 10:43:34 +08:00
    @hwdef 确实,改不了了,老哥。
    hanssx
        5
    hanssx  
    OP
       2022-06-23 10:45:51 +08:00
    影响各位观感了,抱歉,刚才编辑了一下主题,不知道为啥中间那块格式没了。
    ```
    用途如下:
    1 个 Nvme 用于 PVE 系统
    1 个 Nvme 用于分配空间给其他虚拟机,比如 NAS 、LCX 容器等
    1 个 SATA 用于直通给 Linux 主力
    1 个 SATA 用于直通给 Windows 主力
    4T WD 红盘用于开启 SMB ,共享给其他虚拟机。
    ```
    documentzhangx66
        6
    documentzhangx66  
       2022-06-23 10:50:25 +08:00   ❤️ 3
    你的思路应该改进一下。

    1.如果你在意负载全部集中在一块 SSD 上,那么你应该多买几块小容量 SSD ,来分担负载。


    2.如果你在意的是,重要数据全部集中在一块 SSD 上,导致万一这块 SSD 坏了,数据就全丢了,那么你应该至少再买一块相同容量与性能的 SSD ,来做 raid 1 ,然后再买一块更大的机械硬盘,用来做每日自动备份。


    3.你别听那帮 NAS 佬天天说直通,你就也要跟风做直通。

    首先虚拟化与半虚拟化的重要特质,就是通用化。你一旦在一台机器上设置了直通,就不好做多机高可用、基于自动迁移的自动负载均衡。

    其次,那些能做直通的 NAS 佬,是经济存在问题的,只买得起一台,所以非得直通。你看看做专业集群的,谁会去弄直通。


    4.你真的需要溢价溢到爆表的 12 代 Intel 去搞虚拟化?你是否有仔细研究过你对虚拟化的需求?
    ScepterZ
        7
    ScepterZ  
       2022-06-23 10:53:35 +08:00
    @hanssx 想错了,我以为你 sata 指的是 m2 的 sata……
    qping
        8
    qping  
       2022-06-23 10:57:41 +08:00
    我的方案和你之前的差不多,硬盘小点,1Tssd + 1T 机械
    pve 跑虚拟机,不过另外有 nas ,重要的数据定期备份到 nas 去,nas 那边是 raid1 的 4+4
    dcty
        9
    dcty  
       2022-06-23 11:03:39 +08:00
    一开始我以为我也会搞虚拟化,或者搞 NAS 什么的,结果最后就是装了个 Windows ,开个共享给 Mac 备份。
    显示器(自动息屏肯定开了)+PC + Mac Mini 7*24 开着,一天的耗电大概 2.2 ~ 2.5 度左右。
    软路由+AP+光猫一天的耗电大概是 0.5 度。
    hanssx
        10
    hanssx  
    OP
       2022-06-23 11:07:16 +08:00
    @ScepterZ 我表述没到位

    @documentzhangx66

    感谢老哥回复,
    1.确实是我的需求
    2.备份我有同步到云端,另外有移动硬盘备份,不懂 raid ,这块还得学习。
    3.但是直通确实能提高硬盘性能吧?后面那个多机高可用、基于自动迁移的自动负载均衡,这个听不懂。。
    4.没仔细研究过,主要是把工作学习中的开虚拟机要求分离到 PVE 上面,不想装服务器 U 因为声音大体积也大,所以就用了传统 CPU 。
    photon006
        11
    photon006  
       2022-06-23 11:09:08 +08:00
    楼主把 ssd 想得太脆弱。

    我大概 10 年前的三星笔记本,256g ssd 装双系统到现在正常使用。

    去年 chia p 盘用的 1T SN 550 ,磨损 119%,按照官方寿命来算已经报废,照样直通给 vm ,docker 网心云跑得飞起,只是测速 900M/s 比全新低不少,不影响废物利用。

    真担心 ssd 挂可以上 ups ,ssd 只安装系统,数据用机械盘挂载,做到程序跟数据分离就行了。

    如果担心机械速度慢,可以用 ssd 做缓存提高速度。
    libook
        12
    libook  
       2022-06-23 11:10:01 +08:00
    我不是 All in one ,我的服务器和 NAS 是两台机器,这样性能、故障隔离。

    想要确保数据不丢,没啥好办法,就是冗余+备份。

    NAS 上的系统是装在 U 盘里的,深入做了写入优化,确保 U 盘寿命最大化,每天自动任务 dd 备份 U 盘到机械硬盘阵列里,这样 U 盘坏了可以用备用系统进入机械硬盘提取备份来恢复。

    服务器的思路是差不多的,系统和服务装在 SSD 上,数据不存本地,经 NFS 存到 NAS 的阵列里,因为 SSD 里的数据很少更新,所以只需要每周全盘备份+压缩存到机械硬盘里。

    换小的 SSD ,空间分配可能不够灵活?比如你发现有一个用途快用满 512G 了,但同时另一个用途还没用多少空间。至于直通,一方面得看性能提升多少,另一方面也得看你对性能要求是否有极致需求,毕竟已经用 PVE 了性能也不可能完全没有损耗的。
    FrankAdler
        13
    FrankAdler  
       2022-06-23 11:11:23 +08:00
    1. 1 换 4 成本提高,然后就算 4 个该备份还是要备份,不如考虑备份而不是直通
    2. 为什么一定要直通,LVM 动态分配不好吗,性能也不会有多大损耗,还方便做迁移啥的
    更建议你虚拟机 lxc 啥的装在 ssd 上,大容量使用空间的添加第二个虚拟硬盘放 hdd ,再额外购置一块小容量的 2T 做备份,pve 有定时备份功能。
    msg7086
        14
    msg7086  
       2022-06-23 11:13:02 +08:00 via Android
    我不太能理解。pve 自己就吃 20G 硬盘空间,为什么要单独给一块盘。然后 SSD 现在基本都很靠谱,为什么要特意拆分。多块 SSD 的可靠性又不会增加。直通硬盘有什么特别的优势?归根结底都是通的块设备,你开个 LVM 通进去也差不多啊。真要完全直通,需要把硬盘控制器通进去,而不是只通一个块设备。你现在这个结构已经算是挺好了,就是这块 4T 硬盘比较坑,SSD 我觉得没问题。
    hanssx
        15
    hanssx  
    OP
       2022-06-23 11:35:30 +08:00
    @libook 确实,空间分配可能不够灵活。直通目的也是想追求最大性能。

    @FrankAdler 直通之后的虚拟机备份不好备份了吗?


    @msg7086 是的,准备直通 SATA Controller 。
    documentzhangx66
        16
    documentzhangx66  
       2022-06-23 11:54:05 +08:00
    @hanssx

    1.现在 nvme ssd 了,硬盘根本没必要直通。

    2.你又不缺钱,虚拟化只拿来搞虚拟化用,不需要搞什么直通,也别搞直通。以后做集群时,直接上高可用。
    thtznet
        17
    thtznet  
       2022-06-23 11:54:17 +08:00
    PVE 本身只要跑在 U 盘里就行了,没必要买块 SSD ,担心寿命的话,有专用的企业级 U 盘卖( SLC )
    kukat
        18
    kukat  
       2022-06-23 12:51:23 +08:00 via iPhone
    我做直通是为了随时可以把 ssd 拔下来插到另一台机器上直接启动,需求不太一样

    你担心的是 ssd 寿命,我觉得大可不必,做好备份才是硬道理
    hanssx
        19
    hanssx  
    OP
       2022-06-23 13:09:25 +08:00
    多谢各位,我再想想,我总觉得还是分开好,估计后面可能还是会分开买几个盘,可能直通后备份、快照和迁移麻烦?
    mxuan
        20
    mxuan  
       2022-06-23 13:14:41 +08:00   ❤️ 1
    @hanssx 这么说,2T 的盘和分开没有多大区别,2T 的盘本身 TBW 也是大的,尤其是你准备用三星那问题更不大,这块盘正常用根本过不了 TBW 线。如果在意同时读取速度,那可能有稍微的影响。
    你担心硬盘挂掉的话,应该减配 NVME 的价格,因为 2T 跑虚拟化剩余容量会比较多。同时增加备份盘,备份盘要做 smb 或者 zfs ,pve 每日备份,没必要组 raid1 ,ssd 挂掉的概率低,hdd 可以考虑组一下,不过一般每日备份就够用了,实在是哪台虚拟机是每日在操作,那增加每日快照数量或者上 raid1 。
    接着你自己用的话,没必要硬盘直通,因为在使用 virtio 的半虚拟化条件下,性能损失不到 2%,再加上缓存策略,直通的影响完全可以忽略。windows 在安装的时候手动添加 virtio 的驱动,后面转为模板就可以了。
    FaceBug
        21
    FaceBug  
       2022-06-23 13:17:19 +08:00
    @photon006

    确实没那么容易坏

    我有一块 2012 还是 13 年买的三星,一直当 PC 系统盘用

    到了 18 年之后换到 PVE 上做系统盘,7*24 到现在
    mxuan
        22
    mxuan  
       2022-06-23 13:17:43 +08:00   ❤️ 1
    @hanssx 直通是没法备份的,迁移需要原盘完整迁移,raid1 也没必要,多备份才方便。
    yeyang5211
        23
    yeyang5211  
       2022-06-23 13:46:26 +08:00
    我买便宜又大碗的 amd 跑 k8s . 12 代用来玩游戏办公了
    rojer12
        24
    rojer12  
       2022-06-23 13:50:19 +08:00
    我的和你类似,但是我用的 esxi 。256 的 sm961 做系统盘。6 个 4t 的 sata+一个 s3700 400g ( cache )走 raid 卡直通做 raid5 组 nas ,一个 800g 的 p3600 存放虚拟机文件和一部分缓存。主板是 tuf ,cpu 是 10400T ,32 的内存
    hanssx
        25
    hanssx  
    OP
       2022-06-23 13:53:38 +08:00
    @mxuan 直通没法备份的话那就比较难受了。


    @kukat 最主要是我想提高性能和分散硬盘负载,话说你怎么备份直通硬盘的虚拟机系统的?
    mxuan
        26
    mxuan  
       2022-06-23 15:58:06 +08:00
    @hanssx 直通可以备份,但是迁移数据的时候需要手动迁移。复杂度增加,同时由于备份任务一般会保留多个备份文件,备份时候需要硬盘容量 x2,到 x5 。我回去看下我的直通盘,backup 可以选。
    powergx
        27
    powergx  
       2022-06-23 15:59:57 +08:00
    all in one 用了十几年了
    两块 p3700 r1 系统盘
    mxuan
        28
    mxuan  
       2022-06-23 16:01:51 +08:00
    @mxuan 我自己习惯每次直通就勾选 backup=0 ,所以记错了。
    hanssx
        29
    hanssx  
    OP
       2022-06-23 16:18:42 +08:00
    @mxuan 好的,感谢,老哥你这不也是直通了嘛,备份的时候不是看硬盘占用的容量吗,而是按照硬盘所有容量来备份?所以才会导致硬盘容量*2 到*5 ?
    liubaicai
        30
    liubaicai  
       2022-06-23 16:20:23 +08:00
    我也是 all in one ,但是除了 nas 其他数据都无所谓的,所以 nas 单独一个盘
    abc0123xyz
        31
    abc0123xyz  
       2022-06-23 18:00:09 +08:00
    ssd 没那么容易暴毙吧
    我 1.6t 的 ssd 写了 100 多 t ,健康度还是 100%
    mxuan
        32
    mxuan  
       2022-06-23 21:17:55 +08:00   ❤️ 1
    @hanssx 我直通是因为这个盘只做这一个内容使用,买的老盘刷 pt ,一开始用的 lvm 发现性能不够,以为是 lvm 的问题,结果裸盘再测试了一遍,性能反而更差,lvm 和 zfs ,或者 ext4 的 qcow2 ,由于有缓存的因素,性能反而比裸盘要好。加上 16 年测过 virtio 的性能,确实是损失不大,就没有变。

    备份的时候一般不会只留一个备份,在 pve 选项里面有 keep-daily ,keep-week ,keep-month 。我一般设置一个月 3-4 个备份,每周留 2 个备份,一天一个备份。

    备份的时候是 snapshot 模式,两个盘(一个系统盘,一个裸盘)打包在一个 zst 文件里面。(恢复的时候需要调整 sata 。)
    mxuan
        33
    mxuan  
       2022-06-23 21:18:45 +08:00
    @hanssx 我更多的还是 lvm ,zfs 。然后链接克隆。
    hanssx
        34
    hanssx  
    OP
       2022-06-23 21:31:34 +08:00
    @mxuan 那就是说硬盘直通的虚拟机也能正常备份啦
    话说用 M.2 Nvme 做虚拟硬盘,对比 SATA Controller 直通硬盘还真不好说性能,毕竟 M.2 Nvme 比 Sata 要快好几倍。
    elboble
        35
    elboble  
       2022-06-23 21:37:32 +08:00
    我倒是觉得 op 的想法有道理。
    我有个 gen8 ,当时买了个 720G 的山寨 ssd ,装了 pve ,虚拟了一个黑裙,一个 linux ,跑了 5 年了。其他 HDD 直通给黑裙,basic 存储。

    最近发现 ssd 的 0x07 0x008 1 25 --- Percentage Used Endurance Indicator ,想换掉 ssd ,这时就有点麻烦了。本来 vzdump 虚拟机出来,再导到新盘就行,但是原 ssd 上有可能有坏块,vzdump 都失败。现在头大了,系统虽然还能跑,但是不知道哪天就起不来了。

    如果 pve 系统盘和虚拟机分开,系统盘坏了直接换,虚拟机定期备份,这样就没我现在的困扰了。

    我现在想直接把 720G 的 ssd ,直接 dd 到新的 ssd 上,估计要一天多。
    hanssx
        36
    hanssx  
    OP
       2022-06-23 22:10:25 +08:00
    @elboble 哈哈,道友啊,我现在被大家说服了,再加上直通硬盘是 SATA Controller ,SATA 本身就没 M.2 Nvme 快,可能性能差别不大。
    如果能 dd 的话,花点时间也值得吧。
    AS4694lAS4808
        37
    AS4694lAS4808  
       2022-06-23 22:48:41 +08:00 via Android
    我是 1TB 的 nvme 和 4 块 sata 6TB 。一个虚拟机 ubuntu server mini 版专门用作备份,直通一块 sata ,装 borg 。其他虚拟机都是 ubuntu ,自己写 borg 脚本备份系统盘和重要资料到备份用 ubuntu 的不同 repo 中,按每天 每周 每月各一个存档。备份用 ubuntu 每月用脚本上传所有 repo 到 aws 的 efs 增量存储。
    AS4694lAS4808
        38
    AS4694lAS4808  
       2022-06-23 22:55:31 +08:00 via Android
    @AS4694lAS4808 windows 系统盘不知道怎么弄。。pve 的快照好像只能在宿主机上用,如果直接备份快照部分的数据,又用不了增量备份,备份文件就太大了。。linux 直接备份根目录,省事多了😂
    hanssx
        39
    hanssx  
    OP
       2022-06-23 23:12:33 +08:00
    @AS4694lAS4808 不能备份太多份,保留个 2-3 份就够了吧,快照好像没有备份完全。
    bao3
        40
    bao3  
       2022-06-24 09:55:05 +08:00
    首先要改变一个观点:你已经上了 Nvme SSD ,那你要思考你直通的必要性
    第二,lxc 是 container ,应该也没有性能问题(大概差 5%)
    第三,可能 win 需要用 qemu 虚拟机来跑,但是你应该可以发现 PVE 是可以自动异地备份你的虚拟机,比如我是每天备份一次。所以自身可能并不需要做磁盘冗余,出问题的时候你直接 restore 就好了。
    第四,按照你虚拟机的实际需求,比如我的应用,并不会特别频繁读写磁盘。在我的需求里面,甚至连 SSD 都用不到,读写比较多的是 Linux 的 lxc container ;能用到 Qemu 虚拟机场景,一般都是不重要的应用。当然这只是我个人的应用。
    hanssx
        41
    hanssx  
    OP
       2022-06-24 10:00:02 +08:00
    @bao3 我需求主要是把 Linux 和 Windows 用作工作 /学习,可以理解为主力应用吧,
    现在准备直通一块 Nvme M.2 (因为主板只有 2 个 Nvme M.2 接口),把 i350t4v2 的网卡也直通给这两个主力。
    nuk
        42
    nuk  
       2022-06-24 10:53:49 +08:00
    不直通唯一的问题是转移虚拟机不方便,不过用 pve 确实没必要直通,拿一块 nvme 做缓存它不比直通快多了?
    nuk
        43
    nuk  
       2022-06-24 10:57:08 +08:00
    @rojer12 和我差不多,不过我用 pm981a ,512G ,一半放系统,一半做缓存,没有单独的缓存盘,省钱。
    hanssx
        44
    hanssx  
    OP
       2022-06-24 11:07:11 +08:00
    @nuk 做缓存能比直通快?我已经申请退货把 2T 换成 1+512G 了,折腾折腾。
    nuk
        45
    nuk  
       2022-06-24 13:00:01 +08:00
    @hanssx 直通只有一个 vm 快,缓存所有的 vm 就都是 nvme 的速度了呀
    thtznet
        46
    thtznet  
       2022-11-26 21:34:23 +08:00
    没有能力做分布式存储,all in one 无论你怎么折腾都有风险
    skkk
        47
    skkk  
       2023-08-07 11:23:41 +08:00
    @mxuan zst 文件可能不安全,遇到过 zst 备份成功但还原时校验失败的问题,原因出在 PVE 的 zstd 版本较低,还有可能是当时内存中数据有问题,无法正确还原。所幸 truenas scale 的系统损坏对 zfs pool 没有损失,只损失了一些简单配置,最后导入了 2022 年 12 月的系统镜像,重新导入存储池后恢复了所有数据。
    mxuan
        48
    mxuan  
       2023-08-10 15:16:05 +08:00
    @skkk zst 没有做冗余处理么?这个属于内存的比特翻转问题把,gzip 应该一样存在。
    skkk
        49
    skkk  
       2023-08-10 15:21:49 +08:00
    @mxuan 我怀疑和内存比特反转一点关系都没有,因为备份时查看信息提示备份成功。我后来搜索了相关情况,这样的问题很多,换成 Gzip 就没问题。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5404 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 06:53 · PVG 14:53 · LAX 22:53 · JFK 01:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.