请问各位有什么推荐的工具么?
]]>在实际操作体验中,产生了一些疑问,在 Google 、ChatGPT 、Wiki 、官方论坛内解决了大部分问题,但仍有一些疑问希望能得到有用的答案:
Q1:对于特别热衷于备份的 PVE 用户,RAID or ZFS 是否有必要?
Q2:不适用 ECC 内存、RAID 卡的情况下,4 硬盘 RAID10 对比 ZFS(RAID-Z2)哪个好?
Q3:不适用 ECC 内存、RAID 卡的情况下,2 块硬盘 ZFS(Mirror)+1 块硬盘 ext4 备份 对比 2 块硬盘 RAID1+1 块硬盘 ext4 备份哪个好?
Q4:不启用重复数据删除的情况下,预留 8G 内存给 32T ZFS 存储池是否足够? zfs.arc_max 是否是刚性的?如果如果突发内存占用较大,PVE 系统可用内存不足是否会 boom ?
Q5:低内存条件下 ZFS L2ARC 是否有必要?官方推荐不大于 10 倍内存,如果分配 512G nvme 固态能否充分利用?
Q6:PVE 自带的 ZFS 会不会有坑?只用过 ext4 的一般 Debian 用户能否维护好?
Q7:用了 ZFS 之后如何备份 PVE 虚拟机比较优雅,如果打算异地备份,可以怎么操作?计划 导出 ZFS 的 snapshot 用 Restic 增量去重备份为一堆 128mb 大小的小文件再传输到各个备份点,减轻网络传输压力。
Q8:ZFS(RAID-Z2)不适合存放虚拟机数据,是否应将 VM 系统盘单独放在一个 SSD 上(或者两块 SSD ZFS Mirror)?
Q9:大量的小文件会影响 NFS 性能,具体需要多大的量会影响性能?
注:目前 1.2T 共计 182 万文件,如果 500 万小文件,会有影响吗?
Q10:PVE 下各个 VM 是否应该启用 SWAP ?能否使用内存膨胀替代 SWAP ?
Q11:我即将利用淘汰配置组一套全新的 PVE ,有什么建议给我的吗?
注:优先计划增加 UPS
注 2:已有 1 块 16T 机械硬盘,计划增加 3 块。当前重要数据 1.2T ,归档存储数据 0.5T ,不重要数据 6T ,备份数据若干
注 3:看了 DELL R730XD ,我这点数据量暂不考虑
PS:3 地 3 备+云备
Seafile 专业版,需用到 memcached 、elasticsearch 、Clamav 、OnlyOffice:8~12G 内存; 1.2T 重要数据,急需扩容
MT Photos ,需用到本地 OCR:3~6G 内存; 0.5T 重要数据
Debian 12 ,需用到 Docker ( Tailscale 、NGINX 、frpc ):2~8G 内存
Debian 12 ,跑一些其他服务:4~8G 内存
Openwrt ,512MB 内存,独占
以上服务共计占用物理内存 13G ,KSM 共享 5G ,SWAP2G
当前备份一次数据需用时 10 小时(内网 NFS:DS120J HDD )
现淘汰办公用机,增加部分硬件,搭建新的 PVE8.1 ,计划配置如下:
CPU:Intel i5-11400
主板:华硕 ROG STRIX B560-I GAMING WIFI
内存:英睿达 DDR4 3200 16G*2 无 ECC
固态:三星 256G + 2T
机械:HC550 16T*4 (计划购入)
电源:海盗船 RM750e
UPS:APC BR550G-CN (计划购入)
升级预留:一条不支持拆分的 pcie4.0*16 ,后期打算增加一条固态或者购入 PEX8748 等免拆分卡增加 4 条固态
计划如下:256G 固态 ext4 格式安装 PVE ,4 块 16T 机械用系统自带 ZFS(RAID-Z2)阵列,2T 固态作为全部虚拟机的系统盘,不开启直通,原 PVE 下 Seafile 和 MT Photos 转移到新 PVE 。
每日 ZFS snapshot 一次,每日 快照方式 备份一次全部虚拟机至 ZFS 下,用 restic 加密备份后,通过 NFS 备份至外部服务期,再通过云服务备份至网盘。(注:内网 1G ,外网上传 100M )
尝试过 PVE 安装 TrueNas core/scale ,PVE 挂载 NFS,对 TrueNas 接触很少,需要直通硬盘,担心多一个环节多一份风险。
PVE 炸过很多个,已经有了充分的经验,裸机安装 TrueNas scale 可以考虑,但是比较谨慎。
]]>root@pve:~# zpool status -v pool: rpool state: DEGRADED status: One or more devices has experienced an error resulting in data corruption. Applications may be affected. action: Restore the file in question if possible. Otherwise restore the entire pool from backup. see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-8A scan: scrub repaired 0B in 00:00:23 with 94 errors on Wed Sep 21 10:36:12 2022 config: NAME STATE READ WRITE CKSUM rpool DEGRADED 0 0 0 nvme-eui.002538b6115042e7-part3 DEGRADED 0 0 321 too many errors
]]>输入命令 zfs list -t snapshot ,输出如下
NAME USED AVAIL REFER MOUNTPOINT bricks@20211213-070101 744M - 3.63T - bricks@20211214-070101 406M - 3.63T - bricks@20211215-070101 390M - 3.64T - NAME USED AVAIL REFER MOUNTPOINT bricks@20211214-070101 2.86G - 3.63T - bricks@20211215-070101 390M - 3.64T -
如上,13 日早上 7 点,做的 snapshot ,占用空间(USED)744M 。相当于 13-14 日之间,独立占用的,是 744M 。
我删除了 13 日的 snapshot 后,14 日的 USED 部分,从 744M ,变成了 2.86G 。这个是怎么算的,一直没想通。即使 13 日和 14 日的部分完全不一样,也应该是(744M+406M)。理论上应该在 406M < x < 744M+406M 之间吧。可能我的理解不对,向大家请教。
]]>