1恢复 群晖raid_FreeNAS加密存储池raid-z2(raid6)数据抢救记录

设备概要:

FREENAS版本11.3u,nas硬件设备为diy,3块2t垂直蓝盘、一块2t红盘、一块4t垂直蓝盘,组成raid-z2(raid6),已加密 AES-XTS 256。

事件经过概要:

更换阵列中的一块盘,在重建时间过长时重启设备,重启后无法读取存储池,事后发现掉了2块盘(一个还在重建的盘,另一个是新崩溃的盘),达到了raid6的极限。

技术总结&心得体会:

  1. 保留冷备盘。
  2. 混用不同容量硬盘易造成阵列损坏。
  3. 事故的原因应为重建阵列时,一块原有硬盘损坏。
  4. 重建阵列途中不建议重启设备。
  5. raid6坏了两块盘读写速度会急剧下降。
  6. 存储池加密会比不加密增加崩溃风险。
  7. 很可能是因为重建阵列时,重启,之后设备无法通过原有密钥正确解密存储池。
  8. 导入存储池时,可尝试等待数小时,莫急,因为阵列降级后读写速度急剧下降。
  9. 无法解锁存储池,可能为阵列中硬盘损坏,导致解锁存储池时卡住。
  10. rsync不会设置,如果能设置好估计会比smb要快。

事件经过:

2020年6月29日中午用一块2t垂直蓝盘(群晖上拆下来的),更换了阵列内的一块2t垂直蓝盘(随手抽了一块),之后在gui界面重建阵列。

~~

2020年6月29日晚上10点左右的重建进度是65%,

2020年6月30日8点看到是67%,怀疑是卡住了,就索性重启设备。在gui界面点击关机,gui界面显示正常关机,之后无法连接上gui,但设备灯还是亮的。

~~

我插上nas设备的显示器,无显示输出。我怀疑是系统故障。

~~

依次拔下各硬盘的数据线,然后拔下各硬盘的电源线(已在主板设置热拔插)。

~~

之后nas设备就自己关掉了。。。。我怀疑是系统卡在硬盘上,无法执行关机指令,拔掉硬盘后,系统正常执行关机指令。

~~

直接开机(未插硬盘),正常。然后插上硬盘,系统显示需要解锁存储池,我上传解锁密钥文件就卡住了。

如下图,无限卡在“解锁存储池”,刷新gui界面后直接卡在主页上,无法操作其他设置。

0095820791250f5329376722e3b780be.png

~~

等了大概1小时,不等了,想关机,使用之前的方法(依次拔下各硬盘的数据线,然后拔下各硬盘的电源线),接着gui界面恢复正常,存储池处显示等待解锁。

~~

解锁存储池一直卡住,索性就删除掉存储池(这时硬盘没连接),想着重新导入该存储池。

~~

重新添加存储池。其中选择全部硬盘会报错,显示两块盘是无法解锁的。(估计这就是不能直接解锁存储池的原因)

一块为新添加的,另一块为重建阵列时损坏的

盲选3块盘添加,成功进入“导入存储池状态”,之后我就去午休了。

大概两个小时后,存储池显示恢复正常,但是smb无法连接。系统报错如下:

freenas ZFS: slow vdev I/O, zpool=moren path=/dev/gptid/ab4a4249-6204-11ea-863d-2cf05d003d39.eli

这样没用啊,我想着能连上smb,把数据拷贝出来,然后再去重建矩阵。

7a84bf41078f7ff5c740fb5816b8ac52.png
存储池无法显示

~~

大概过了1小时,试着发现ssh可以连上。感动的要哭了。

a7e115baca0322070ba264693ad93ac8.png

赶紧开始导出数据,只不过太慢了,速度大约1m/s。先把一些紧急的导出来。

~~

2020年7月1日上午,发现存储池可以访问了,怀疑之前无法访问是因为阵列降级后的速度限制。

同时报错

c038b03dd9ae015e1247403f75d544f6.png

试了试smb,可以连上了。没有先感动,先试了试读取速度。大概2m/s,也是十分令人感动。

正常情况应该是100m/s左右

算了算里面3t全量导出,24天。

91fd315eb2445c2fc707968bcf26444a.png

索性放弃全量导出,只导出新增的部分(大概300g),再让我妈把家里的冷备盘寄过来,这样就算是完成了恢复。

~~

时间多、没有冷备盘的朋友倒是可以等待smb的传输,反正是挂机,反正这是再次崩溃前的抢救手段了。。。。

另外本想用rsync把数据传输到群晖上,无奈不知道咋设置。群晖到freenas倒是可以。反过来就不会了。

~~

到这就算是完成了。

技术总结&心得体会:

  1. 保留冷备盘。
  2. 混用不同容量硬盘易造成阵列损坏。
  3. 事故的原因应为重建阵列时,一块原有硬盘损坏。
  4. 重建阵列途中不建议重启设备。
  5. raid6坏了两块盘读写速度会急剧下降。
  6. 存储池加密会比不加密增加崩溃风险。
  7. 很可能是因为重建阵列时,重启,之后设备无法通过原有密钥正确解密存储池。
  8. 导入存储池时,可尝试等待数小时,莫急,因为阵列降级后读写速度急剧下降。
  9. 无法解锁存储池,可能为阵列中硬盘损坏,导致解锁存储池时卡住。
  10. rsync不会设置,如果能设置好估计会比smb要快。

感谢阅读。


2020年7月2日更新:

smb导出数据时,突然降速到几百k,疑似阵列快崩了。

9ac1cf7802df0df3d4b0a989960dc84d.png

gui界面无新的报错。

~~

2020年7月4日更新:

在抹掉所有硬盘后,重建存储池,发现如下报错,估计这就是阵列崩溃的原因,混合了不同容量的硬盘。

The current pool layout is not recommended.Override the following errors?
One or more data vdevs has disks of different sizes.

099ccdefbff009918f7c8cd58873f1e5.png

版权声明:本文为weixin_39813009原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。