ZFS позволяет переводить отдельные устройства в оперативный или автономный режим. Если оборудование является ненадежным или работает неправильно, ZFS продолжает считывание или запись данных в устройство, поскольку такое состояние рассматривается как временное. Если это состояние не является временным, в ZFS можно выполнить настройку для игнорирования такого устройства путем его перевода в автономный режим. ZFS не отправляет запросы на автономное устройство.
Для замены устройств их перевод в автономный режим не требуется.
Команда offline используется при необходимости временного отключения устройства. Например, перевод в автономный режим может потребоваться для физического отключения массива, входящего в пулы ZFS, от одного набора коммутаторов оптоволоконных каналов и его подключения к другому набору LUN. После повторного подключения массива и его инициализации в новом наборе коммутаторов эти LUN можно перевести в оперативный режим. Данные, добавленные в пулы устройств хранения данных во время нахождения LUN в автономном режиме, переносятся в LUN после перевода в оперативный режим.
Этот случай возможен при условии, что рассматриваемые системы распознают пул хранения после его подключения к новым коммутаторам, возможно, с помощью других контроллеров, и для пулов устанавливаются конфигурации RAID-Z или зеркальные конфигурации.
Для перевода устройства в автономный режим используется команда zpool offline. Требуемое устройство можно указать при помощи пути или краткого имени (если это устройство является диском). Пример:
# zpool offline tank c1t0d0 bringing device c1t0d0 offline |
При переводе устройства в автономный режим необходимо учитывать следующее:
Перевод в автономный режим пула в точке монтирования, в которой возникает сбой, невозможен. Например, невозможно перевести в автономный режим два устройства из конфигурации RAID-Z, невозможно также перевести в автономный режим виртуальное устройство верхнего уровня.
# zpool offline tank c1t0d0 cannot offline c1t0d0: no valid replicas |
По умолчанию автономный режим сохраняется. Устройство остается в этом режиме при перезагрузке системы.
Для временного перевода устройства в автономный режим используется параметр zpool offline -t. Пример:
# zpool offline -t tank c1t0d0 bringing device 'c1t0d0' offline |
При перезагрузке системы это устройство автоматически возвращается в состояние ONLINE.
При переводе в автономный режим устройство не отсоединяется от пула устройств хранения данных. При попытке использования устройства, переведенного в автономный режим, в другом пуле даже после уничтожения исходного пула будет выдано сообщение, подобное следующему:
device is part of exported or potentially active ZFS pool. Please see zpool(1M) |
Для использования устройства, переведенного в автономный режим, в другом пуле устройств хранения данных после уничтожения исходного пула сначала необходимо перевести это устройство обратно в оперативный режим, а затем уничтожить исходный пул устройств хранения данных.
Другой способ использования устройства из другого пула устройств хранения данных при необходимости сохранения исходного пула заключается в замене существующего устройства в исходном пуле на другое аналогичное устройство. Для получения информации о замене устройств см. Замена устройств в пуле устройств хранения данных.
При запросе состояния пула устройства в автономном режиме имеют статус OFFLINE. Для получения информации о запросе состояния пула см. Запрос состояния пула устройств хранения данных ZFS.
Для получения дополнительной информации о работоспособности устройств см. Определение статуса работоспособности пулов устройств хранения данных ZFS.
После перевода устройства в автономный режим его можно восстановить с помощью команды zpool online:
# zpool online tank c1t0d0 bringing device c1t0d0 online |
При переводе устройства в оперативный режим данные, записанные в пуле, заново синхронизируются с новым доступным устройством. Следует отметить, что перевод устройства в оперативный режим не позволяет произвести замену диска. Если вы переводите устройство в автономный режим, заменяете диск и пытаетесь вернуть его в оперативный режим, оно остается в состоянии ошибки.
При попытке перевода в оперативный режим неисправного устройства выводится сообщение об ошибке, подобное следующему:
# zpool online tank c1t0d0 warning: device 'c1t0d0' onlined, but remains in faulted state use 'zpool replace' to replace devices that are no longer present |
Кроме того, с помощью fmd можно просмотреть сообщение отказавшего диска.
SUNW-MSG-ID: ZFS-8000-D3, TYPE: Fault, VER: 1, SEVERITY: Major EVENT-TIME: Fri Aug 28 14:08:39 MDT 2009 PLATFORM: SUNW,Sun-Fire-T200, CSN: -, HOSTNAME: neo2 SOURCE: zfs-diagnosis, REV: 1.0 EVENT-ID: 9da778a7-a828-c88a-d679-c9a7873f4808 DESC: A ZFS device failed. Refer to http://sun.com/msg/ZFS-8000-D3 for more information. AUTO-RESPONSE: No automated response will occur. IMPACT: Fault tolerance of the pool may be compromised. REC-ACTION: Run 'zpool status -x' and replace the bad device. |
Для получения дополнительной информации о замене неисправных устройств см. Восстановление отсутствующего устройства.