示例硬件/主机:
- 现代 64 核 CPU,128GB 内存
- 8 个美光 Pro 15.36TB u.2 SSD
- 每个设备通过专用 Oculink 连接 SSD(无背板或 PCIe 共享)
- Ubuntu 20.04
用例:
- 数百台主机的备份服务器。备份是通过增量 rsync 执行的,首先是来自远程主机的 rsync,然后是本地副本(使用 cp)以创建快照。- - - 数以百万计的小文件(电子邮件、html 文件等)是典型的备份。
- 在任何时候,服务器都可以处理 50 个传入的 rsync(cpu 轻加密算法和无压缩)
- 冗余虽然是有利的,但不是必需的。最多单个驱动器故障。
- 文件轮换所需的极端本地 i/o
- rsync 和硬链接差异复制('rsnapshot')的使用不能改变,这是已部署并投入生产的备份软件所要求的 - 所以 BTRFS 快照是不可能的。
我提出了两种可能的解决方案:
- 分片我的数据存储,没有冗余。BTRRFS 中基于每个驱动器的格式,并使用内联 LZO 压缩进行安装。
- 优点:简单轻量,无raid管理开销
- 优点:独立故障,在磁盘故障时只有一小部分备份丢失,可以快速重新建立
- 优势:获得的最大总容量
- 缺点:容量管理的复杂性——没有一个大容量意味着战略性地平衡特定磁盘上的数据以充分利用它们
- 缺点:磁盘故障确实会丢失数据
- 一个大卷跨所有磁盘的 ZFS RAIDz1/2
- 优点:1或2个磁盘故障冗余
- 优点:易于管理,所有内容都集中在一个巨大的体积中 - 空间充足。
- 缺点:损失 1 或 2 个磁盘的容量
问题:与选项 1 相比,是否存在显着的 ZFS RAID 管理开销会降低阵列的性能?- 在他设计的每个级别以最大限度地提高操作系统和 SSD 之间的磁盘吞吐量的配置中,以每秒 10 千兆比特为单位,ZFS RAID 管理的开销是否会导致性能显着下降和/或 CPU 或内存过载?
谢谢你。