Нужно заменить диск в zpool… запутался

12

Мне нужно заменить плохой диск в zpool на FreeNAS.

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 - в прошлый раз, когда я был в коробке. Могу ли я заменить ada2 на ada0 удаленно? Пока кто-нибудь не доберется до офиса? С какими командами?

Вот что я не понимаю:

  1. Почему ada0, ada2, ada5, ada7 и ada8 не появляются в glabel status?
  2. Почему zpool statusпоказываются эти длинные gptid для одних дисков и имена "ada" для других?
  3. Если я хочу zpool replace raid2- что я могу использовать для имен устройств и новых устройств?
Дэн
источник

Ответы:

17

FreeNAS - это решение для NAS, поэтому некоторые технические решения скрыты за любой микропрограммой, системой или графическим интерфейсом, которые может использовать это устройство.

Если вы получаете схему раздела, используемую на данном диске внутри пула ZFS, созданного с помощью FreeNAS (пример небольшой виртуальной машины):

$ 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 добавляет небольшой подкачки раздел на каждый добавленный диск, оставшееся пространство на диске, на 2 раздела (он же p2для ada4p2).

Почему ?

Почему нет. ИМХО, это может быть как-то связано с выравниванием разделов , но это также может быть просто потому, что FreeNAS обычно устанавливается на USB-ключ или какой-то небольшой диск CF без какой-либо подкачки (или один является оправданием для другого).

О ваших вопросах:

  1. Почему ada0, ada2, ada5, ada7 и ada8 не отображаются в статусе glabel?

    glabelявляется сокращением для маркировки GEOM. Поэтому он отображает только информацию о поддерживаемых разделах / fs ( более полный список поддерживаемых разделов см. В man glabel ). В этом случае сами диски и разделы подкачки не отображаются.

  2. Почему zpool statusпоказываются эти длинные gptid для одних дисков и имена "ada" для других?

    То же, что и вопрос 1: из-за маркировки ГЕОМ или в этом конкретном случае ее отсутствия.

    Иногда разделы не инициируются / помечаются через 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.

    Вы все еще можете планировать лучшую / более «встроенную» замену при замене нового диска на неисправный. Я советую вам тщательно установить вещи на ВМ и подготовить все это (как вы, кажется, новичок в этом).

    ZFS - хорошая файловая система с множеством замечательных функций, НО она требует планирования.

Для получения дополнительной информации :

Ouki
источник
1
Очень хороший ответ Я не знал, что FreeNAS делал за кулисами из Nexenta и Linux ZFS.
ewwhite
1
FreeNAS добавляет небольшой раздел подкачки не для выравнивания, а потому что заменяющие диски могут быть не совсем одинакового размера - если заменяющий диск меньше, его нельзя использовать, добавление раздела подкачки для использования небольшого количества пространства гарантирует, что это Этого не произойдет, потому что раздел для zfs на существующем диске будет на 2-3 ГБ меньше, поэтому новый диск не будет меньше.
Stilez
16

Я думаю, что вы должны пересмотреть свое использование FreeNAS . У тебя было нехарактерно . большой . номер . из вопросов . с . твой . FreeNAS . установка (и) . более . в год .

Многие из этих проблем были проблемами планирования и проектирования ZFS. Возможно, настало время провести реорганизацию или перестройку вашей среды сейчас, когда вы уже знакомы с лучшими или лучшими практиками .

ewwhite
источник