Discussion:
ÇóÖú£ºZFS resilverÖ®ºóÉ豞Ãû³Æ±äÁË
(时间太久无法回复)
NeverMind
2014-02-26 16:44:17 UTC
Permalink
用新硬盘替换了一块zfs raidz2里坏掉的硬盘。具体就是zfs offline, 然后拔掉硬盘,然后zfs replace。resilver过程中由于其他操作somehow内核panic了,重启之后,resilver继续,没有发现数据错误,但是用zpool status查看时,除了一块盘之外,其他的盘的名称都不像原来daX之类,而变成了diskid/XXXX之类的字符串。是不是哪里出了问题?我试着zfs export, zfs import,但是没有什么用。有没有办法恢复原来的id名称?多谢!
热拔插替换我的做法对么?只需要zfs offline那块硬盘就可以拔硬盘了?需要其他命令吗?

uname -a
FreeBSD XXXX 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260789: Thu Jan 16 22:34:59 UTC 2014 ***@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64

NAME STATE READ WRITE CKSUM
qDataPool1 ONLINE 0 0 0
raidz2-0 ONLINE 0 0 0
da2 ONLINE 0 0 0 block size: 512B configured, 4096B native
diskid/DISK-%20%20%20%20%20WD-WMC4N2070309 ONLINE 0 0 0 block size: 512B configured, 4096B native
diskid/DISK-%20%20%20%20%20%20%20%20%20%20%20%20S1E1DDY0 ONLINE 0 0 0 block size: 512B configured, 4096B native
diskid/DISK-%20%20%20%20%20%20%20%20%20%20%20%20S1E1DLRN ONLINE 0 0 0 block size: 512B configured, 4096B native
diskid/DISK-%20%20%20%20%20%20%20%20%20%20%20%20W1F283HJ ONLINE 0 0 0 block size: 512B configured, 4096B native
diskid/DISK-%20%20%20%20%20%20%20%20%20%20%20%20W1F29T8M ONLINE 0 0 0 block size: 512B configured, 4096B native


--

※ 来源:・水木社区 http://www.newsmth.net・[FROM: 149.169.143.*]
Ðí¿ÉÖ€³¬³öÒ»Ò³Öœ£¬·Ç*ŒŽµÁ£¡
2014-02-26 18:50:38 UTC
Permalink
【 在 qingquan (NeverMind) 的大作中提到: 】
: 标 题: 求助:ZFS resilver之后设备名称变了
: 发信站: 水木社区 (Thu Feb 27 00:44:17 2014), 转信
:
: 用新硬盘替换了一块zfs raidz2里坏掉的硬盘。具体就是zfs offline, 然后拔掉硬盘,然后zfs replace。resilver过程中由于其他操作somehow内核panic了,重启之后,resilver继续,没有发现数据错误,但是用zpool status查看时,除了一块盘之外,其他的盘的名称都不像原来daX之类,而变成了diskid/XXXX之类的字符串。是不是哪里出了问题?我试着zfs export, zfs import,但是没有什么用。有没有办法恢复原来的id名称?多谢!

zpool export 之后

sysctl kern.geom.label.disk_ident.enable=0

然后再 zpool import 看看?

不过话说你的磁盘是 AF 的,但是建立 pool 的时候内核可能还不知道这事,个人建议备份数据后
重建 pool。

: 热拔插替换我的做法对么?

10.x 热插拔应该不会有问题,相关代码我们之前已经拷打过很长时间了。

: 只需要zfs offline那块硬盘就可以拔硬盘了?需要其他命令吗?

不需要。实际上不 offline 系统也还是可以处理的。

:
: uname -a
: FreeBSD XXXX 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260789: Thu Jan 16 22:34:59 UTC 2014 ***@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64
:
: NAME STATE READ WRITE CKSUM
: qDataPool1 ONLINE 0 0 0
: raidz2-0 ONLINE 0 0 0
: da2 ONLINE 0 0 0 block size: 512B configured, 4096B native
: diskid/DISK-%20%20%20%20%20WD-WMC4N2070309 ONLINE 0 0 0 block size: 512B configured, 4096B native
: diskid/DISK-%20%20%20%20%20%20%20%20%20%20%20%20S1E1DDY0 ONLINE 0 0 0 block size: 512B configured, 4096B native
: diskid/DISK-%20%20%20%20%20%20%20%20%20%20%20%20S1E1DLRN ONLINE 0 0 0 block size: 512B configured, 4096B native
: diskid/DISK-%20%20%20%20%20%20%20%20%20%20%20%20W1F283HJ ONLINE 0 0 0 block size: 512B configured, 4096B native
: diskid/DISK-%20%20%20%20%20%20%20%20%20%20%20%20W1F29T8M ONLINE 0 0 0 block size: 512B configured, 4096B native
:
:
: --
:
: ※ 来源:・水木社区 http://www.newsmth.net・[FROM: 149.169.143.*]


--

※ 来源:・水木社区 newsmth.net・[FROM: 24.5.244.*]
NeverMind
2014-02-26 21:24:17 UTC
Permalink
【 在 delphij 的大作中提到: 】
:
: zpool export 之后
: sysctl kern.geom.label.disk_ident.enable=0
: ...................
多谢回复。以下是输出:
***@QLabServer1:/home/quanqing # zpool export qDataPool1
***@QLabServer1:/home/quanqing # sysctl kern.geom.label.disk_ident.enable=0
kern.geom.label.disk_ident.enable: 1 -> 0
***@QLabServer1:/home/quanqing # zpool import
pool: qDataPool1
id: 14356145184955510209
state: ONLINE
Assertion failed: (reason == ZPOOL_STATUS_OK), file /usr/src/cddl/sbin/zpool/../../../cddl/contrib/opensolaris/cmd/zpool/zpool_main.c, line 1709.
Abort (core dumped)

这是不是意味着必须重建pool才能回复名字了?如果不恢复名字,有没有其他潜在的问题?如果没有问题,我就暂时不折腾了。多谢!

--

※ 来源:・水木社区 http://www.newsmth.net・[FROM: 149.169.143.*]
pubby
2014-02-27 14:02:42 UTC
Permalink
当前pool是4K对齐了的

就是替换其中一个盘的时候,怎么操作能保证还是4K对齐的,或者不影响整个pool的4K对齐效果

当然,最好服务器不停机


或者这个问题我根本多虑了?


【 在 zoei 的大作中提到: 】
: ashift是建立zpool时候决定的,无法以后更改。
: 就算替换也无法改。
: 512->4k,最好还是zfs send/recv来解决。
: ...................

--

※ 来源:・水木社区 http://www.newsmth.net・[FROM: 115.205.121.*]
ÎÒ°®BKBK
2014-02-27 14:04:35 UTC
Permalink
直接换就行,默认就是4k对其。

但是取决于你是整个盘还是分区。

整个盘你就不用管了,分区的话,要保证分区先对其。

【 在 nukq (pubby) 的大作中提到: 】
: 当前pool是4K对齐了的
: 就是替换其中一个盘的时候,怎么操作能保证还是4K对齐的,或者不影响整个pool的4K对齐效果
: 当然,最好服务器不停机
: ...................

--

※ 来源:・水木社区 newsmth.net・[FROM: 203.135.238.*]
pubby
2014-02-27 14:22:04 UTC
Permalink
谢谢,了解了,也就是不需要创建.nop那步了。

要分区的,这个可以事先在其它机器上做好

【 在 zoei 的大作中提到: 】
: 直接换就行,默认就是4k对其。
: 但是取决于你是整个盘还是分区。
: 整个盘你就不用管了,分区的话,要保证分区先对其。
: ...................

--

※ 来源:・水木社区 http://www.newsmth.net・[FROM: 115.205.121.*]
Ðí¿ÉÖ€³¬³öÒ»Ò³Öœ£¬·Ç*ŒŽµÁ£¡
2014-02-27 18:57:27 UTC
Permalink
【 在 qingquan (NeverMind) 的大作中提到: 】
: 标 题: Re: 求助:ZFS resilver之后设备名称变了
: 发信站: 水木社区 (Thu Feb 27 05:24:16 2014), 转信
:
: 【 在 delphij 的大作中提到: 】
: :
: : zpool export 之后
: : sysctl kern.geom.label.disk_ident.enable=0
: : ...................
: 多谢回复。以下是输出:
: ***@QLabServer1:/home/quanqing # zpool export qDataPool1
: ***@QLabServer1:/home/quanqing # sysctl kern.geom.label.disk_ident.enable=0
: kern.geom.label.disk_ident.enable: 1 -> 0
: ***@QLabServer1:/home/quanqing # zpool import
: pool: qDataPool1
: id: 14356145184955510209
: state: ONLINE
: Assertion failed: (reason == ZPOOL_STATUS_OK), file /usr/src/cddl/sbin/zpool/../../../cddl/contrib/opensolaris/cmd/zpool/zpool_main.c, line 1709.
: Abort (core dumped)

我靠,这个雷我记得我已经给排掉了,难道我只改了 FreeNAS……我去修。

--

※ 来源:・水木社区 newsmth.net・[FROM: 24.5.244.*]
NeverMind
2014-02-28 04:04:25 UTC
Permalink
【 在 delphij 的大作中提到: 】
:
: 我靠,这个雷我记得我已经给排掉了,难道我只改了 FreeNAS……我去修。

除开这个不谈,我这个pool有没有别的隐患? 如果只是diskid难看些,我暂时不想折腾了。多谢!
--

※ 来源:・水木社区 http://www.newsmth.net・[FROM: 209.147.144.*]
Ðí¿ÉÖ€³¬³öÒ»Ò³Öœ£¬·Ç*ŒŽµÁ£¡
2014-02-28 18:14:39 UTC
Permalink
【 在 qingquan (NeverMind) 的大作中提到: 】
: 标 题: Re: 求助:ZFS resilver之后设备名称变了
: 发信站: 水木社区 (Fri Feb 28 12:04:24 2014), 转信
:
:
: 【 在 delphij 的大作中提到: 】
: :
: : 我靠,这个雷我记得我已经给排掉了,难道我只改了 FreeNAS……我去修。
:
: 除开这个不谈,我这个pool有没有别的隐患? 如果只是diskid难看些,我暂时不想折腾了。多谢!

主要是性能方面的影响。

PS 我确实在 FreeBSD 上也修了,不过没进 10.0-RELEASE。请升级到 10.0-STABLE
或打 259784:

svn diff -c 259784 svn://svn.freebsd.org/base/stable/10 | patch

--

※ 来源:・水木社区 newsmth.net・[FROM: 24.5.244.*]
NeverMind
2014-03-01 01:37:26 UTC
Permalink
【 在 delphij 的大作中提到: 】
:
: 主要是性能方面的影响。
: PS 我确实在 FreeBSD 上也修了,不过没进 10.0-RELEASE。请升级到 10.0-STABLE
: ..................
明白了。多谢!
--

※ 来源:・水木社区 http://m.newsmth.net・[FROM: 174.240.194.*]
Loading...