Sie sind nicht angemeldet.

[gelöst] RAID1 nach reboot

1

29.03.2012, 10:05

RAID1 nach reboot

Hi,

Ich hab mir zwei zusaetzliche Platten eingebaut deren Partitionen ich in einem RAID1 laufen lassen möchte, ich möchte als nicht von den platten booten sondern ganz normal benutzen!
Dazu bin ich Anleitung gefolgt und habe das gemacht:

Quellcode

1
2
3
4
5
parted /dev/sda
mklabel gpt
mkpart primary 0 500
mkpart primary 500 100
mkpart primary 1000 1100


Das gleiche simultan für sdb!

Quellcode

1
2
3
4
5
6
7
mdadm --create --verbose /dev/md0 --auto=yes --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1
mdadm --create --verbose /dev/md1 --auto=yes --level=1 --raid-devices=2 /dev/sda2 /dev/sdb2
mdadm --create --verbose /dev/md2 --auto=yes --level=1 --raid-devices=2 /dev/sdc1 /dev/sdc1

mkfs.ext4 /dev/md0
mkfs.ext4 /dev/md1
mkfs.ext4 /dev/md2


Jetzt überwache ich das ganze mit watch cat /proc/mdstat, das dauert noch ne ganze weile, ist aber kein problem, ist eh n server...

Aber in der Konfiguration ueberlebt das ganze doch keinen reboot oder?
Was muss ich noch machen damit ich /dev/md[012] auch nach einem neustart sofort wieder habe?
Dazu konnte ich in den Anleitungen nichts finden...

Danke

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »Thorus« (16.04.2012, 14:15)


2

29.03.2012, 10:29

Der Kernel setzt die arrays beim initialisieren automatisch zusammen.
Das sollte dann auch in der Reihenfolge/Nummerierung passieren wie du sie erstellt hast, weil die Informationen beim Erstellen in die Raid Metadata geschrieben werden.
Falls das nicht so klappen sollte oder du nachträglich die Nummern ändern willst, kannst du in der /etc/mdadm.conf eine Konfiguration explizit angeben.
Da sind auch schöne Beispiele drin.

Gruß
Foyaxe

3

29.03.2012, 10:37

Ok danke:)

Kannst du mir auch sagen wo diese Raid Metadata liegen damit ich das mal bevor ich einen reboot wage checken kann?

4

29.03.2012, 10:42

Die steht im Header jeder Raid Partition.
Da wird für jeden Raid und jede Partition eine eindeutige Kennung erzeugt, damit der Kernel weiß, welche Partitionen zusammen gehören (und wie viele Platten es sein müssen und welche Art von Raid das ist).
So kannst du auch Platten in ein anderes System bauen und dort sollte der Raid anhand der Metadaten automatisch richtig zusammengesetzt werden.
Ob man die auslesen kann, ich glaube, mit mdadm müsste man sich die Info irgendwie ausgeben lassen können.

5

29.03.2012, 10:46

Quellcode

1
mdadm --examine /dev/sdxy

ist das.

7

06.04.2012, 18:23

Hi,

hab jetzt mal einen reboot gemacht, doch er hat dann nicht mehr gebootet weil die raids nicht erkannt wurden!

Deswegen hab ich folgenden Eintraege in der /etc/mdadm.conf gemacht:

Quellcode

1
2
3
ARRAY /dev/md/2 UUID=f038e5c6:c53b5255:3acab30a:0d26c89b
ARRAY /dev/md/3 UUID=816bf4dc:cbc8f409:2cb8bc5a:b38972e4
ARRAY /dev/md/4 UUID=86340941:638f182b:27affa84:980aac21


und danach den dienst mdadm neugestartet ich hatte aber immer noch kein /dev/md2-4....

Erst mit mdadm --assemble /dev/md2 /dev/sda1 /dev/sdb1 usw... ging es wieder...

Wie bekomme ich es hin dass beim neustart funktioniert?

Danke
Thorus

8

06.04.2012, 19:28

schau mal, wenn du keine konfiguration angibst, was in /var/log/messages so steht

9

07.04.2012, 14:19

Dort konnte ich leider keine Fehler oder Angabe bezueglich des RAIDs finden...

10

07.04.2012, 21:24

Quellcode

1
2
3
--- Multiple devices driver support (RAID and LVM)
    <*>   RAID support
    [*]     Autodetect RAID arrays during kernel boot (NEW)


hast du aber schon gesetzt?

11

09.04.2012, 19:31

Hi,

Das Problem ist das kann ich leider nicht nachschauen, ausser es gibt ne möglichkeit das beim laufenden kernel zu checken?

Das Server hab ich schon laenger, und da laeuft leider :( kein gentoo drauf, sondern openSuSe 11.4 und da ist der standardkernel in gebrauch...

12

09.04.2012, 19:39

dann solltest du eine kernelconfig under /proc/config.gz finden.
Die kannst du dann nach "CONFIG_MD_AUTODETECT" durchsuchen.

Gruß
Foyaxe

13

09.04.2012, 21:12

OK MD_AUTODETECT steht auf y:

Quellcode

1
2
 # zgrep MD_AUTODETECT /proc/config.gz
CONFIG_MD_AUTODETECT=y

14

09.04.2012, 21:19

Dann muss doch was in /var/log/messages stehen...
Oder kann es sein, dass Suse das in eine andere logdatei schreibt?
Weiß jetzt im Moment nicht mehr weiter...

15

09.04.2012, 21:23

Ok dann meld ich mich nochmal nach dem naechsten neustart, mir ist aufgefallen dass der dienst mdadmd nicht automatisch gestartet wurde, evtl braucht man den?

16

09.04.2012, 21:30

Auf Gentoo hab ich gerade geschaut,
es gibt /etc/init.d/mdadm und /etc/init.d/mdraid
Beide werden nicht gestartet und der Raid funktioniert.

17

09.04.2012, 21:54

Hmm ok, vllt ist das ein problem mit syslog?

syslog wird in den folgenden Runlevel gestartet:

Quellcode

1
2
 # chkconfig -l syslog
syslog                    0:off  1:off  2:on   3:on   4:off  5:on   6:off


Weil ich kann nachdem in /var/log/messages das halt geloggt wurde nichts von md oder raid sehen, erst wieder eintraege wenn ich es manuell mache:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Apr  6 18:20:15 server kernel: [ 1265.169568] md: md2 stopped.
Apr  6 18:20:15 server kernel: [ 1265.215856] md: bind<sdb1>
Apr  6 18:20:15 server kernel: [ 1265.216011] md: bind<sda1>
Apr  6 18:20:16 server kernel: [ 1265.461191] md/raid1:md2: active with 2 out of 2 mirrors
Apr  6 18:20:16 server kernel: [ 1265.461251] md2: detected capacity change from 0 to 499997597696
Apr  6 18:20:16 server kernel: [ 1265.461885]  md2: unknown partition table
Apr  6 18:20:34 server kernel: [ 1283.359758] EXT4-fs (md2): mounted filesystem with ordered data mode. Opts: (null)
Apr  6 18:20:45 server kernel: [ 1294.618699] md: md3 stopped.
Apr  6 18:20:45 server kernel: [ 1294.648477] md: bind<sdb2>
Apr  6 18:20:45 server kernel: [ 1294.648660] md: bind<sda2>
Apr  6 18:20:45 server kernel: [ 1294.657356] md/raid1:md3: active with 2 out of 2 mirrors
Apr  6 18:20:45 server kernel: [ 1294.657380] md3: detected capacity change from 0 to 499998646272
Apr  6 18:20:46 server kernel: [ 1295.415523]  md3: unknown partition table
Apr  6 18:20:51 server kernel: [ 1301.143529] md: md4 stopped.
Apr  6 18:20:51 server kernel: [ 1301.192675] md: bind<sdb3>
Apr  6 18:20:51 server kernel: [ 1301.192846] md: bind<sda3>
Apr  6 18:20:51 server kernel: [ 1301.194807] md/raid1:md4: active with 2 out of 2 mirrors
Apr  6 18:20:51 server kernel: [ 1301.194838] md4: detected capacity change from 0 to 99999473664
Apr  6 18:20:51 server kernel: [ 1301.235365]  md4: unknown partition table
Apr  6 18:20:55 server kernel: [ 1304.486186] EXT4-fs (md3): mounted filesystem with ordered data mode. Opts: (null)
Apr  6 18:21:10 server kernel: [ 1319.666430] EXT4-fs (md4): mounted filesystem with ordered data mode. Opts: (null)


Allerdings sehe ich auch nicht von den beiden anderen raids (md0 und md1) diese habe ich damals bei Installation über das Menue erstellt, eine von den beiden ist die systemplatte....
Somit kann anderes File ja aber schon mal nicht sein, da beim manuellen ja in /var/log/messages geschrieben wurde....

18

16.04.2012, 14:15

nach dem jetztigen neustart ging es, einzige aenderung ist das der dienst mdadmd im autostart ist, vllt braucht SuSe den?

Auf jeden Fall geht es jetzt:)