我试图了解可能出了什么问题。
对于上下文:
我有一个镜像的设置为3 个驱动器和非 ECC 内存。不知道还有什么可以分享的。
我假设有一个三向镜可以让我相对安全意外损坏(例如驱动器故障)或内存损坏可以恢复(从剩余的 2 个磁盘之一)。
但我可能误会了。
谁能解释一下可能出了什么问题,以便我可以为未来做好准备?
$ sudo zpool status -v
pool: dozer
state: ONLINE
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: http://zfsonlinux.org/msg/ZFS-8000-8A
scan: scrub repaired 0 in 8h36m with 1 errors on Sun Jan 6 02:12:32 2019
config:
NAME STATE READ WRITE CKSUM
dozer ONLINE 0 0 1
mirror-0 ONLINE 0 0 2
ata-WDC_WD40EFRX-68N32N0_WD-WCC7K1ZKZLYK ONLINE 0 0 2
ata-WDC_WD40EFRX-68N32N0_WD-WCC7K6VCAZXL ONLINE 0 0 2
ata-ST4000DM000-1F2168_S301LW48 ONLINE 0 0 2
errors: Permanent errors have been detected in the following files:
/dozer/path/to/my/file
答案1
您确实了解,如果任何单个非 RAID 驱动器出现故障,您都会丢失数据,如果其中一个非 ECC 内存芯片出现故障,情况也是如此:你会丢失数据。
即使您有:
- 双处理器
- 双网卡
- 双硬盘
- ECC内存
- 高可用性故障转移服务器位于不同大陆的不同数据中心
...任何类型的不可纠正的错误(错误、人为、电磁脉冲、..)都可以仍然会导致数据丢失。
这就是为什么有了这些巧妙的技术今天我们仍然有多个离线备份。
笔记:在线备份/数据复制到辅助数据中心也可能以这种方式损坏