我试图通过ZIL向zpool添加SSD,但是我犯了一个错误.
我期待.. zpool add zones log c0t1d0
但我做了... zpool add zones 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
---------- ----- ----- ----- ----- ----- -----
Run Code Online (Sandbox Code Playgroud)
Dan*_*Dan 10
更新:ZoL 0.8.0 版本将包含此功能。
@user121391 是正确的,今天这是不可能的,除非通过send/recv存储迁移。
然而,有一个由 Matt Ahrens(OpenZFS 社区负责人)开发的新功能即将登陆 master 分支,最终将进入其他平台(FreeBSD / Linux / macOS / 等)。这是Github 上拉取请求的链接。
集成后,您将能够zpool remove在任何顶级 vdev 上运行,它将其存储迁移到池中的不同设备,并添加从旧位置到新位置的间接映射。如果您要删除的 vdev 已经充满了数据(因为访问任何这些数据都必须通过间接映射),那就不好了,但它的设计非常适合您正在谈论的用例(您很快注意到的错误配置)。