RedHat 5 Multipath using SAN attached disk
I have set up a RHEL5 server with combination of internal and SAN attached disk. The problem is not with the initial configuration, that all works, but with the re-creating of the multipath device when the fibre channel fails.
The configuration of the md is:
ARRAY /dev/md0 level=multipath devices=/dev/sda1,/dev/sdb1 auto=md spares=0
ARRAY /dev/md1 level=multipath devices=/dev/sda2,/dev/sdb2 auto=md spares=0
ARRAY /dev/md2 level=multipath devices=/dev/sda3,/dev/sdb3 auto=md spares=0
ARRAY /dev/md3 level=multipath devices=/dev/sda4,/dev/sdb4 auto=md spares=0
Initially used mdadm -C /dev/md1 --level=multipath --raid-devices=2 --auto=md --spares=0 to create device.
To test the fail-over capability I simply removed one of the FC cables from the server. fail-over worked as I had expected.
When I reconnected the FC I had to remove and re-add the device to the md:
mdadm --manage /dev/md1 --fail /dev/sdb2 --remove /dev/sdb2
mdadm --manage /dev/md1 --re-add /dev/sdb2
I know the "--fail" was unnecessary as it had already failed, but for completeness it certainly didn't hurt.
When I re-add the disk to the md it only adds it as a hot-spare:
mdadm --detail /dev/md1
Version : 00.90.03
Creation Time : Fri Dec 21 21:52:21 2007
Raid Level : multipath
Array Size : 97667072 (93.14 GiB 100.01 GB)
Raid Devices : 2
Total Devices : 2
Preferred Minor : 1
Persistence : Superblock is persistent
Update Time : Thu Jan 3 16:30:14 2008
State : clean, degraded
Active Devices : 1
Working Devices : 1
Failed Devices : 1
Spare Devices : 0
UUID : f7cb73e7:fa191968:125d5509:f0338bc6
Events : 0.11
Number Major Minor RaidDevice State
0 0 0 0 removed
1 8 2 1 active sync /dev/sda2
2 8 18 - hot spare /dev/sdb2
So, after all this, my question is how do I tell the md that /dev/sdb2 is not a hot-spare but is device number 0 (or 1) and should have a state of "active sych" same as /dev/sda2??
If I reboot it all comes up as it should with no hot-spare and both devices are "active sync", but I had hoped there would be a way of doing this without a reboot.
Thanks in advance for any responses,