有一台主机,安装了 Proxmox 来跑几个虚拟机,文件系统选择的是 ZFS ,仅有一块 NVMe 硬盘。一周之前发生了一次无法启动的问题,具体错误显示为 rpool (也就是根目录的 pool )有太多的文件错误无法挂载。我一开始怀疑是硬盘的问题,就换上了另外一块硬盘,但是 12 小时以后又出现了文件错误,主要是发生在 log 文件内。可以理解因为 log 文件变动更加频繁。请问还有别可能原因么?
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
1
ryd994 2022-09-22 04:03:48 +08:00 via Android
比较可能是内存有问题
所以 zfs 特别推荐 ecc 内存。否则每次 resilver 都会损坏数据 |
2
eason1874 2022-09-22 04:23:16 +08:00
我也觉得可能是内存问题,PVE 官网建议使用至少 8GB 的高质量 ECC 内存
我经常手动清理内存,所以我不敢用 ZFS |
3
ruidoBlanco 2022-09-22 06:12:42 +08:00
单盘又没有 ECC 内存就别为了「体验一下」而使用 zfs 。单盘性能不好不说,还容易各种出错。
zfs 是好,但是单盘绝对不是适合使用它的时候。 |
4
dangyuluo OP @ryd994
@eason1874 用的是 32G 的非 ECC 内存 @ruidoBlanco 不是为了体验,而是要对 Proxmox 系统做比较大的改动,万一搞坏了用 ZFS 的快照功能很方便。如果再加一块硬盘组 RAIDZ1 会不会消除非 ECC 内存的影响? |
5
dangyuluo OP @ruidoBlanco 我猜还是会发生类似的错误
|
6
dangyuluo OP 奇怪了,发现我的 pfSense 路由器也是 zfs ,好好运行了十几个月了也没有一个 checksum error ,同样也不是 ECC 内存
|
7
ruidoBlanco 2022-09-22 09:09:59 +08:00
@dangyuluo 猜的就是猜的。为什么我说 zfs 单盘+非 ECC 容易出错?为什么我不喜欢用 xfs 、reiserfs 、jfs 之类?这些都是我以前踩过的坑。
zfs 单盘运行十几个月没问题,是的,还没有,突然断电一次,以后麻烦就不断。 LVM thin + ext4 稳如狗,性能也强过单盘 zfs ,快照也没问题。 |