弾をすべて敵に叩き込む
はじめに
対象
- やってしまった人
- zfs storage で増設を考えている方
やっちまった
zfsもlvm2と同じで物理追加して、退避すればいけるだろうと思っていました。
しかし、zfsは構造上raid0になるので、追加した領域はそのまま保持しなくてはいけないようです。
つまり、zfsはpoolを追加したら破棄するまで減らすことができない。
※誤りがあったら教えてください
現状説明
初期状態として、sdc1,sdd1が破損して、縮退モードとなっていた。
$ sudo zpool status NAME STATE READ WRITE CKSUM storage DEGRADED 0 0 0 raidz2-0 DEGRADED 0 0 0 sdb1 ONLINE 0 0 0 sdc1 UNAVAIL 0 0 0 corrupted data sdd1 UNAVAIL 0 0 0
間違った操作したこと
HDDだ、うぇーい、となって、壊れたHDDを外して、喜んでやりました。追加まで。
$ ls -l /dev/disk/by-id lrwxrwxrwx 1 root root 9 Mar 16 00:17 scsi-SATA_ST3000DM001-1CH_S1F****V -> ../../sdb lrwxrwxrwx 1 root root 9 Mar 16 00:17 scsi-SATA_ST3000DM001-1CH_Z1F****Z -> ../../sde lrwxrwxrwx 1 root root 9 Mar 16 00:17 scsi-SATA_ST3000DM001-1CH_Z1F****8 -> ../../sdf lrwxrwxrwx 1 root root 9 Mar 16 00:17 scsi-SATA_ST3000DM001-1CH_Z1F****3 -> ../../sdd lrwxrwxrwx 1 root root 9 Mar 16 00:17 scsi-SATA_ST3000DM001-1CH_Z1F****C -> ../../sdc $ sudo parted # ここで、gptパーティションを作成する $ sudo zpool add -o ashift=12 storage raidz2 \ scsi-SATA_ST3000DM001-1CH_S1F****V \ scsi-SATA_ST3000DM001-1CH_Z1F****Z \ scsi-SATA_ST3000DM001-1CH_Z1F****8 \ scsi-SATA_ST3000DM001-1CH_Z1F****3 \ scsi-SATA_ST3000DM001-1CH_Z1F****C $ sudo zpool status NAME STATE READ WRITE CKSUM storage DEGRADED 0 0 0 raidz2-0 DEGRADED 0 0 0 sdb1 ONLINE 0 0 0 sdc1 UNAVAIL 0 0 0 corrupted data sdd1 UNAVAIL 0 0 0 raidz2-1 ONLINE 0 0 0 scsi-SATA_ST3000DM001-1CH_S1F****V ONLINE 0 0 0 scsi-SATA_ST3000DM001-1CH_Z1F****Z ONLINE 0 0 0 scsi-SATA_ST3000DM001-1CH_Z1F****8 ONLINE 0 0 0 scsi-SATA_ST3000DM001-1CH_Z1F****3 ONLINE 0 0 0
さて、lvm2の要領でpvremoveに相当するコマンドを...ない!
※zpool removeは「only inactive hot spares, cache, top-level, or log devices can be removed」らしい