Subject: RAIDFrame: Reconfiguring an array
To: None <netbsd-users@netbsd.org>
From: Mark Cullen <mark.r.cullen@gmail.com>
List: netbsd-users
Date: 06/10/2006 15:27:09
Just a few questions to clarify really.

I have a simple RAID-1, configuration as follows:

---
START array
1 2 0

START disks
/dev/wd1a
/dev/wd3a

START layout
128 1 1 1

START queue
fifo 100
---

It all works great, I can fail either disk and rebuild it using -R 
/dev/wdXa. I am, however, a little confused over how I might go about 
removing a disk from the array, should I ever want to (I have no idea if 
I ever will, but I like to try to be semi-prepared at least).

I've figured out that I can actually unconfigure the array, by doing a 
`raidctl -u raid0`, and then I can force a reconfiguration by then doing 
a `raidctl -C /root/raid.conf raid0`. I'm not sure if I have to do a 
`raidctl -I <serial> raid0` and `raidctl -i raid0` after this, but it 
doesn't seem to hurt anything, so I do these too. Is this correct?

Right, so now I unconfigure the array, and change my configuration to 
remove one of the disks:

---
START array
1 2 0

START disks
/dev/wd1a
absent
#/dev/wd3a

START layout
128 1 1 1

START queue
fifo 100
---

After recreating the configuration, it seems to work ok (I can still 
mount the device, and my test data is still there). I can't, however, do 
a `raidctl -i raid0`. Doing such a thing, I get an error on the console:

"raid0: Error re-writing parity!"

Does this matter?

Right, so now I have just one disk on the array. I decide to copy some 
more test data on to it while the second disk is missing. Works fine. I 
add the missing disk back and reconfigure:

---
START array
1 2 0

START disks
/dev/wd1a
#absent
/dev/wd3a

START layout
128 1 1 1

START queue
fifo 100
---

Suprisingly, even though the data on these two disks now differs, the 
status of the array is ok on both disks. I assume this is because I 
forced a reconfiguration, and there's really no easy way to tell that 
the data differs. A `raidctl -i raid0` succeeds (admittedly I have no 
idea what it does, however), but the data on the two disks is still 
different, that is, /dev/wd3a still has the old copy of the data. In 
such a situation then, am I to force the re-added disk to "failed" and 
rebuild it?

Other than that, I seem to be able to get along with it just fine :-)

Mark