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

PVE 纸上谈盘之买大了

  •  
  •   hanssx · 13 天前 · 4758 次点击

    趁 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


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

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

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


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


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

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

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


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

    @documentzhangx66

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

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

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

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

    如果担心机械速度慢,可以用 ssd 做缓存提高速度。
    libook
        12
    libook  
       13 天前
    我不是 All in one ,我的服务器和 NAS 是两台机器,这样性能、故障隔离。

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

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

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

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

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


    @msg7086 是的,准备直通 SATA Controller 。
    documentzhangx66
        16
    documentzhangx66  
       13 天前
    @hanssx

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

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

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

    确实没那么容易坏

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

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


    @kukat 最主要是我想提高性能和分散硬盘负载,话说你怎么备份直通硬盘的虚拟机系统的?
    mxuan
        26
    mxuan  
       13 天前
    @hanssx 直通可以备份,但是迁移数据的时候需要手动迁移。复杂度增加,同时由于备份任务一般会保留多个备份文件,备份时候需要硬盘容量 x2,到 x5 。我回去看下我的直通盘,backup 可以选。
    powergx
        27
    powergx  
       13 天前
    all in one 用了十几年了
    两块 p3700 r1 系统盘
    mxuan
        28
    mxuan  
       13 天前
    @mxuan 我自己习惯每次直通就勾选 backup=0 ,所以记错了。
    hanssx
        29
    hanssx  
    OP
       13 天前
    @mxuan 好的,感谢,老哥你这不也是直通了嘛,备份的时候不是看硬盘占用的容量吗,而是按照硬盘所有容量来备份?所以才会导致硬盘容量*2 到*5 ?
    liubaicai
        30
    liubaicai  
       13 天前
    我也是 all in one ,但是除了 nas 其他数据都无所谓的,所以 nas 单独一个盘
    abc0123xyz
        31
    abc0123xyz  
       13 天前
    ssd 没那么容易暴毙吧
    我 1.6t 的 ssd 写了 100 多 t ,健康度还是 100%
    mxuan
        32
    mxuan  
       13 天前   ❤️ 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  
       13 天前
    @hanssx 我更多的还是 lvm ,zfs 。然后链接克隆。
    hanssx
        34
    hanssx  
    OP
       13 天前
    @mxuan 那就是说硬盘直通的虚拟机也能正常备份啦
    话说用 M.2 Nvme 做虚拟硬盘,对比 SATA Controller 直通硬盘还真不好说性能,毕竟 M.2 Nvme 比 Sata 要快好几倍。
    elboble
        35
    elboble  
       13 天前
    我倒是觉得 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
       13 天前
    @elboble 哈哈,道友啊,我现在被大家说服了,再加上直通硬盘是 SATA Controller ,SATA 本身就没 M.2 Nvme 快,可能性能差别不大。
    如果能 dd 的话,花点时间也值得吧。
    AS4694lAS4808
        37
    AS4694lAS4808  
       13 天前 via Android
    我是 1TB 的 nvme 和 4 块 sata 6TB 。一个虚拟机 ubuntu server mini 版专门用作备份,直通一块 sata ,装 borg 。其他虚拟机都是 ubuntu ,自己写 borg 脚本备份系统盘和重要资料到备份用 ubuntu 的不同 repo 中,按每天 每周 每月各一个存档。备份用 ubuntu 每月用脚本上传所有 repo 到 aws 的 efs 增量存储。
    AS4694lAS4808
        38
    AS4694lAS4808  
       13 天前 via Android
    @AS4694lAS4808 windows 系统盘不知道怎么弄。。pve 的快照好像只能在宿主机上用,如果直接备份快照部分的数据,又用不了增量备份,备份文件就太大了。。linux 直接备份根目录,省事多了😂
    hanssx
        39
    hanssx  
    OP
       13 天前
    @AS4694lAS4808 不能备份太多份,保留个 2-3 份就够了吧,快照好像没有备份完全。
    bao3
        40
    bao3  
       12 天前
    首先要改变一个观点:你已经上了 Nvme SSD ,那你要思考你直通的必要性
    第二,lxc 是 container ,应该也没有性能问题(大概差 5%)
    第三,可能 win 需要用 qemu 虚拟机来跑,但是你应该可以发现 PVE 是可以自动异地备份你的虚拟机,比如我是每天备份一次。所以自身可能并不需要做磁盘冗余,出问题的时候你直接 restore 就好了。
    第四,按照你虚拟机的实际需求,比如我的应用,并不会特别频繁读写磁盘。在我的需求里面,甚至连 SSD 都用不到,读写比较多的是 Linux 的 lxc container ;能用到 Qemu 虚拟机场景,一般都是不重要的应用。当然这只是我个人的应用。
    hanssx
        41
    hanssx  
    OP
       12 天前
    @bao3 我需求主要是把 Linux 和 Windows 用作工作 /学习,可以理解为主力应用吧,
    现在准备直通一块 Nvme M.2 (因为主板只有 2 个 Nvme M.2 接口),把 i350t4v2 的网卡也直通给这两个主力。
    nuk
        42
    nuk  
       12 天前
    不直通唯一的问题是转移虚拟机不方便,不过用 pve 确实没必要直通,拿一块 nvme 做缓存它不比直通快多了?
    nuk
        43
    nuk  
       12 天前
    @rojer12 和我差不多,不过我用 pm981a ,512G ,一半放系统,一半做缓存,没有单独的缓存盘,省钱。
    hanssx
        44
    hanssx  
    OP
       12 天前
    @nuk 做缓存能比直通快?我已经申请退货把 2T 换成 1+512G 了,折腾折腾。
    nuk
        45
    nuk  
       12 天前
    @hanssx 直通只有一个 vm 快,缓存所有的 vm 就都是 nvme 的速度了呀
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3091 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 00:58 · PVG 08:58 · LAX 17:58 · JFK 20:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.