Ключевые слова:solaris, raid, disk, (найти похожие документы)
From: Alexey Mikhailov <alexey@it-m.kiev.ua.>
Newsgroups: email
Date: Mon, 4 Dec 2008 17:02:14 +0000 (UTC)
Subject: Замена вышедшего из строя диска в зеркале Solaris Volume Manager (Solaris 9)
1. Проверяем существует ли "железный RAID"
# raidctl
No RAID volumes found
2. Смотрим с каими зеркалами проблема:
# metastat
....
d101: Mirror
Submirror 0: d900
State: Okay
Submirror 1: d910
State: Needs maintenance
Submirror 2: d920
State: Okay
Submirror 3: d930
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 1058304 blocks (516 MB)
....
d200: Mirror
Submirror 0: d201
State: Needs maintenance
Submirror 1: d202
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 283503360 blocks (135 GB)
....
# metastat d910
d910: Submirror of d101
State: Needs maintenance
Invoke: metareplace d101 c1t1d0s0 <new device>
Size: 1058304 blocks (516 MB)
Stripe 0:
Device Start Block Dbase State Reloc Hot Spare
c1t1d0s0 0 No Maintenance Yes
# metastat d201
d201: Submirror of d200
State: Needs maintenance
Invoke: metareplace d200 c1t1d0s5 <new device>
Size: 283503360 blocks (135 GB)
Stripe 0: (interlace: 32 blocks)
Device Start Block Dbase State Reloc Hot Spare
c1t0d0s5 0 No Okay Yes
c1t1d0s5 0 No Maintenance Yes
3. Удаляем реплики со сломавшегося диска
Смотрим где они были
# metadb -i
flags first blk block count
a m p luo 16 8192 /dev/dsk/c1t0d0s4
a p luo 8208 8192 /dev/dsk/c1t0d0s4
a p luo 16400 8192 /dev/dsk/c1t0d0s4
W p l 16 8192 /dev/dsk/c1t1d0s4
W p l 8208 8192 /dev/dsk/c1t1d0s4
W p l 16400 8192 /dev/dsk/c1t1d0s4
a p luo 16 8192 /dev/dsk/c1t2d0s4
a p luo 8208 8192 /dev/dsk/c1t2d0s4
a p luo 16400 8192 /dev/dsk/c1t2d0s4
a p luo 16 8192 /dev/dsk/c1t3d0s4
a p luo 8208 8192 /dev/dsk/c1t3d0s4
a p luo 16400 8192 /dev/dsk/c1t3d0s4
W - реплика устройства с ошибками при записи
Удаляем информацию о репликах
# metadb -d /dev/dsk/c1t1d0s4
# metadb -i
flags first blk block count
a m p luo 16 8192 /dev/dsk/c1t0d0s4
a p luo 8208 8192 /dev/dsk/c1t0d0s4
a p luo 16400 8192 /dev/dsk/c1t0d0s4
a p luo 16 8192 /dev/dsk/c1t2d0s4
a p luo 8208 8192 /dev/dsk/c1t2d0s4
a p luo 16400 8192 /dev/dsk/c1t2d0s4
a p luo 16 8192 /dev/dsk/c1t3d0s4
a p luo 8208 8192 /dev/dsk/c1t3d0s4
a p luo 16400 8192 /dev/dsk/c1t3d0s4
4. Расконфигурируем диск:
Смотрим по какому пути он доступен
# cfgadm -al
Ap_Id Type Receptacle Occupant Condition
c0 scsi-bus connected configured unknown
c0::dsk/c0t0d0 CD-ROM connected configured unknown
c1 scsi-bus connected configured unknown
c1::dsk/c1t0d0 disk connected configured unknown
c1::dsk/c1t1d0 disk connected configured unknown
c1::dsk/c1t2d0 disk connected configured unknown
c1::dsk/c1t3d0 disk connected configured unknown
c2 scsi-bus connected unconfigured unknown
c3 fc connected unconfigured unknown
c4 fc connected unconfigured unknown
usb1/1 unknown empty unconfigured ok
usb1/2 unknown empty unconfigured ok
usb2/1 unknown empty unconfigured ok
usb2/2 unknown empty unconfigured ok
Расконфигурируем
# cfgadm -c unconfigure c1::dsk/c1t1d0
5. Вытаскиваем из сервера диск, на котором горит синяя лампочка (если
это сервер Sun) и вставляем новый
6. Конфигурирем
cfgadm -c configure c1::dsk/c1t1d0
если при этом получаем ошибку
cfgadm: Hardware specific failure: failed to configure SCSI device: I/O error
или
cfgadm: Attachment point not found
запускаем команду
devfsadm -C
7. Для того чтобы создать аналогичную разбивку с существующим диском:
Записываем таблицу разделов с существуещего (и работающего) диска
сабмирора в файл:
prtvtoc /deм/rdsk/c1t0d0s2 > /var/tmp/c1t0d0s2.vtoc
теперь эту таблицу пишем на новый диск
fmthard -s /var/tmp/c1t0d0s2.vtoc /dev/rdsk/c1t1d0s2
8. Проверяем командой format всё ли ОК
9. Обновляем информацию о метадевайсах:
# metadevadm -u c1t1d0
Updating Solaris Volume Manager device relocation information for c1t1d0
Old device reloc information:
id1,sd@SSEAGATE_ST373307LSUN72G_3HZ7MLW900007451FLCZ
New device reloc information:
id1,sd@SFUJITSU_MAW3073NCSUN72G_000808B0R06J____DAN0P820R06J
10. Заменяем диски в сабмирорах:
# metareplace -e d101 c1t1d0s0
# metareplace -e d200 c1t1d0s5
11. Записываем реплики на новый диск:
# metadb -a -c 3 /dev/dsk/c1t1d0s4
Смотрим за синхронизацией (metastat)