已经有一段时间没有关于 Btrfs 文件系统的内置 RAID 功能的任何新报告了,但随着 RAID1 循环读取平衡的出现,这种情况正在发生变化。
由 Oracle 工程师 Anand Jain 提供的 Btrfs 内核驱动程序是 Btrfs 本机 RAID1 操作的可选循环读平衡模式。此补丁添加了 RAID1 循环读取平衡模式:
“从 RAID1 块读取数据时,此功能可平衡条带化设备之间的 I/O。
echo round-robin:[min_contiguous_read] > /sys/fs/btrfs//read_policy
min_contiguous_read 参数定义切换到下一个镜像设备之前的最小读取大小。此设置是可选的,默认值为 256 KiB。
这种方法在循环模式下平衡所有条带化设备上的 RAID1 读取,但最初被视为一个实验性选项。因此,如果要切换到循环模式,则需要暂时设置 CONFIG_BTRFS_EXPERIMENTAL。
后续补丁还允许设置 RAID1 首选读取设备,但主要用于测试目的。
这些 Btrfs RAID1 循环读取补丁目前位于 David Sterba 的“for-next”分支中,因此我们可以看到即将到来的 Linux 6.14 合并窗口提供这种支持。
转自 Btrfs Working On RAID1 Round-Robin Read Balancing – Phoronix