Как передать диск в системе от одного контроллера другому

Как вы знаете, каждый контроллер в HA-паре системы хранения NetApp владеет собственным набором дисков. Когда-то, много лет назад, еще до систем серии 3000, использовался так называемый hardware ownership, при котором привязка к контроллеру происходила “физически”, на уровне полки и петли FCAL. Начиная с 3020 в системах NetApp применяется так называмый sowtware ownership, при котором владелец диска назначается согласно WWN этого диска, и появилась возможность более гибко назначать владельца и разделять диски между контроллерами. Например, можно даже имея одну дисковую полку произвольно назначить диски из нее разным контроллерам.

??ногда же возникает задача перераспределить диски, например передать часть дисков от одного контроллера-владельца другому.

Как это сделать показывает статья в Knowledge Base

KB ID: 1011998 Version: 3.0 Published date: 01/13/2011

Описание

Приведенная процедура смены контроллера-владельца диска применима к любой системе, поддерживающей software-based ownership (на сегодняшний день все выпускаемые системы используют software-based ownership).

Процедура

В разбираемом примере, FilerA владеет spare-диском, который мы хотим передать контроллеру FilerB.

1. Получим Disk ID

FilerA> vol status -s
Spare disks
RAID Disk Device HA SHELF BAY CHAN Pool Type RPM Used (MB/blks) Phys (MB/blks)
——— —— ————- —- —- —- —– ————– ————–
Spare disks for block or zoned checksum traditional volumes or aggregates
spare 0b.22 0b 1 6 FC:B - FCAL 10000 68000/139264000 69536/142410400

2. Перейдем в режим повышенных привилегий (advanced mode)

FilerA*> priv set advanced
Warning: These advanced commands are potentially dangerous; use them only when directed to do so by NetApp personnel.

3. Удалим текущего владельца диска

FilerA*> disk remove_ownership 0b.22
Volumes must be taken offline. Are all impacted volumes offline(y/n)?? yes
FilerA*> Sat Jan 14 17:46:42 GMT [FilerA: raid.config.spare.disk.missing:info]: Spare Disk 0b.22 Shelf 1 Bay 6 [NETAPP X272_HJURE073F10 NA14] S/N [xxxxxx] is missing.

Внимание:

  • Команду disk remove_ownership можно дать сразу на группу дисков, разделив их имена пробелами, disk remove_ownership 6c.64 6c.65 6c.66 снимет владельца со всех перечисленных дисков.
  • В случае систем серии 30×0, проверьте установку опции options disk.auto_assign. Если она установлена в on, то когда вы снимете владельца с дисков, система автоматически назначит их назад. По этой причине убедитесь, что перед началом операции эта опция установлена в off. Можно ее включить назад, после передачи диска контроллеру.
  • Сообщение volumes must be taken offline это предохранительная мера, вы должны подтвердить, что не удаляете диск с данными из активного тома/aggregate. В данном примере мы перемещаем spare-диск, а не диск, уже назначенный в RAID.

4. Подключаемся к контроллеру FilerB и переходим в advanced mode

FilerB*> priv set advanced
Warning: These advanced commands are potentially dangerous; use
them only when directed to do so by NetApp
personnel.

5. Назначаем нового владельца

FilerB*> disk assign 0b.22
Sat Jan 14 17:47:32 GMT [FilerB: diskown.changingOwner:info]: changing ownership for disk 0b.22 (S/N xxxxxx) from unowned (ID -1) to FilerB (ID xxxxxx)

6. Проверяем, что диск теперь spare у нового контроллера

FilerB*> vol status -s
Spare disks
RAID Disk Device HA SHELF BAY CHAN Pool Type RPM Used (MB/blks) Phys (MB/blks)
——— —— ————- —- —- —- —– ————– ————–
Spare disks for block or zoned checksum traditional volumes or aggregates
spare 0b.22 0b 1 8 FC:B - FCAL 10000 68000/139264000 69536/142410400

Комментарии (7)

  1. Дмитрий Хомицевич:

    Хорошее описание. Как раз то что надо для стартовой эксплуатации обьекта :)

  2. motl:

    Можно и так:

    1) ssh fl1 vol status –s

    Spare disks (empty)

    2) ssh fl2 vol status -s

    Spare disks

    RAID Disk Device HA SHELF BAY CHAN Pool Type RPM Used (MB/blks) Phys (MB/blks)
    ——— —— ————- —- —- —- —– ————– ————–
    Spare disks for block or zoned checksum traditional volumes or aggregates
    spare 2c.21.22 2c 21 22 SA:B - SAS 15000 418000/856064000 420156/860480768
    spare 2c.21.23 2c 21 23 SA:B - SAS 15000 418000/856064000 420156/860480768

    3) ssh fl2 “priv set diag ; disk assign 2c.21.22 -s unowned -f ”

    4) :/ [root] > ssh fl1 disk show -n
    DISK OWNER POOL SERIAL NUMBER HOME
    ———— ————- —– ————- ————-
    2c.21.22 Not Owned NONE 3QQ332MC00009035M6RS

    5) ssh fl1 disk assign 2c.21.22

    6) ssh fl1 vol status -s

    Spare disks

    RAID Disk Device HA SHELF BAY CHAN Pool Type RPM Used (MB/blks) Phys (MB/blks)
    ——— —— ————- —- —- —- —– ————– ————–
    Spare disks for block or zoned checksum traditional volumes or aggregates
    spare 2c.21.22 2c 21 22 SA:A - SAS 15000 418000/856064000 420156/860480768

  3. Дмитрий ??ванов:

    У меня относительно новый (и первый в практике netapp)
    Допустим, в агрегате-17 дисков в RAID-DP и один spare-диск,
    Допустим, вышел из строя диск.
    Можете дать последовательность команд:1) просмотр, какой диск вылетел
    2) процедура замены диска(допустим, rebuild на spare-диск уже закончился и спары у нас нет пока)
    3) Тут мы получаем от суппорта новый диск-> надо поменять-> + я так понимаю назначить диск как spare/
    Был бы крайне благодарен за последовательность операций

  4. Дмитрий ??ванов:

    > 1) просмотр, какой диск вылетел

    Это должно быть в логе и в сообщениях autosupport

    > 2) процедура замены диска

    При наличии hot spare сразу начинается восстановление на него, либо с помощью процедуры Rapid RAID Recovery, при которой читаемая на диске информация переносится прямо на spare, остальная восстанавливается с RAID parity (преимущество - это быстро и минимально грузит систему), либо с помощью традиционного RAID reconstruction, если диск физически недоступен более.

    > 3) Тут мы получаем от суппорта новый диск

    Затем вы вставляете пришедший на замену диск на место вышедшего из строя, и он становится новым hot spare. Любой новый для системы диск, не содержащий данных, рассматривается системой как hot spare.

    Рекомендую, если вас такие детали интересуют, почитать недавно опубликованный перевод NetApp Resiliency Guide

  5. Дмитрий ??ванов:

    Спасибо, Роман!

  6. n22sn:

    День добрый!
    А можно как то перетащить диски если второй контроллер не работает?

  7. n22sn:

    А какой в таком действии физический смысл? Как (зачем) можно передать диски несуществующему (неработающему) контролеру? Какая ситуация может такое действие породить?

Оставить комментарий