ZFS:为未来的驱动器添加做准备

我正在构build一个Solaris NAS系统,目前我们有两个驱动器,并计划在以后再增加两个驱动器(2TB企业级硬盘有点贵!)。

最好的configuration设置这些驱动器铭记我想扩大在未来?

我正在考虑镜像驱动器,然后转换raidz一些如何?

它只会是最多四个驱动器,其中后两个将被购买。

有任何想法吗?

镜像是去这里的路。 它可以让你轻松地添加额外的镜像对来扩展现有的音量。 没有宕机,没有技巧,只需添加更多的磁盘,你就在路上。 除非你真的需要4Z2TB的RAIDZ,否则4X2TB镜像的4TB是更好的select。 镜像还具有降低CPU开销,更好的性能和更容易恢复的好处。

但看到人们宁愿生活在边缘,并节省一些钱这里是如何迁移你的数据从两个驱动器镜像到四个驱动器RAID设置:

  • 创build一个2驱动器镜像zpool create mirror cXt1d0 cXt2d0 yourPool
  • 高兴地用数据填满你的驱动器
  • 购买驱动器3,4(尺寸与驱动器1,2相同)
  • 深呼吸,你即将放弃冗余,因为你很便宜。
  • 打破镜像移除驱动器2: zpool detach cXt2d0 yourPool
  • 创build一个与驱动器大小相同的稀疏文件: mkfile -n 500GB /path/file.img
  • 使用驱动器2,3,4和稀疏文件创build一个四驱动器raidz池: zpool create raidz cXt2d0 cXt3d0 cXt4d0 /path/file.img newPool
  • 通过分离稀疏文件来降级raidz数组: zpool detach /path/file.img newPool
  • 使用zfs send / zfs recv将数据从yourPool复制到newPool(或者只是rsync / cp)
  • 销毁原始镜像池: zpool destroy yourPool
  • 将drive1连接到raidz池: zpool attach cXt1d0 newPool
  • 等待ZFS重新启动硬盘(这需要花费数小时,不要被状态%不移动所迷惑,还有一个bug,只要让它磨碎即可)。
  • 呼气深呼吸,你又有一个冗余池。

除非你想备份内容并重新创buildzpool,否则我不认为这是可以做到的。 虽然你可以用两个设备创build一个raidz池,但是以后你不能用4个驱动器来扩展raidz。 你可以做的是用前两个驱动器创build一个镜像,然后用第二个驱动器添加第二个镜像到池中,但是这并不能为你提供足够的空间。

你也可以将它设置为raidz,创build/使用稀疏文件作为最后一个驱动器,立即离线该文件,然后当你获得驱动器时,用新驱动器replace稀疏文件,实际上将成为raidz,相反,到zfs线性范围之后,用驱动器replace已删除的稀疏文件。

虽然你不会有平价,但你将拥有ZFS的在线权力,包括清理和一些汽车修理能力。