Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[solved] ein paar Fragen zu Raid-5-Array
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German)
View previous topic :: View next topic  
Author Message
Gucky_der_Mausbiber
Guru
Guru


Joined: 10 Apr 2005
Posts: 359
Location: Wetzlar, Hessen

PostPosted: Fri Jan 16, 2009 1:22 pm    Post subject: [solved] ein paar Fragen zu Raid-5-Array Reply with quote

Hallo,

ich bin gerade dabei einen kleinen Server aufzusetzen und arbeite dort mit einem Raid-5-Array bestehend aus 3 x 320GB SATA Festplatten. Im Laufe der Installation haben sich dann aber diverse Fragen aufgetan, speziell zu dem Verhalten meines Raid's. Ich habe die Platten folgendermassen eingeteilt:
Partition "/boot" = raid1 = sda1,sdb1,sdc1
Partition "/" = raid5 = sda2,sdb2,sdc2
Partition "swap" = raid5 = sda3,sdb3,sdc3

Ich habe mich zwar auch per Internet über Raid5 informiert, aber alle Fragen konnten nicht geklärt werden. Deswegen frage ich jetzt mal euch.

1.
Bei einem Raid5 habe ich ja 3 Festplatten im PC. Meine erste Frage lautet wie bekomme ich den Bootsektor auf alle 3 Festplatten bekomme, so das der PC auch nach Ausfall von sda noch bootet. Mit dem Befehl "grub-install --no-floppy /dev/md1" bzw. "grub-install --no-floppy /dev/sda(b,c)" klappt es auch nicht, bei beiden meckert die Partition wäre dafür nicht geeignet.

2.
Die Festplatten sind ja in 3 Partitionen aufgeteilt. Wenn nun eine Platte ausfallen würde, was dann? Muss ich den PC runter fahren oder kann ich einen "Hotplug" durchführen? Und wenn dann die defekte Platte ausgetauscht wurde, partitioniert und formatiert der Rechner die dann selbst neu und bindet sie ins Raid ein oder muss ich die Platte zuerst manuell partitionieren, dann formatieren und dann dem Raid hinzufügen?

3.
Mein Raid5 habe ich soweit hinbekommen, nach einem Neustart des Systems habe ich mit die raids per "mdadm --detail /dev/md2" angeschaut und es war alles okay, alle 3 Platten waren an und "sync". So nachdem ich den Rechner 1 Stunden später nochmal neugestartet habe kam dann plötzlich folgendes
Code:
server ~ # cat /proc/mdstat
Personalities : [linear] [raid0] [raid1] [raid6] [raid5] [raid4]
md1 : active raid1 sdc1[2] sda1[0]
      104320 blocks [3/2] [U_U]

md2 : active raid5 sdc2[2] sda2[0]
      614405760 blocks level 5, 64k chunk, algorithm 2 [3/2] [U_U]

md3 : active raid5 sdc3[2] sda3[0]
      4096384 blocks level 5, 64k chunk, algorithm 2 [3/2] [U_U]

unused devices: <none>
server ~ # mdadm --detail /dev/md1
/dev/md1:
        Version : 00.90.03
  Creation Time : Fri Jan 16 01:57:34 2009
     Raid Level : raid1
     Array Size : 104320 (101.89 MiB 106.82 MB)
  Used Dev Size : 104320 (101.89 MiB 106.82 MB)
   Raid Devices : 3
  Total Devices : 2
Preferred Minor : 1
    Persistence : Superblock is persistent

    Update Time : Fri Jan 16 04:15:37 2009
          State : clean, degraded
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           UUID : 379ca6e1:8a158ce1:6f168e16:ee3dbcd2
         Events : 0.10

    Number   Major   Minor   RaidDevice State
       0       8        1        0      active sync   /dev/sda1
       1       0        0        1      removed
       2       8       33        2      active sync   /dev/sdc1
server ~ # mdadm --detail /dev/md2
/dev/md2:
        Version : 00.90.03
  Creation Time : Fri Jan 16 01:57:54 2009
     Raid Level : raid5
     Array Size : 614405760 (585.94 GiB 629.15 GB)
  Used Dev Size : 307202880 (292.97 GiB 314.58 GB)
   Raid Devices : 3
  Total Devices : 2
Preferred Minor : 2
    Persistence : Superblock is persistent

    Update Time : Fri Jan 16 09:31:49 2009
          State : clean, degraded
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 64K

           UUID : 224575e7:244f3190:80037211:7dffad2e
         Events : 0.4302

    Number   Major   Minor   RaidDevice State
       0       8        2        0      active sync   /dev/sda2
       1       0        0        1      removed
       2       8       34        2      active sync   /dev/sdc2
server ~ # mdadm --detail /dev/md3
/dev/md3:
        Version : 00.90.03
  Creation Time : Fri Jan 16 01:58:10 2009
     Raid Level : raid5
     Array Size : 4096384 (3.91 GiB 4.19 GB)
  Used Dev Size : 2048192 (2000.52 MiB 2097.35 MB)
   Raid Devices : 3
  Total Devices : 2
Preferred Minor : 3
    Persistence : Superblock is persistent

    Update Time : Fri Jan 16 04:14:01 2009
          State : clean, degraded
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 64K

           UUID : 69853f97:8b154413:5f0b3c5b:9ee7bde6
         Events : 0.10

    Number   Major   Minor   RaidDevice State
       0       8        3        0      active sync   /dev/sda3
       1       0        0        1      removed
       2       8       35        2      active sync   /dev/sdc3
server ~ #

Sehe ich das flasch oder steht da das eine der Platten entfernt wurde? Weil das ist komisch, alle Platten sind im PC und scheinen auch zu laufen, siehe
Code:
server ~ # dmesg | grep md
Command line: root=/dev/md2 vga=0x318
Kernel command line: root=/dev/md2 vga=0x318
md: linear personality registered for level -1
md: raid0 personality registered for level 0
md: raid1 personality registered for level 1
md: raid6 personality registered for level 6
md: raid5 personality registered for level 5
md: raid4 personality registered for level 4
md: Autodetecting RAID arrays.
md: Scanned 9 and added 9 devices.
md: autorun ...
md: considering sdc3 ...
md:  adding sdc3 ...
md: sdc2 has different UUID to sdc3
md: sdc1 has different UUID to sdc3
md:  adding sdb3 ...
md: sdb2 has different UUID to sdc3
md: sdb1 has different UUID to sdc3
md:  adding sda3 ...
md: sda2 has different UUID to sdc3
md: sda1 has different UUID to sdc3
md: created md3
md: bind<sda3>
md: bind<sdb3>
md: bind<sdc3>
md: running: <sdc3><sdb3><sda3>
md: kicking non-fresh sdb3 from array!
md: unbind<sdb3>
md: export_rdev(sdb3)
raid5: allocated 3232kB for md3
raid5: raid level 5 set md3 active with 2 out of 3 devices, algorithm 2
md: considering sdc2 ...
md:  adding sdc2 ...
md: sdc1 has different UUID to sdc2
md:  adding sdb2 ...
md: sdb1 has different UUID to sdc2
md:  adding sda2 ...
md: sda1 has different UUID to sdc2
md: created md2
md: bind<sda2>
md: bind<sdb2>
md: bind<sdc2>
md: running: <sdc2><sdb2><sda2>
md: kicking non-fresh sdb2 from array!
md: unbind<sdb2>
md: export_rdev(sdb2)
raid5: allocated 3232kB for md2
raid5: raid level 5 set md2 active with 2 out of 3 devices, algorithm 2
md: considering sdc1 ...
md:  adding sdc1 ...
md:  adding sdb1 ...
md:  adding sda1 ...
md: created md1
md: bind<sda1>
md: bind<sdb1>
md: bind<sdc1>
md: running: <sdc1><sdb1><sda1>
md: kicking non-fresh sdb1 from array!
md: unbind<sdb1>
md: export_rdev(sdb1)
raid1: raid set md1 active with 2 out of 3 mirrors
md: ... autorun DONE.
EXT3 FS on md2, internal journal
Adding 4096376k swap on /dev/md3.  Priority:-1 extents:1 across:4096376k

Jetzt frage ich mich ist mein Raid kaputt oder warum steht selbst beim /dev/md1 (raid1) das eine Platte entfernt wurde? Und wenn sie wirklich fehlt, warum hat er beim hochfahren alles okay angezeigt?




ICh hoffe ihr könnt mir helfen, eventuell fallen mir zu dem Thema auch noch 1-2 Fragen ein, die stelle ich dann hinten an.
Vielen Dank schonmal im Vorraus


Last edited by Gucky_der_Mausbiber on Thu Jan 22, 2009 12:31 pm; edited 1 time in total
Back to top
View user's profile Send private message
SvenFischer
Veteran
Veteran


Joined: 05 Feb 2003
Posts: 1033
Location: Berlin

PostPosted: Sun Jan 18, 2009 10:56 am    Post subject: Reply with quote

1. Bootsektor kopieren: dd if=/dev/sda of=/dev/sdb bs=512 count=1 (oder so ähnlich, bitte vorher überprüfen).
Soweit ich es verstanden habe, kann die Boot Partition auf einem RAID1 liegen, aber kommt die Installation und dann macht man daraus ein RAID 1
2. Ich glaube Du musst die HD erst partitionieren, dann dem RAID hinzufügen und der übernimmt dann die "Formatierung"=Synchronisation. Hotplug hängt vom Controller ab und ob das im Kernel aktiviert ist (glaube ich).
3. Ich finde da schon einen Fehler:
Quote:
md: kicking non-fresh sdb2 from array!
md: unbind<sdb2>
md: export_rdev(sdb2)


In einer der letzten ct war ein fantastischer Artikel "Linux RAID".
Ach ja: SWAP braucht/soll man nicht aufs RAID legen, da das schon integriert ist!
Back to top
View user's profile Send private message
Earthwings
Bodhisattva
Bodhisattva


Joined: 14 Apr 2003
Posts: 7753
Location: Karlsruhe, Germany

PostPosted: Sun Jan 18, 2009 7:09 pm    Post subject: Reply with quote

Zu 1.) Als Alternative zu dd wie von SvenFischer angesprochen geht es auch per Grub. Zumindest über die Grub Shell ging es bei mir problemlos, per grub-install hatte ich es nicht probiert. Einfach für alle (drei) Festplatten wiederholen.
_________________
KDE
Back to top
View user's profile Send private message
Gucky_der_Mausbiber
Guru
Guru


Joined: 10 Apr 2005
Posts: 359
Location: Wetzlar, Hessen

PostPosted: Wed Jan 21, 2009 1:04 pm    Post subject: Reply with quote

Hallo,

so, da bin ich mal wieder. Ich hatte jetzt zwischenzeitlich die besagte Platte "sdb" per "dd" komplett gelöscht (hat über 7 Stunden gedauert).
Danach habe ich die Platte dann per "cfdisk /dev/sdb" partitioniert und dann mit dem Befehl "mdadm --add ..." wieder alle 3 Partitionen in das Raid eingebunden.

Danach lief auch direkt der sync an und nach 2-3 Stunden waren alle 3 Platten am laufen und gesynct. Ich habe das dann die nächsten 1-2 Tage immer mal wieder getestet und immer war alles in Ordnung.

Tja, 2 Tage (und etliche Neustarts) später dachte ich mir dann schaust mal was deine Platte macht und siehe da ... gleicher Fehler!

Wieder hat es mir meine sdb aus dem Raid gehauen, wieder mit dem gleichen Fehler!

Jetzt gebe ich echt langsam auf und die ct habe ich leider auch nicht mehr bekommen.
Woran kann das noch liegen? Ich bin echt am verzweifeln ....

PS: Kann es daran liegen das day System die Raids niemals richtig beenden kann? Da ja das "/"-Filesystem auf md2 liegt kann er beim neustart/shutdown md2 das Raid nicht richtig beenden. Gibt es dafür ne Lösung?
Back to top
View user's profile Send private message
Max Steel
Advocate
Advocate


Joined: 12 Feb 2007
Posts: 2047
Location: My own world! I and Gentoo!

PostPosted: Wed Jan 21, 2009 1:15 pm    Post subject: Reply with quote

Rein theoretisch müsste das deine initramfs(die du ja wahrscheinlich brauchst) machen...
Sozusagen als letzte Befehle vorm ausgehen.
_________________
mfg
Steel
___________________
Sorry for my bad English.

Heim-PC: Intel i7-5820K, 32GB RAM, GTX 1080
Laptop: Intel Core i5-4300U, 16GB RAM, Intel Graphic
Arbeit-PC: Intel i5-3470S, 16GB RAM, Intel Graphic
Back to top
View user's profile Send private message
Gucky_der_Mausbiber
Guru
Guru


Joined: 10 Apr 2005
Posts: 359
Location: Wetzlar, Hessen

PostPosted: Wed Jan 21, 2009 1:48 pm    Post subject: Reply with quote

hmm, also nein, bisher brauche und nutze ich (soweit ich weiß) kein initramfs.
Wofür sollte ich das den brauchen? Und wie kann ich es so einbauen und konfigurieren das er die raids sauber abmeldet?

Und zu guter letzt, kann das der Grund dafür sein das sdb ständig ausfällt? Ist ne nagelneue Platte per DD gelöscht.
Back to top
View user's profile Send private message
69719
l33t
l33t


Joined: 20 Sep 2004
Posts: 865

PostPosted: Wed Jan 21, 2009 2:23 pm    Post subject: Reply with quote

Eventuell braucht die sdb Platte eine weile länger als die anderen Platten um zu starten, dass Problem habe ich auch bei meinen Raid 5 und konnte es mit dem Kernelparameter rootdelay=10 (10 Sekunden warten) lösen. Wenn bei mir die Platte zu spät am System angemeldet wurde und des Raid schon gestartet wurde so wurde diese auch bei mir immer entfernt.
Back to top
View user's profile Send private message
Gucky_der_Mausbiber
Guru
Guru


Joined: 10 Apr 2005
Posts: 359
Location: Wetzlar, Hessen

PostPosted: Thu Jan 22, 2009 12:31 pm    Post subject: Reply with quote

Das scheint zu funktionieren, danke. Habe das rootdelay angehängt und seitdem laufen alle 3 Platten ohne Fehler.
Danke.
Back to top
View user's profile Send private message
fangorn
Veteran
Veteran


Joined: 31 Jul 2004
Posts: 1886

PostPosted: Thu Jan 22, 2009 1:18 pm    Post subject: Reply with quote

Noch ein später Kommentar.

Meines Wissens ist die Verlagerung von swap auf ein (Software)RAID5 eher kontraproduktiv. Der swap Algorithmus macht bei mehreren swap Partitionen WIMRE automatisch eine Art Striping.

Und wie bereits erwähnt wurde kann GRUB kein RAID. Da aber bei RAID1 alle Inhalte mit einer einzelnen Partition identisch sind kann Grub prima mit den einzelnen Bestandteilen umgehen. Also nicht mit /dev/md0 sondern mit /dev/sda1, /dev/sdb1 und /dev/sdc1
_________________
Video Encoding scripts collection | Project page
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum