Posts tagged ‘upgrade’

Замена “головы” в сторадже: disk ownership change

Вы уже наверняка знаете, что, в принципе, замена контроллера на установленной системе хранения NetApp процедура довольно несложная. Так как все контроллеры, всех семейств, используют одну и ту же OS Data ONTAP, отличаясь только  внутренним аппаратным устройством, а индивидуальные настройки контроллера системы (файловая система /etc, если кто понимает UNIX-style) находится отдельно от контроллера, на дисках дисковых полок, то вообще говоря замена контроллера на новый, даже другой системы, сводится к простому перетыканию кабелей, после чего новый контроллер с OS внутри подмонтирует свои индивидуальные настройки и поднимется с сохранением настроек и данных на дисках. Но следует не забыть про software ownership. Дело в том, что в этой схеме, ныне общепринятой, диски “приписаны” к определенному контроллеру по его SystemID (а не по подключенным портам, как было когда-то, во времена FAS3020 и старше). Соответственно, чтобы старые диски увиделись новым контроллером нужно на них записи их владельца поменять на нового. делается это из Maintenance mode:

=~=~=~=~=~=~=~=~=~=~=~= PuTTY log 2012.10.08 09:26:06 =~=~=~=~=~=~=~=~=~=~=~=
login as: root
root@192.168.99.161’s password:
=== OEMCLP v1.0.0 BMC v1.3 ===
bmc shell -> system power cycle
This will cause a dirty shutdown of your appliance. Continue? [y/N] y
bmc shell ->
bmc shell -> system console
Press ^G to enter BMC command shell

AMI BIOS8 Modular BIOS
Copyright (C) 1985-2009,  American Megatrends, Inc. All Rights Reserved
Portions Copyright (C) 2009 NetApp, Inc. All Rights Reserved
BIOS Version 6.1
+++++++++++++++++++++++++++++++++++

Boot Loader version 2.1
Copyright (C) 2000-2003 Broadcom Corporation.
Portions Copyright (C) 2002-2008 NetApp

4096MB RAM installed
CPU Type: Intel(R) Xeon(R) CPU                  @ 1.66GHz

Starting AUTOBOOT press Ctrl-C to abort…
Loading X86/freebsd/image2/kernel:..0×200000/7916668 0×98cc7c/708860 0xa3a000/573440 Entry at 0×00248390
Loading X86/freebsd/image2/platform.ko:0xac6000/380544 0xb23000/28000 0xb29d60/109976
Starting program at 0×00248390
NetApp Data ONTAP 8.1.1 7-ModeCopyright (C) 1992-2012 NetApp.
All rights reserved.
md1.uzip: 26368 x 16384 blocksmd2.uzip: 3584 x 16384 blocks

*******************************
*                             *
* Press Ctrl-C for Boot Menu. *
*                             *
*******************************
^C

Boot Menu will be available.

Please choose one of the following:

(1) Normal Boot.
(2) Boot without /etc/rc.
(3) Change password.
(4) Clean configuration and initialize all disks.
(5) Maintenance mode boot.
(6) Update flash from backup config.
(7) Install new software first.
(8) Reboot node.
Selection (1-8)? 5

You have selected the maintenance boot option:
the system has booted in maintenance mode allowing the
following operations to be performed:

?                 disk             
key_manager       fcadmin          
fcstat            sasadmin         
sasstat           acpadmin         
halt              help             
ifconfig          raid_config      
storage           sesdiag          
sysconfig         vmservices       
version           vol              
aggr              sldiag           
dumpblock         environment      
systemshell       vol_db           
led_on            led_off          
sata              acorn            
stsb              scsi             
nv8               disk_list        
fctest            disktest         
diskcopy          vsa              
xortest           disk_mung        

Type "help <command>" for more details.

In a High Availablity configuration, you MUST ensure that the
partner node is (and remains) down, or that takeover is manually
disabled on the partner node, because High Availability
software is not started or fully enabled in Maintenance mode.

FAILURE TO DO SO CAN RESULT IN YOUR FILESYSTEMS BEING DESTROYED

NOTE: It is okay to use ’show/status’ sub-commands such as
‘disk show or aggr status’ in Maintenance mode while the partner is up
Continue with boot?Please answer yes or no.
Continue with boot? yes

*> disk ?
usage: disk <options>

Options are: 
        assign {<disk_name> | all | [-T <storage type> | -shelf <shelf name>] [-n <count>] | auto} [-p <pool>] [-o <ownername>] [-s <sysid>] [-c block|zoned] [-f] - assign a disk to a filer or all unowned disks by specifying "all"  or <count> number of unowned disks
        ddr_label {repair | print | delete | dumpraw | modify [-c] -o <offset> -v <value> | start_scan | pause_scan | resume_scan | error_scan} [-d all | <disk_list>]
        encrypt { lock | rekey | destroy | sanitize | show } - perform tasks specific to self-encrypting disks
        power_cycle [ -f ] { [-d <disk_list>] | [ -c <channel_name> [ -s <shelf_number> ] ] } - power-cycle one or more disks
        reassign {-o <old_name> | -s <old_sysid>} [-n <new_name>] [-d <new_sysid>] - reassign disks from old filer
        remove_ownership [<disk_name> | all | -s <sysid>] [-f] - revert/remove disk ownership
        sanown_stats {start| stop| show }- collect sanown event stats
        show [-o <ownername> | -s <sysid> | -n | -v | -a]  - lists disks and owners
        unfail [-s] <disk_name>     - unfail a disk  (-s  not valid in maintenance mode)
        upgrade_ownership           - upgrade disks to new ownership scheme

*>

*> disk reassign -s xxxxxxxxxxx -d yyyyyyyyyyy

Partner node must not be in Takeover mode during disk reassignment
from maintenance mode.
Serious problems could result!!
Are you sure partner is NOT in takeover mode (y/n)? n

*> halt

Oct 08 01:34:22 [localhost:kern.cli.cmd:debug]: Command line input: the command is ‘halt’. The full command line is ‘halt’.

Uptime: 6m54sSystem halting…

Выше я прервал переназначение disk ownership, сама же эта процедура делается довольно быстро, и если нигде не ошибиться, и все иметь подготовленным и смонтированным, то можно уложить процедуру замены контроллера системы хранения в 15-20 минут.

Впрочем, если вы используете NetApp как SAN-устройство, и храните на нем LUN-ы, есть еще одна тонкость, связанная со сменой serial id этих LUN при замене NVRAM (отдельно, или в составе контроллера целиком), о которой поговорим в четверг.

HOWTO: Обновляем Data ONTAP на работающей системе

Процедура полного обновления OS и firmware системы хранения NetApp FAS

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

Загрузите с now.netapp.com:

Рекомендуется: Сообщите в саппорт о том, что вы приступаете к обновлению. Сгенерируйте письмо в AutoSupport с темой Maintenance или Upgrade, иначе вы можете получить кучу открытых кейсов для вашей системы и обеспокоенные звонки из техподдержки “чего это у вас там все ребутится в кластере?”
( > option autosupport.doit maintenance )
На крайний случай просто временно выключите AutoSupport (не рекомендуется, можно забыть включить назад)
(> option autosupport.enable off)

Смонтируйте на вашем компьютере как сетевой диск ресурс \\filerA\c$ и \\filerB\c$
Данное монтирование (C$) возможно в том числе, если вы не используете и не имеете лицензию CIFS.
Аналогично это возможно и с NFS в случае Linux/UNIX.

Сделайте резервную копию содержимого c$\etc\ на обоих системах

Скопируйте эту резервную копию в папку c$\backup\etc_хх-хх-хххх

Распакуйте архив прошивок полок в etc\shelf_fw на обоих контроллерах filerA и filerB

Распакуйте архив прошивок дисков в etc\disk_fw на обоих контроллерах filerA и filerB

* Обновление прошивки полок

Войдите в админскую консоль системы хранения.

Проверьте текущую версию shelf firmware ( > sysconfig -v )

Войдите в режим с повышенными привилегиями ( > priv set advanced )

Запустите обновление прошивки полок ( > storage download shelf )
Этот процесс обновит прошивки всех дисковых полок системы. Если вы хотите обновить только какие-то определенные, то используйте команду
> storage download shelf adapter_number.

Согласитесь на обновление, нажмите “y” и Enter.

После завершения проверьте версию прошивки полок ( > sysconfig -v )

Выйдите из режима повышенных привилегий ( > priv set admin )

* Обновление прошивки дисков

Прошивки дисков автоматически обновятся во время перезагрузки, если новые версии на этот момент будут лежать в папке disk_fw. Чтобы предотвратить такое поведение, например в случае очень больших систем с большим количеством дисков, можно изменить следующую системную опцию:
( > options raid.background_disk_fw_update.enable), она может быть в состоянии on или off. Рекомендуется оставить ее в on.

* Обновление Data ONTAP

Проверьте соответствие вашей системы опуликованным для полученного релиза Data ONTAP. При необходимости обновить версии прошивок полок и дисков сделайте это как описано выше.
Проверьте разделы known problems and limitations сопровождающей релиз информации. Проверьте списики исправленных багов между вашей рабочей системой и обновляемой.

* Процесс обновления

Распакуйте полученные архивы с новым дистрибутивом OS на смонтированные диски C$ обоих контроллеров в соответствуюшие папки (\etc\boot). Если вы проделываете это из под Windows, то рекомендуется воспользоваться стандартным путем, запустив на локальной машине самораспаковывающийся архив дистрибутива Data ONTAP и указав смонтированный на локальную машину диск \\filer\c$, как это указано в подсказке распаковки.

Запустите установку обновления новой OS на обоих системах ( > download )

Проверьте состояние кластера ( > cf status ) чтобы быть уверенным, что кластерный файловер работает

Выполните перехват системой filerB сервисов системы filerA ( > cf takeover )
Это отправит filerA в перезагрузку

Во время перезагрузки filerA нажмите ( ctrl-c ) для входа в maintenance mode
Вы должны делать это подключенным консольным кабелем к системе хранения, или через RMC (Remote Management Controller).

Находясь в maintenance mode наберите ( > halt ) чтобы выполнить полную перезагрузку

Нажмите ( del ) во время теста памяти, чтоы получить консоль CFE

Запустите прошивку нового firmware в flash командой CFE ( CFE> update_flash )

Перезагрузитесь командой ( bye ) на консоли и дождитесь завершения нормальной загрузки OS системы хранения filerA
Система filerA должна находиться в состоянии …waiting for giveback state

Для возвращения кластерных ресурсов на filerA мы должны дать команду
( > cf giveback –f ) с консоли filerB
Это необходимо сделать вручную, так как у нас сейчас различные версии Data ONTAP на контроллерах кластера.

После завершения giveback, проверьте версию прошивки и OS системы filerA
( > sysconfig –v )

После проверки успешности обновления повторяем действия с системой filerB:

Система filerA перехватывает сервисы filerB ( > cf takeover –n )

Наберите ( > halt ) в консоли filerB для перезагрузки

Во время перезагрузки filerB нажмите ( ctrl-c ) для входа в maintenance mode.
В maintenance mode наберите в консоли ( > halt ) для выполнения полной перезагрузки.
Нажмите ( del ) по время тестирования памяти чтобы получить консоль CFE.
Запустите обновление firmware командой ( CFE> update_flash )

Введите ( bye ) в консоли после завершения перепрошивки и выполните перезагрузку filerB

Если система filerB находится в состоянии …waiting for giveback state сделайте ручной giveback ( > cf giveback –f ) с контроллера filerA
Если процесс giveback завершен успешно, проверьте firmeware и версию OS на filerB при помощи ( > sysconfig –v )

Обе системы полностью обновлены.