关于 raid-z 和添加的新磁盘令人困惑

关于 raid-z 和添加的新磁盘令人困惑

在 Solaris-CBE 上进行 raid-z 实验期间,我得到了这个

我创建了一个 raid-z 池

zpool create pool1 raidz c4t3d0 c4t5d0 c4t4d0

然后我想添加一个磁盘

zpool add pool1 c5t0d0

返回错误(pool1是raid-z,vdev是磁盘,使用-f..)

我使用-f(强制)

zpool add -f pool1  c5t0d0

有用!

zpool status pool1
  pool: pool1
    ID: 8550511546950241199
 state: ONLINE


        NAME        STATE      READ WRITE CKSUM
        pool1       ONLINE        0     0     0
          raidz1-0  ONLINE        0     0     0
            c4t3d0  ONLINE        0     0     0
            c4t5d0  ONLINE        0     0     0
            c4t4d0  ONLINE        0     0     0
          c5t0d0    ONLINE        0     0     0

我的问题是:这是什么样的配置? c5t0d0 是 pool1 的子镜像还是其他什么?

答案1

我自己回答。是一个池 (pool1),其中包含 2 个子镜像(第一个是 raidz 1-0,第二个是单独的磁盘)。该池的语法是正确的,但冗余是错误的。孤独的磁盘(c5t0d0)是错误的,因为没有冗余如果我们需要更多空间,可以添加另一个raidz镜像或raid1。像这样的东西

zpool add pool1 raidz c5t0d0 c5t1d0 c5t2d0

即使使用单个磁盘,数据也会写入所有磁盘(但冗余是错误的),证据是 4 个磁盘映像(Solaris 11 cbe 是 Linux 主机上的虚拟机)不断增长

du -shc .local/share/libvirt/images/vol*
2,1G    .local/share/libvirt/images/vol1.img
2,1G    .local/share/libvirt/images/vol2.img
2,1G    .local/share/libvirt/images/vol3.img
2,1G    .local/share/libvirt/images/vol4.img

一段时间写入数据后...

du -shc .local/share/libvirt/images/vol*
2,7G    .local/share/libvirt/images/vol1.img
2,7G    .local/share/libvirt/images/vol2.img
2,7G    .local/share/libvirt/images/vol3.img
2,7G    .local/share/libvirt/images/vol4.img
11G total

10分钟后...

du -shc .local/share/libvirt/images/vol*
8,5G    .local/share/libvirt/images/vol1.img
8,5G    .local/share/libvirt/images/vol2.img
8,5G    .local/share/libvirt/images/vol3.img
8,5G    .local/share/libvirt/images/vol4.img

另一个证明,删除非冗余子镜像,阵列重建

NAME                        STATE      READ WRITE CKSUM
pool1                       ONLINE        0     0     0
  raidz1-0                  ONLINE        0     0     0
    c4t3d0                  ONLINE        0     0     0
    c4t5d0                  ONLINE        0     0     0
    c4t4d0                  ONLINE        0     0     0
  c5t0d0                    REMOVING      0     0     0
  $VDEV-1151C5D8F59CFF79    REMOVING      0     0     0

相关内容