[prev in list] [next in list] [prev in thread] [next in thread] 

List:       evms-devel
Subject:    [Evms-devel] EVMS 2.2.2 + lastest md_flush_buffers.patch + soft raid5 + BBR (was
From:       syrius.ml () no-log ! org
Date:       2004-02-26 13:48:40
Message-ID: wazza.87r7wieytj.fsf () message ! id
[Download RAW message or body]


Hi,

Let's explain what I'm doing:
I testing and discovering evms, i'm planning to use it on a personnal
server.
I'm interrested by software raid 5 and bbr support.
so, before using it with real data, i'm testing it on a test machine.
</blabla>

i'm actually doing test with a raid1 and a raid5 array (both with bbr
segments, without any feature)
I won't talk about the raid 1 one as it seems it's working correctly
(removing a segment, running the array in degraded mode, adding a
spare segment (evms sees it as a new, pending one), raid1d &
mdrecoveryd run, then when the array is rebuilt, evms sees it as in
sync)

the tests I do take place like that:
original state: raid5 is running active & in sync with 3 bbr segments.
- dmsetup remove_all; mdadm -S /dev/md0 (to stop dm/evms & md)
- fdisk /dev/hdb (and then i remove the partition used by one of the
bbr segemnt) (the partition table is re-read)
- evms_activate (it that case it complains about a missing "disk")
- evmsgui (it complains about a missing "disk" too :), running in
degraded mode; the array is active, mountable, ...; displaying info on
the md0 region shows that there are only 2 "disks" in the array.)
- i quit evmsgui
- dmsetup remove_all; mdadm -S /dev/md0 again
- fdisk /dev/hdb (to add the partition that was removed)
- dd if=/dev/zero of=/dev/hdb1 bs=1M count=1 (don't know exactly how
much is needed)
- evms_activate (still complaining, normal)
- evmsgui (still complaining too :), the new zeroed partition appears
as an available segment in the gui)
- adding a bbr segment manager to that segment, then commit

- adding that available bbr segment to the the degraded raid5 region:

* without the md_flush_buffers patch, evms complains about bad blocks
  on that spare segment and mark it as a 'faulty, removed' one.

* with the first version of md_flush_buffers patch, evms doesn't
  complains anymore about badblocks, the array is rebuild then
  synchronized, but i have to restart evms (dmsetup remove_all; mdadm
  -S /dev/md0 ; evms_activate) so it can see the array has been
  correctly rebuild and announced it as working, 'active, sync'.

* with the 2nd version of md_flush_buffers patch:
  when i "add spare segment to fix the degraded region", evmsgui shows
  that segment as a "new, pending one". It does until i commit.
  when i commit the gui complains, here are the evms_engine logs:
      MDRaid5RegMgr: md_analyze_volume: We found working_disks(2), the
        superblock has working_disks(3)
      MDRaid5RegMgr: md_analyze_volume: We found spare_disks(0), the
        superblock has spare_disks(1)
      MDRaid5RegMgr: md_analyze_volume: We found active_disks(2), the
        superblock has raid_disks(3).  The array is either corrupt or
        degraded
      MDRaid5RegMgr: md_analyze_volume: MD region md/md0 is degraded
      MDRaid5RegMgr: create_raid5_conf: Disabled device hdb1_bbr
        (errors detected)
      Engine: plugin_user_message: Message is: MDRaid5RegMgr: RAID5
        array md/md0 is missing the member hdb1_bbr with RAID index 2.
        The array is running in degrade mode.

  mdadm -D /dev/md0 says:
        Active Devices : 2
       Working Devices : 3
        Failed Devices : 0
         Spare Devices : 1
   Number Major Minor RaidDevice State
      0   254      9      0      active sync /dev/evms/.nodes/hdc3_bbr
      1   254     11      1      active sync /dev/evms/.nodes/hdc1_bbr
      2     0      0      2      faulty removed
      3   254     21      3      spare       /dev/evms/.nodes/hdb1_bbr
  (the spare disk is be resynched to replace the failed disk)

  but during the reconstruction, the gui shows the "spare disk" as a
  'faulty, removed' one. And it does until the recovery is finished.
  When the recovery is finished it now shows the array as active,
  clean with all the segments as 'active, sync'.

The 2nd md_flush_buffers patch works, i'm just wondering:
- is it normal that evms complains when i commit the "add spare to fix the
    degraded region" ? (it doesn't when it's a raid1 region)
- is it normal that evms shows the spare segment (being synchronized)
    as a 'faulty, removed' one ? (it doesn't when it's a raid1 region)

(again, when the array has been rebuilt, everything is ok, there may be
a little status issue when the array is being rebuilt)

please let me know.
Thanks.
    
hmm btw, is there a way to simulate an online segment crash ?
(would it be correct with dmsetup ? hmm remove or suspend /dev/hdb1 for
ex ?)

-- 


-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
_______________________________________________
Evms-devel mailing list
Evms-devel@lists.sourceforge.net
To subscribe/unsubscribe, please visit:
https://lists.sourceforge.net/lists/listinfo/evms-devel
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic