电脑技术学习

管理 ZFS 存储池

dn001

  从概念上讲,包含三个磁盘的 RAID-Z 配置与以下内容类似:

  raidz c1t0d0 c2t0d0 c3t0d0

  从概念上讲,更复杂的 RAID-Z 配置与以下内容类似:

raidz c1t0d0 c2t0d0 c3t0d0 c4t0d0 c5t0d0 c6t0d0 c7t0d0 raidz c8t0d0 c9t0d0 c10t0d0 c11t0d0
c12t0d0 c13t0d0 c14t0d0

  如果要创建包含许多磁盘的 RAID-Z 配置(如本示例所示),则最好将包含 14 个磁盘的 RAID-Z 配置拆分为两个包含 7 个磁盘的分组。若 RAID-Z 配置包含的分组中的磁盘数目为一位数 (1-9),则该配置的性能应该更好。

  冗余配置中的自我修复数据

  ZFS 在镜像配置或 RAID-Z 配置中提供了自我修复数据。

  检测到坏的数据块时,ZFS 不仅会从另一个冗余副本中提取正确的数据,还会通过将错误数据替换为正确的副本对其进行修复。

  存储池中的动态条带化

  对于添加到池中的每个虚拟设备,ZFS 会跨越所有可用设备以动态方式对数据进行条带化。由于是在写入时确定放置数据的位置,因此在分配时不会创建固定宽度的条带。

  向池中添加虚拟设备时,ZFS 会将数据逐渐分配给新设备,以便维护性能和空间分配策略。每个虚拟设备也可以是包含其他磁盘设备或文件的镜像或 RAID-Z 设备。使用此配置,可以灵活地控制池的故障特征。例如,可以通过 4 个磁盘创建以下配置:

  使用动态条带化的四个磁盘

  一个四向 RAID-Z 配置

  使用动态条带化的两个双向镜像

  尽管 ZFS 支持在同一池中组合不同类型的虚拟设备,但是建议不要采用这种做法。例如,可以创建一个包含一个双向镜像和一个三向 RAID-Z 配置的池。但是,容错能力几乎与最差的虚拟设备(在本示例中为 RAID-Z)相同。建议做法是使用相同类型的顶层虚拟设备,并且每个设备的冗余级别相同。

标签: