zpool options

Устройства горячего резерва в пуле устройств хранения данных

Функция горячего резерва позволяет идентифицировать диски, которые можно использовать для замены сбойных или неисправных устройств в одном или нескольких пулах устройств хранения данных. Обозначение устройства в качестве горячего резерва означает, что это устройство не является активным устройством, однако в случае сбоя активного устройства в пуле это сбойное устройство автоматически заменяется устройством горячего резерва.

Устройства могут быть назначены в качестве устройств горячего резерва следующими способами:

  • при создании пула с помощью команды zpool create;
  • после создания пула с помощью команды zpool add;
  • устройства горячего резерва могут совместно использоваться несколькими пулами.

При создании пула устройства должны быть обозначены как устройства горячего резерва. Пример:

# zpool create zeepool mirror c1t1d0 c2t1d0 spare c1t2d0 c2t2d0
# zpool status zeepool
pool: zeepool
 state: ONLINE
 scrub: none requested
config:

        NAME         STATE     READ WRITE CKSUM
        zeepool      ONLINE       0     0     0
          mirror     ONLINE       0     0     0
            c1t1d0   ONLINE       0     0     0
            c2t1d0   ONLINE       0     0     0
        spares
          c1t2d0     AVAIL   
          c2t2d0     AVAIL

Устройства горячего резерва необходимо назначать путем их добавления в пул после его создания. Пример:

# zpool add zeepool spare c1t3d0 c2t3d0
# zpool status zeepool
pool: zeepool
 state: ONLINE
 scrub: none requested
config:

        NAME         STATE     READ WRITE CKSUM
        zeepool      ONLINE       0     0     0
          mirror     ONLINE       0     0     0
            c1t1d0   ONLINE       0     0     0
            c2t1d0   ONLINE       0     0     0
        spares
          c1t3d0     AVAIL   
          c2t3d0     AVAIL

Несколько пулов могут совместно использовать устройства, назначенные в качестве устройств горячего резерва. Пример:

# zpool create zeepool mirror c1t1d0 c2t1d0 spare c1t2d0 c2t2d0
# zpool create tank raidz c3t1d0 c4t1d0 spare c1t2d0 c2t2d0

Для удаления устройств горячего резерва из пула устройств хранения данных используется команда zpool remove. Пример:

# zpool remove zeepool c1t2d0
# zpool status zeepool
pool: zeepool
 state: ONLINE
 scrub: none requested
config:

        NAME         STATE     READ WRITE CKSUM
        zeepool      ONLINE       0     0     0
          mirror     ONLINE       0     0     0
            c1t1d0   ONLINE       0     0     0
            c2t1d0   ONLINE       0     0     0
        spares
          c1t3d0     AVAIL

Устройство горячего резерва не может быть удалено, если в настоящее время оно используется пулом устройств хранения данных.

При использовании устройств горячего резерва ZFS необходимо учитывать следующее:

  • В настоящий момент команда zpool remove может использоваться только для удаления устройств горячего резервирования и устройств кэширования.
  • Емкость добавляемого резервного диска должна быть не меньше размера самого большого диска в пуле. В качестве устройства резерва к пулу можно добавить диск с меньшей емкостью. Однако при автоматической активации резервного диска с меньшей емкостью или при его активации с помощью команды zpool replace операция завершается со следующей ошибкой:
    cannot replace disk3 with disk4: device is too small
  • Устройства горячего резерва могут совместно использоваться несколькими пулами. Однако невозможно экспортировать пул с используемым общим устройством резерва, за исключением случая использования команды zpool export с параметром -f (force). Это предотвращает возможное повреждение данных при экспорте пула с используемым общим устройством резерва и попытке другого пула использовать общее устройство во время экспорта. Если пул с используемым общим устройством резерва экспортируется с помощью параметра - f, следует помнить, что эта операция может привести к повреждению данных, если другой пул попытается активировать используемое общее устройство резервирования.

Активация и деактивация устройств горячего резерва в пуле устройств хранения данных

Устройства горячего резерва можно активировать следующими способами:

  • Замена вручную. Замена неисправного устройства в пуле устройств хранения данных устройством горячего резерва с помощью команды zpool replace.
  • Автоматическая замена. При регистрации сбоя агент FMA проверяет пул на наличие доступных устройств горячего резерва. При их обнаружении осуществляется замена неисправного устройства доступным устройством резерва.

    При сбое используемого в настоящее время устройства горячего резерва агент отключает устройство резерва и, таким образом, отменяет замену. Затем агент пытается заменить устройство другим устройством горячего резерва, если оно доступно. В настоящее время эта функция ограничена тем, что механизм диагностики ZFS сообщает об сбоях только в случае исчезновения устройства из системы.

    Если выполняется физическая замена сбойного устройства с активным устройством резерва, можно повторно активировать замененное устройство с помощью команды zpool detach, чтобы отсоединить устройство резерва. Если включено свойство пула autoreplace, то устройство резервирования автоматически отсоединяется в пул устройств резерва, когда вставляется новое устройство и завершается операция перевода в оперативный режим.

Для замены устройства на устройство горячего резерва вручную используется команда zpool replace. Пример:

# zpool replace zeepool c2t1d0 c2t3d0
# zpool status zeepool
  pool: zeepool
 state: ONLINE
 scrub: resilver completed after 0h0m with 0 errors on Fri Aug 28 14:16:04 2009
config:

        NAME           STATE     READ WRITE CKSUM
        zeepool        ONLINE       0     0     0
          mirror       ONLINE       0     0     0
            c1t2d0     ONLINE       0     0     0
            spare      ONLINE       0     0     0
              c2t1d0   ONLINE       0     0     0
              c2t3d0   ONLINE       0     0     0  76.5K resilvered
        spares
          c2t3d0      INUSE     currently in use

errors: No known data errors

При доступности устройства горячего резерва неисправное устройство заменяется автоматически. Пример:

# zpool status -x
  pool: zeepool
 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-D3
 scrub: resilver completed after 0h12m with 0 errors on Fri Aug 28 14:18:16 2009
config:

        NAME                 STATE     READ WRITE CKSUM
        zeepool              DEGRADED     0     0     0
          mirror             DEGRADED     0     0     0
            c1t2d0           ONLINE       0     0     0
            spare            DEGRADED     0     0     0
              c2t1d0         UNAVAIL      0     0     0  cannot open
              c2t3d0         ONLINE       0     0     0  58.5K resilvered
        spares
          c2t3d0             INUSE     currently in use

errors: No known data errors

В настоящее время существует три способа деактивации устройств горячего резерва:

  • отмена горячего резерва путем удаления устройства из пула устройств хранения данных;
  • замена исходного устройства устройством горячего резерва;
  • постоянная подкачка устройства горячего резерва.

После замены неисправного устройства для возврата устройства горячего резерва в набор резервных устройств используется команда zpool detach. Пример:

# zpool detach zeepool c2t3d0
# zpool status zeepool
  pool: zeepool
 state: ONLINE
 scrub: resilver completed with 0 errors on Fri Aug 28 14:21:02 2009
config:

        NAME               STATE     READ WRITE CKSUM
        zeepool            ONLINE       0     0     0
          mirror           ONLINE       0     0     0
            c1t2d0         ONLINE       0     0     0
            c2t1d0         ONLINE       0     0     0
        spares
          c2t3d0           AVAIL

errors: No known data errors

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *