需要替换zpool中的磁盘…感到困惑


12

我需要在FreeNAS上的zpool中更换损坏的磁盘。

zpool status 表演

  pool: raid-5x3
 state: ONLINE
 scrub: scrub completed after 15h52m with 0 errors on Sun Mar 30 13:52:46 2014
config:

    NAME                                            STATE     READ WRITE CKSUM
    raid-5x3                                        ONLINE       0     0     0
      raidz1                                        ONLINE       0     0     0
        ada5p2                                      ONLINE       0     0     0
        gptid/a767b8ef-1c95-11e2-af4c-f46d049aaeca  ONLINE       0     0     0
        ada8p2                                      ONLINE       0     0     0
        ada10p2                                     ONLINE       0     0     0
        ada7p2                                      ONLINE       0     0     0

errors: No known data errors

  pool: raid2
 state: DEGRADED
status: One or more devices could not be opened.  Sufficient replicas exist for
    the pool to continue functioning in a degraded state.
action: Attach the missing device and online it using 'zpool online'.
   see: http://www.sun.com/msg/ZFS-8000-2Q
 scrub: none requested
config:

    NAME                                            STATE     READ WRITE CKSUM
    raid2                                           DEGRADED     0     0     0
      raidz1                                        DEGRADED     0     0     0
        gptid/5f3c0517-3ff2-11e2-9437-f46d049aaeca  ONLINE       0     0     0
        gptid/5fe33556-3ff2-11e2-9437-f46d049aaeca  UNAVAIL      0     0     0  cannot open
        gptid/60570005-3ff2-11e2-9437-f46d049aaeca  ONLINE       0     0     0
        gptid/60ebeaa5-3ff2-11e2-9437-f46d049aaeca  ONLINE       0     0     0
        gptid/61925b86-3ff2-11e2-9437-f46d049aaeca  ONLINE       0     0     0

errors: No known data errors

glabel status 表演

                                      Name  Status  Components
                             ufs/FreeNASs3     N/A  da0s3
                             ufs/FreeNASs4     N/A  da0s4
                    ufsid/4fa405ab96518680     N/A  da0s1a
                            ufs/FreeNASs1a     N/A  da0s1a
                            ufs/FreeNASs2a     N/A  da0s2a
gptid/5f3c0517-3ff2-11e2-9437-f46d049aaeca     N/A  ada1p2
gptid/60570005-3ff2-11e2-9437-f46d049aaeca     N/A  ada3p2
gptid/60ebeaa5-3ff2-11e2-9437-f46d049aaeca     N/A  ada4p2
gptid/a767b8ef-1c95-11e2-af4c-f46d049aaeca     N/A  ada6p2
gptid/61925b86-3ff2-11e2-9437-f46d049aaeca     N/A  ada9p2
gptid/4599731b-8f15-11e1-a14c-f46d049aaeca     N/A  ada10p2

camcontrol devlist 表演

<Hitachi HDS723030BLE640 MX6OAAB0>  at scbus0 target 0 lun 0 (pass0,ada0)
<ST3000VX000-9YW166 CV13>          at scbus4 target 0 lun 0 (pass1,ada1)
<ST3000VX000-9YW166 CV13>          at scbus6 target 0 lun 0 (pass3,ada3)
<Hitachi HDS723030BLE640 MX6OAAB0>  at scbus7 target 0 lun 0 (pass4,ada4)
<ST3000DM001-9YN166 CC4C>          at scbus8 target 0 lun 0 (pass5,ada5)
<WDC WD30EZRX-00MMMB0 80.00A80>    at scbus8 target 1 lun 0 (pass6,ada6)
<WDC WD30EZRX-00MMMB0 80.00A80>    at scbus9 target 0 lun 0 (pass7,ada7)
<ST3000DM001-9YN166 CC4C>          at scbus9 target 1 lun 0 (pass8,ada8)
<Hitachi HDS723030BLE640 MX6OAAB0>  at scbus10 target 0 lun 0 (pass9,ada9)
<Hitachi HDS5C3030ALA630 MEAOA580>  at scbus11 target 0 lun 0 (pass10,ada10)
< USB Flash Memory 1.00>           at scbus12 target 0 lun 0 (pass11,da0)

我很确定那ada2是坏磁盘。

看来我上次在包装盒中留了一个备用零件ada0。我可以用ada0远程替换ada2吗?直到有人到办公室?用什么命令?

这是我不明白的:

  1. 为什么ada0,ada2,ada5,ada7ada8不出现glabel status
  2. 为什么zpool status在某些磁盘上显示长gptid,而在其他磁盘上显示“ ada”名称?
  3. 如果我想zpool replace raid2- 我要使用什么设备名称和新设备名称?

Answers:


17

FreeNAS是一种NAS解决方案,因此,此类设备可以使用的任何固件,系统或GUI都隐藏了一些技术选择。

如果您在使用FreeNAS制作的ZFS池中的给定磁盘上使用了分区模式(小VM示例):

$ glabel status
                                      Name  Status  Components
gptid/a699226f-bcc4-11e3-952d-0800271cd34d     N/A  ada4p2
gptid/a6cfc072-bcc4-11e3-952d-0800271cd34d     N/A  ada5p2
gptid/a707f034-bcc4-11e3-952d-0800271cd34d     N/A  ada6p2

仔细看一下磁盘ada4

$ gpart show ada4
=>      34  62914493  ada4  GPT  (30G)
        34        94        - free -  (47k)
       128   4194304     1  freebsd-swap  (2.0G)
   4194432  58720095     2  freebsd-zfs  (28G)

FreeNAS的是增加一个小的交换每个添加的磁盘上的分区,剩余的磁盘空间正对第二分区(又名p2ada4p2)。

为什么呢

为什么不。恕我直言,这可能与分区对齐有关,但也可能仅仅是因为FreeNAS通常安装在USB闪存盘或一些小型CF驱动器上,而无需进行任何交换(或一个是另一个的借口)。

关于您的问题:

  1. 为什么ada0,ada2,ada5,ada7和ada8不在glabel状态下显示?

    glabel是GEOM标签的缩写。因此,它仅显示有关支持的分区/ fs的信息(有关支持的分区的更完整列表,请参见man glabel)。在这种情况下,不会显示磁盘本身和交换分区。

  2. 为什么zpool status在某些磁盘上显示长gptid,而在其他磁盘上显示“ ada”名称?

    与问题1相同:由于GEOM标签,或者在特定情况下,缺少它。

    有时,未通过glabel启动/标记的分区(或者它们失去了此信息)。在所有情况下:不必担心太多,这只是一个命名。因此,如果一个分区具有一个gptid而另一个分区具有一个简单的设备名称,那将不是世界末日。

    当然,一旦分区位于zpool中,就​​无法更改标签(防止您修改已用分区的系统-很有意义)。

  3. 如果我想zpool replace raid2- 我要使用什么设备名称和新设备名称?

    如图所示,最好让FreeNAS为您设置有关磁盘分区的内容:更换FreeNAS上发生故障的驱动器

    但是,也可以手动执行此操作而不必担心分区(重新镀银会自动启动,并且会持续进行擦洗时的使用时间-为您提供幅度顺序):

    $ zpool replace raid2 gptid/5fe33556-3ff2-11e2-9437-f46d049aaeca /dev/ada0
    

    重新同步完成后,您将获得以下内容:

    $ zpool status raid2
      pool: raid2
     state: ONLINE
      scan: resilvered ...G in ?h?m with 0 errors on Sun Apr  6 17:17:25 2014
    config:
    
            NAME                                              STATE     READ WRITE CKSUM
            NAME                                              STATE     READ WRITE CKSUM
            raid2                                             ONLINE       0     0     0
              raidz1                                          ONLINE       0     0     0
                gptid/5f3c0517-3ff2-11e2-9437-f46d049aaeca    ONLINE       0     0     0
                replacing-0
                  gptid/5fe33556-3ff2-11e2-9437-f46d049aaeca  UNAVAIL      0     0     0  cannot open
                  ada0                                        ONLINE       0     0     0
                gptid/60570005-3ff2-11e2-9437-f46d049aaeca    ONLINE       0     0     0
                gptid/60ebeaa5-3ff2-11e2-9437-f46d049aaeca    ONLINE       0     0     0
                gptid/61925b86-3ff2-11e2-9437-f46d049aaeca    ONLINE       0     0     0
    

    然后zpool detach raid2 gptid/5fe33556-3ff2-11e2-9437-f46d049aaeca,从zpool中移除故障设备。

    当为故障磁盘更换了新磁盘时,您仍然可以计划更好/更多的“在线”更换。我建议您谨慎地在VM上进行设置,并做好所有准备(看来您对此并不陌生)。

    ZFS是一个不错的文件系统,具有许多出色的功能,需要计划。

有关更多信息


1
很好的答案。我不知道FreeNAS在幕后是做什么的,它们来自Nexenta和Linux ZFS世界。
ewwhite 2014年

1
FreeNAS添加了一个小的交换分区,而不是为了对齐,但是因为替换磁盘的大小可能不完全相同-如果替换磁盘较小,则无法使用它,添加交换分区以使用少量空间可确保此操作不会发生,因为现有磁盘上zfs的分区会小2-3 GB,从而确保新磁盘不会更小。
Stilez

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.