ZILでSSDをzpoolに追加しようとしましたが、間違えました。
私は期待していました..zpooladd zone log c0t1d0
しかし、私はしました... zpool追加ゾーンc0t1d0
Zone remove、detach、offlineコマンドを実行しようとしましたが、失敗しました。
zpoolでデータを失うことなくSSDを取り外すにはどうすればよいですか?
$ zpool status
pool: zones
state: ONLINE
scan : non requested
config:
NAME STATE READ WRITE CKSUM
zones ONLINE 0 0 0
c0t0d0 ONLINE 0 0 0
c0t1d0 ONLINE 0 0 0
$ zpool iostat -v
capacity operations bandwidth
pool alloc free read write read write
---------- ----- ----- ----- ----- ----- -----
zones 280G 109G 40 139 1.28M 13.7M
c0t0d0 263G 15.3G 39 35 1.25M 2.61M
c0t1d0 17.6G 93.4G 0 104 20.9K 11.1M
---------- ----- ----- ----- ----- ----- -----
残念ながら、破壊して新たに作成する必要があります。 zfs send/recv
を使用すると、すべてのスナップショットやメタデータなどを保持しながらすべてのデータを移行でき、通常のcp
よりも高速にコピーできます。
更新:ZoL0.8.0リリースにはこの機能が含まれます。
@ user121391は、todayは、send
/recv
ストレージの移行以外では不可能であることを示しています。
ただし、Matt Ahrens(OpenZFSコミュニティの責任者)によって開発された新機能があり、マスターブランチに着陸する寸前であり、最終的には他のプラットフォーム(FreeBSD/Linux/macOSなど)に移行します。 Githubでのプルリクエスト へのリンクは次のとおりです。
統合すると、任意のトップレベルvdevでzpool remove
を実行できるようになります。これにより、ストレージがプール内の別のデバイスに移行され、古い場所から新しい場所への間接的なマッピングが追加されます。削除するvdevがすでにデータでいっぱいになっている場合(そのデータへのアクセスは間接マッピングを経由する必要があるため)は良くありませんが、話しているユースケースでうまく機能するように設計されています(すぐに気付いた設定ミス)。