невозможно импортировать том zpool: ошибка ввода-вывода

невозможно импортировать том zpool: ошибка ввода-вывода

это на nexenta open storage. У меня есть zpool, который находится в состоянии UNAVAIL из-за некоторых дисков.

# zpool import -F
  pool: delta
    id: XYAZA
 state: UNAVAIL
status: One or more devices are missing from the system.
action: The pool cannot be imported. Attach the missing
        devices and try again.
config:

        delta                        UNAVAIL  insufficient replicas
          raidz2-0                   UNAVAIL  insufficient replicas
            c0t5000C500573978EBd0    ONLINE
            c0t5000C50057397933d0    ONLINE
            c0t5000C50057397C47d0    UNAVAIL  cannot open
            c0t5000C5005739997Fd0    UNAVAIL  cannot open
            c0t5000C50057399F87d0    ONLINE
            c0t5000C5005739A90Bd0    ONLINE
            c0t5000C5005739ABC7d0    UNAVAIL  cannot open
            c0t5000C5005739AC0Fd0    ONLINE
          raidz2-1                   DEGRADED
            c0t5000C50057398657d0    ONLINE
            c0t5000C50057398E03d0    ONLINE
            c0t5000C50057398EF7d0    ONLINE
            c0t5000C50057398FAFd0    ONLINE
            c0t5000C5005739A39Fd0    UNAVAIL  cannot open
            c0t5000C5005739AAFFd0    ONLINE
            spare-6                  DEGRADED
              c0t5000C5005739AC3Fd0  UNAVAIL  cannot open
              c0t5000C50057398EDBd0  ONLINE
            c0t5000C5005739AE9Bd0    ONLINE


~# zpool import -FXf delta
cannot import 'delta': I/O error
        Destroy and re-create the pool from
        a backup source.
  1. Как мне заставить этот импорт zpool работать нормально?
  2. Являются ли указанные диски «НЕДОСТУПНЫМИ»? Как их можно отремонтировать/заменить?

Обновление: 7 сентября 2018 г.

После поиска соответствия дисков слотам на Nexenta и переустановки дисков в дельта-том мне удалось перевести один диск в режим ONLINE в группе raidz2-1, но 3 диска в группе raidz2-0 по-прежнему продолжают отображаться как UNAVAIL.

# zpool import -F
  pool: delta
    id: XYAZA
 state: UNAVAIL
status: One or more devices are missing from the system.
action: The pool cannot be imported. Attach the missing
        devices and try again.
config:

        delta                        UNAVAIL  insufficient replicas
          raidz2-0                   UNAVAIL  insufficient replicas
            c0t5000C500573978EBd0    ONLINE
            c0t5000C50057397933d0    ONLINE
            c0t5000C50057397C47d0    UNAVAIL  cannot open
            c0t5000C5005739997Fd0    UNAVAIL  cannot open
            c0t5000C50057399F87d0    ONLINE
            c0t5000C5005739A90Bd0    ONLINE
            c0t5000C5005739ABC7d0    UNAVAIL  cannot open
            c0t5000C5005739AC0Fd0    ONLINE
          raidz2-1                   DEGRADED
            c0t5000C50057398657d0    ONLINE
            c0t5000C50057398E03d0    ONLINE
            c0t5000C50057398EF7d0    ONLINE
            c0t5000C50057398FAFd0    ONLINE
            c0t5000C5005739A39Fd0    ONLINE
            c0t5000C5005739AAFFd0    ONLINE
            spare-6                  DEGRADED
              c0t5000C5005739AC3Fd0  UNAVAIL  cannot open
              c0t5000C50057398EDBd0  ONLINE
            c0t5000C5005739AE9Bd0    ONLINE

Я нашел один запасной диск для другого onlineпула на устройстве. Теперь вопрос: 1. Должен ли я отсоединить/присоединить запасной диск к группе raidz2-1, в которой есть только один диск UNAVAIL в подкатегории spare-6? или 2. Должен ли я отсоединить/присоединить запасной диск к группе raidz2-0, в которой все еще есть 3 диска UNAVAIL?

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

Я посмотрел историю создания этого пула. В прошлом он был создан с помощью следующей команды.

zpool create -m /volumes/delta -o autoreplace=on delta raidz2 c0t5000C500573978EBd0 c0t5000C50057397933d0 c0t5000C50057397C47d0 c0t5000C5005739997Fd0 c0t5000C50057399F87d0 c0t5000C5005739A90Bd0 c0t5000C5005739ABC7d0 c0t5000C5005739AC0Fd0 raidz2 c0t5000C50057398657d0 c0t5000C50057398E03d0 c0t5000C50057398EF7d0 c0t5000C50057398FAFd0 c0t5000C5005739A39Fd0 c0t5000C5005739AAFFd0 c0t5000C5005739AC3Fd0 c0t5000C5005739AE9Bd0

Означает ли это, что raidz2-0 и raidz2-1 — это два зеркальных пула RAIDZ?

Если да, следует ли мне отдать приоритет исправлению группы дисков raidz2-1, чтобы она стала оперативной, а не raidz2-0 (у которого 3 диска вышли из строя)?

решение1

  1. Стоит ли мне отсоединять/присоединять запасной диск к группе raidz2-1, в которой есть только один диск UNAVAIL в подкатегории запасного диска-6?

Ваш запасной диск уже был автоматически подключен raidz2-1и перенесен на новый. Обычно вы бы отсоединили c0t5000C5005739AC3Fd0и удалили его из системы, потому что он однажды вышел из строя (или переназначили бы его на другую систему и надеялись на лучшее, если у вас нет лишних ресурсов).

Но это вам не поможет, так как raidz2-0все еще не работает. Еслилюбойvdev в zpool выходит из строя, весь ваш пул и все данные в нем теряются. Каждый vdev выйдет из строя, если настроенная четность не может быть поддержана, поскольку внутри него вышло из строя достаточно дисков. В вашем случае каждый Z2 vdev может выдержать потерю двух дисков, но один из них потерял три.

  1. Стоит ли мне отсоединить/присоединить запасной диск к группе raidz2-0, в которой все еще есть 3 НЕДОСТУПНЫХ диска?

Во-первых, у вас сейчас нет настоящего запасного. И даже если вы удалили рабочий диск из raidz2-1(не рекомендуется!), вы все равно ничего не получите, пока не исправите свои неисправные диски в raidz2-0. Данные четности должны откуда-то поступать, и в этом случае они должны поступать с ваших неисправных дисков. Если вы не заставите работать хотя бы один из них, лучшим вариантом будет восстановление из резервной копии.

Я посмотрел историю создания этого пула. В прошлом он был создан с помощью следующей команды. zpool create -m /volumes/delta [...] Означает ли это, что raidz2-0 и raidz2-1 — это два зеркальных пула RAIDZ?

Нет, это значит, что ваш пул состоит из двух чередующихся vdev, каждый из которых настроен на избыточность raidz2 и 8 дисков. Вы можете потерять максимум 2 диска в каждом vdev. Если вы потеряете 3 в любом из них, игра окончена.

В ZFS вся избыточность обрабатывается на уровне vdev. Пул всегда чередуется по всем существующим vdev. Если какой-либо vdev выходит из строя, пул выходит из строя. Зеркальное отображение — это тип избыточности для vdev, несовместимый с raidz1/z2/z3 (вы можете смешивать и сопоставлять vdev с разными типами избыточности, но самый слабый определит прочность вашего пула, и производительность пострадает, поэтому это не рекомендуется).

Если да, следует ли мне отдать приоритет исправлению группы дисков raidz2-1, чтобы она стала оперативной, а не raidz2-0 (у которого 3 диска вышли из строя)?

Нет, сначала нужно исправить raidz2-0.


Все они принадлежат Seagate, есть смесь SEAGATE, Rev. A001 и SEAGATE, Rev. 0002, размером 1,82 ТБ.

Это не поможет вам сейчас, но, возможно, в будущем: желательно смешивать и сопоставлять производителей, модели и даже даты производства, чтобы сгладить случаи «плохой партии дисков». Например, если вы купили по 4 диска каждого из 4 основных производителей (Seagate, Western Digital, Hitachi, Toshiba) и разместили их 2 на 2 ваших виртуальных устройствах, даже если все диски одного производителя выйдут из строя одновременно, у вас все равно будет рабочий пул.

Связанный контент