RAID1 array not actively mirroring

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I have a bit of a problem with my RAID1 mirror set.  The RAID1 set is not
actively mirroring for some reason.  

My setup is a software/hardware RAID0+1 setup that is used to get a static
snapshot of the database which is running on the box.  I have a Dell PE6400
running 2.4.16 with stock RAID modules (specs below for my box).  I have a
hardware RAID0 array internal to the box running off a PERC2DC (megaraid
driver built-in to kernel).  I also have 2 Dell PowerVault 220S drive arrays
filled external to the box attached to a PERC3QC hardware RAID card.

The PV220S' disks are hardware mirrored one to one (disk1 in PV1 mirrored to
disk1 in PV2 and so on) and then I'm using Linux software RAID to stripe
(/dev/md0) across them.  I then use software RAID to mirror /dev/md0 with
the hardware RAID0 array inside the box.  

All of the software arrays have been built with raidtools-0.90.0 from RH 7.1
RPM (mkraid).  In order to get a static copy of the database files I follow
the procedure outline below:

1. Suspend database operations
2. Fail the internal HW RAID0 with 'mdctl --fail /dev/md1 /dev/sdb1'
3. Remove the failed disk with 'mdctl --remove /dev/md1 /dev/sdb1'
4. Mount the failed HW RAID0 (/dev/sdb1) and use tar to back it up
5. Unmount the HW RAID0 
6. Re-add the HW RAID0 disk to the SW RAID1 with 'mdctl --add /dev/md1
/dev/sdb1'

This procedure is all done programmatically in a script and the software
RAID1 has worked up until about 3 days ago.  When /dev/sdb1 is re-added the
SW RAID1 re-syncs the disks, but when it completes it doesn't continue to
actively mirror any new writes even though /proc/mdstat and 'mdctl -D
/dev/md1' show the following:

Personalities : [raid0] [raid1]
read_ahead 1024 sectors
md1 : active raid1 sdb1[1] md0[0]
      212249792 blocks [2/2] [UU]

md0 : active raid0 sdn1[11] sdm1[10] sdl1[9] sdk1[8] sdj1[7] sdi1[6] sdh1[5]
sdg1[4] sdf1[3] sde1[2]
sdd1[1] sdc1[0]
      212249856 blocks 64k chunks

unused devices: <none>


/dev/md1:
        Version : 00.90.00
  Creation Time : Sun Jan 20 14:54:16 2002
     Raid Level : raid1
           Size : 212249792
     Raid Disks : 2
    Total Disks : 2
Preferred Minor : 1
    Persistance : Superblock is persistant

    Update Time : Fri Feb 15 07:27:05 2002
          State : dirty, no-errors
  Active Drives : 2
 Working Drives : 2
  Failed Drives : 0
   Spare Drives : 0


    Number   Major   Minor   RaidDisk   State
       0       9        0        0      active sync   /dev/md0
       1       8       17        1      active sync   /dev/sdb1
           UUID : 21ec9ce3:8f54dba2:8b8ea9d4:4cbdf6aa

I've mounted /dev/sdb1 and verified that the contents are valid up through
the re-sync performed by mdrecoveryd, but no new writes are performed.  I've
also tried 'dd if=/dev/zero of=./testfile bs=1M count=500' to create disk
activity, but only the SW RAID0 (/dev/md0) array (the external PowerVaults)
shows activity and when I mount /dev/sdb1, the file I just created is not
there.

Am I doing something incorrect when using mdctl to add the disk back into
the RAID1 set?  Have I missed something obvious here?  Below is a
pseudo-visual representation of my setup and my orignal /etc/raidtab for
(hopefully) easier understanding.

If anyone has any questions about my setup, or suggestions or comments,
please let me know ASAP.  This box is one of the most critical boxes in our
enterprise and I don't want to be one day behind in our backups.

Thank you for any help.

Regards,
Andy.


Andrew Rechenberg
Network Team, Sherman Financial Group
arechenberg@shermanfinancialgroup.com


-- Software RAID0 /dev/md0 ------->     <------|
                                               |
----------------------------------             |
         PowerVault 220S #1                    |
             Disks                             |
1  2  3  4  5  6  7  8  9  10  etc             |
----------------------------------             |
|  |  |  |  |  |  |  |  |  |                   |
M  M  M  M  M  M  M  M  M  M   <-- HW RAID1    |
|  |  |  |  |  |  |  |  |  |                   |
----------------------------------             |
         PowerVault 220S #2                    |
             Disks                             |
1  2  3  4  5  6  7  8  9  10  etc             |
----------------------------------             |
                                               |
                            Software RAID1 /dev/md1
Internal disks                                 |
------------                                   |
1      |                                       |
2      |                                       |
3      |                                       |
4  HW RAID0   <--------------------------------- 
5      |
6      |
7      V
-------------

Machine Specs
----------------
Dell PE6400
4 Xeon 700
8GB RAM
RedHat 7.1
2.4.16 kernel compiled from pristine source


raiddev /dev/md0
        raid-level                      0
        persistent-superblock           1
        chunk-size                      64

        nr-raid-disks                   12
        nr-spare-disks                  0

        device                          /dev/sdc1
        raid-disk                       0

        device                          /dev/sdd1
        raid-disk                       1

        device                          /dev/sde1
        raid-disk                       2

        device                          /dev/sdf1
        raid-disk                       3

        device                          /dev/sdg1
        raid-disk                       4

        device                          /dev/sdh1
        raid-disk                       5

        device                          /dev/sdi1
        raid-disk                       6

        device                          /dev/sdj1
        raid-disk                       7

        device                          /dev/sdk1
        raid-disk                       8

        device                          /dev/sdl1
        raid-disk                       9

        device                          /dev/sdm1
        raid-disk                       10

        device                          /dev/sdn1
        raid-disk                       11

raiddev /dev/md1
        raid-level                      1
        persistent-superblock           1
        chunk-size                      64

        nr-raid-disks                   2
        nr-spare-disks                  0

        device                          /dev/md0
        raid-disk                       0

        device                          /dev/sdb1
        raid-disk                       1
-
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux