Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations SkipVought on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

bad disk in RAID 0+1 configuration

Status
Not open for further replies.

WildCow

MIS
Nov 2, 1998
6
0
0
US
I have an F80 with an external 2104-TU3 disk subsystem with 4 disks striped
(hdisk3 - hdisk6) and mirrored (to hdisk7 - hdisk10). Disk and lv layout is as follow:

lsvg -l sharedvg
sharedvg:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
lv00 jfs 80 160 8 open/syncd /usr53
loglv00 jfslog 1 1 1 open/syncd N/A
lv03 jfs 56 112 8 open/syncd /usr3
lv04 jfs 76 152 8 open/syncd /usr5
lv05 jfs 80 160 8 open/syncd /usr54
lv06 jfs 200 400 8 open/syncd /usr4


Starting with the 4 disks in the mirror:

root in / =>lspv -l hdisk7
hdisk7:
LV NAME LPs PPs DISTRIBUTION MOUNT POINT
lv06 50 50 50..00..00..00..00 /usr4
lv03 14 14 00..14..00..00..00 /usr3
lv04 19 19 00..19..00..00..00 /usr5
lv05 20 20 00..20..00..00..00 /usr54
lv00 20 20 00..00..20..00..00 /usr53

root in / =>lspv -l hdisk8
hdisk8:
LV NAME LPs PPs DISTRIBUTION MOUNT POINT
lv06 50 50 50..00..00..00..00 /usr4
lv03 14 14 00..14..00..00..00 /usr3
lv04 19 19 00..19..00..00..00 /usr5
lv05 20 20 00..20..00..00..00 /usr54
lv00 20 20 00..00..20..00..00 /usr53

root in / =>lspv -l hdisk9
hdisk9:
LV NAME LPs PPs DISTRIBUTION MOUNT POINT
lv06 50 50 50..00..00..00..00 /usr4
lv03 14 14 00..14..00..00..00 /usr3
lv04 19 19 00..19..00..00..00 /usr5
lv05 20 20 00..20..00..00..00 /usr54
lv00 20 20 00..00..20..00..00 /usr53

root in / =>lspv -l hdisk10
hdisk10:
LV NAME LPs PPs DISTRIBUTION MOUNT POINT
lv06 50 50 50..00..00..00..00 /usr4
lv03 14 14 00..14..00..00..00 /usr3
lv04 19 19 00..19..00..00..00 /usr5
lv05 20 20 00..20..00..00..00 /usr54
lv00 20 20 00..00..20..00..00 /usr53

root in / =>lv lv06
LOGICAL VOLUME: lv06 VOLUME GROUP: sharedvg
LV IDENTIFIER: 000fa9ddd58f33e2.6 PERMISSION: read/write
VG STATE: active/complete LV STATE: opened/syncd
TYPE: jfs WRITE VERIFY: off
MAX LPs: 2048 PP SIZE: 32 megabyte(s)
COPIES: 2 SCHED POLICY: striped
LPs: 200 PPs: 400
STALE PPs: 0 BB POLICY: relocatable
INTER-POLICY: maximum RELOCATABLE: no
INTRA-POLICY: edge UPPER BOUND: 4
MOUNT POINT: /usr4 LABEL: /usr4
MIRROR WRITE CONSISTENCY: on
EACH LP COPY ON A SEPARATE PV ?: yes
STRIPE WIDTH: 4
STRIPE SIZE: 64K

root in / =>lslv lv03
LOGICAL VOLUME: lv03 VOLUME GROUP: sharedvg
LV IDENTIFIER: 000fa9ddd58f33e2.3 PERMISSION: read/write
VG STATE: active/complete LV STATE: opened/syncd
TYPE: jfs WRITE VERIFY: off
MAX LPs: 2048 PP SIZE: 32 megabyte(s)
COPIES: 2 SCHED POLICY: striped
LPs: 56 PPs: 112
STALE PPs: 0 BB POLICY: relocatable
INTER-POLICY: maximum RELOCATABLE: no
INTRA-POLICY: middle UPPER BOUND: 4
MOUNT POINT: /usr3 LABEL: /usr3
MIRROR WRITE CONSISTENCY: on
EACH LP COPY ON A SEPARATE PV ?: yes
STRIPE WIDTH: 4
STRIPE SIZE: 64K

root in / =>lslv lv04
LOGICAL VOLUME: lv04 VOLUME GROUP: sharedvg
LV IDENTIFIER: 000fa9ddd58f33e2.4 PERMISSION: read/write
VG STATE: active/complete LV STATE: opened/syncd
TYPE: jfs WRITE VERIFY: off
MAX LPs: 2048 PP SIZE: 32 megabyte(s)
COPIES: 2 SCHED POLICY: striped
LPs: 76 PPs: 152
STALE PPs: 0 BB POLICY: relocatable
INTER-POLICY: maximum RELOCATABLE: no
INTRA-POLICY: middle UPPER BOUND: 4
MOUNT POINT: /usr5 LABEL: /usr5
MIRROR WRITE CONSISTENCY: on
EACH LP COPY ON A SEPARATE PV ?: yes
STRIPE WIDTH: 4
STRIPE SIZE: 64K

root in / =>lslv lv05
LOGICAL VOLUME: lv05 VOLUME GROUP: sharedvg
LV IDENTIFIER: 000fa9ddd58f33e2.5 PERMISSION: read/write
VG STATE: active/complete LV STATE: opened/syncd
TYPE: jfs WRITE VERIFY: off
MAX LPs: 512 PP SIZE: 32 megabyte(s)
COPIES: 2 SCHED POLICY: striped
LPs: 80 PPs: 160
STALE PPs: 0 BB POLICY: relocatable
INTER-POLICY: maximum RELOCATABLE: no
INTRA-POLICY: middle UPPER BOUND: 4
MOUNT POINT: /usr54 LABEL: /usr54
MIRROR WRITE CONSISTENCY: on
EACH LP COPY ON A SEPARATE PV ?: yes
STRIPE WIDTH: 4
STRIPE SIZE: 64K

root in / =>lslv lv00
LOGICAL VOLUME: lv00 VOLUME GROUP: sharedvg
LV IDENTIFIER: 000fa9ddd58f33e2.1 PERMISSION: read/write
VG STATE: active/complete LV STATE: opened/syncd
TYPE: jfs WRITE VERIFY: off
MAX LPs: 2048 PP SIZE: 32 megabyte(s)
COPIES: 2 SCHED POLICY: striped
LPs: 80 PPs: 160
STALE PPs: 0 BB POLICY: relocatable
INTER-POLICY: maximum RELOCATABLE: no
INTRA-POLICY: center UPPER BOUND: 4
MOUNT POINT: /usr53 LABEL: /usr53
MIRROR WRITE CONSISTENCY: on
EACH LP COPY ON A SEPARATE PV ?: yes
STRIPE WIDTH: 4
STRIPE SIZE: 64K

hdisk7 is logging disk errors. My question is: how do I handle the unmirroring?
I know that because there are striped logical volumes I can't use migratepv.
Do I need to rmlvcopy all the logical volumes on hdisk7 through hdisk10,
replace the disk and re-mirror? I am confused. I have the AIX LVM redbook
(which is what I used to setup the stripe and mirror) but it is not clear to
me how to break the mirror and replace a bad disk. I appreciate any help!
Thank you.

Tom
 
Tom,

I would use rmlvcopy i.e.

rmlvcopy lv00 1 hdisk7

This will then remove the copy from hdisk7 and the other disks involved in the second PP copy. List the disks in each copy via:

lslv -m lv00

PP1 and PP2 describe each copy

Then reducevg and rmdev the disk, replace and exendvg and mklvcopy and syncvg....

Easy....!!??!!

Hope that helps

PSD
IBM Certified Specialist - AIX V4.3 Systems Support
IBM Certified Specialist - AIX V4 HACMP
 
Thanks for your response.

Would the following steps work?

rmlvcopy lv00 1 hdisk7
rmlvcopy lv05 1 hdisk7
rmlvcopy lv04 1 hdisk7
rmlvcopy lv03 1 hdisk7
rmlvcopy lv06 1 hdisk7
reducevg sharedvg hdisk7
** replace the disk **
extendvg sharedvg hdisk7
mklvcopy lv00 1 hdisk7
mklvcopy lv05 1 hdisk7
mklvcopy lv04 1 hdisk7
mklvcopy lv03 1 hdisk7
mklvcopy lv06 1 hdisk7
syncvg -l sharedvg
* done*
 
Try this

1. Remove all copies from disk:
# rmlvcopy lv_xx 1 hdiskX

2. Remove disk from volume group
# reducevg vg_name hdiskX

3. Remove disk from ODM:
# rmdev -l hdiskX -d

4. Connect new disk to system:
# smit, smitty wsm or cfgmgr

5. Add new disk to volume group:
# extendvg vg_name hdiskY

6. Create new copies:
# mklvcopy lv_xx 2 hdiskY
# syncvg -v vg_name



1. Start removing all logical volume copies from the disk. Use either the SMIT fastpath smit rmlvcopy or the rmlvcopy command as shown. This must be done for each logical volume that is mirrored on the disk.
If you have additional unmirrored logical volumes on the disk you have to either move them to another disk (migratepv), or remove them if the disk cannot be accessed (rmlv). As mentioned the latter will only work if the disk state is either missing or removed.

2. If the disk is completely empty, remove the disk from the volume group. Use smit fastpath smit reducevg or the reducevg command.

3. After the disk has been removed from the volume group, you can remove it from the ODM. Use the rmdev command as shown.

4. Connect the new disk to the system and reconfigure your system. Smit, smitty, wsm or cfgmgr will configure the new disk.

5. Add the new disk to the volume group. Use either the smit fastpath smit extendvg or the extendvg command.

6. Finally, create the new copies for each logical volume on the new disk. Use either the smit fast-path smit mklvcopy or the mklvcopy command. Synchronize the volume group, or each logical volume afterwards, using the syncvg command.


hope this helps
old1
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top