Mdadm
Howto
Einrichten
Installation
- apt-get install mdadm
Raid 0
- mdadm -C /dev/md0 -l 0 -n 2 /dev/vda5 /dev/vda6
Raid 1
- mdadm -C /dev/md1 -l 1 -n 2 /dev/vda7 /dev/vda8
Raid 5
- mdadm -C /dev/md2 -l 5 -n 3 /dev/vda9 /dev/vda10 /dev/vda11
Raid 10
- mdadm -C /dev/md3 -l 10 -n 4 /dev/vda12 /dev/vda13 /dev/vda14 /dev/vda15
Mountpoints erzeugen
- mkdir /mnt/raid{0,1,5,10}
Dateisystem aufbringen
- mkfs.ext4 /dev/md0
- mkfs.ext4 /dev/md1
- mkfs.ext4 /dev/md2
- mkfs.ext4 /dev/md3
Mounten
- mount /dev/md0 /mnt/raid0
- mount /dev/md1 /mnt/raid1
- mount /dev/md2 /mnt/raid5
- mount /dev/md3 /mnt/raid10
- df -h -t ext4
Verfügbarer Speicher
Dateisystem Größe Benutzt Verf. Verw% Eingehängt auf /dev/vda1 50G 25G 23G 53% / /dev/md0 20G 24K 19G 1% /mnt/raid0 /dev/md1 9,8G 24K 9,3G 1% /mnt/raid1 /dev/md2 20G 24K 19G 1% /mnt/raid5 /dev/md3 20G 24K 19G 1% /mnt/raid10
Kontrolle
- cat /proc/mdstat
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md3 : active raid10 vda15[3] vda14[2] vda13[1] vda12[0]
20953088 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU]
[=============>.......] resync = 68.4% (14344640/20953088) finish=0.5min speed=202328K/sec
md2 : active raid5 vda11[3] vda10[1] vda9[0]
20953088 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]
md1 : active raid1 vda8[1] vda7[0]
10476544 blocks super 1.2 [2/2] [UU]
md0 : active raid0 vda6[1] vda5[0]
20953088 blocks super 1.2 512k chunks
mdadm.conf erstellen
- /usr/share/mdadm/mkconf > /etc/mdadm/mdadm.conf
alternative
(Braucht man nicht, wenn die Konfiguration im persistent superblock ist)
cd /etc/mdadm echo 'DEVICE /dev/hd*[0-9] /dev/sd*[0-9]' > mdadm.conf mdadm --detail --scan >> mdadm.conf
Bootvorgang
mdadm -A /dev/md0 /dev/sdb1 /dev/sdc10 mdadm -A /dev/md1 /dev/sdb2 /dev/sdc2 /dev/sdd2
Alternativ kann man die RAID*-Funktionen auch fest in den Kernel einbinden oder die Module in die Ramdisk einbinden, dann werden bei 0xFD Partitionstyp die Partitionen automatisch zu md-Devices assembliert und gestartet.
Partition hinzufügen
mdadm /dev/md2 -a /dev/sdc3
Partition fehlerhaft setzen
mdadm /dev/md2 -f /dev/sdb3
Partition entfernen
mdadm /dev/md2 -r /dev/sdb3
Raid stoppen
mdadm -S /dev/md0
Raid Info
mdadm -D /dev/md0
/dev/md0:
Version : 00.90.03
Creation Time : Wed Apr 15 13:42:42 2009
Raid Level : raid1
Array Size : 987840 (964.85 MiB 1011.55 MB)
Device Size : 987840 (964.85 MiB 1011.55 MB)
Raid Devices : 2
Total Devices : 2
Preferred Minor : 0
Persistence : Superblock is persistent
Update Time : Wed Apr 15 13:59:29 2009
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
UUID : 83eeb8b3:5bd709f3:0b079abc:da6fc34e
Events : 0.2
Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/sdb1
1 8 33 1 active sync /dev/sdc1
Superblock untersuchen
mdadm -E /dev/sdb1
/dev/sdb1:
Magic : a92b4efc
Version : 00.90.03
UUID : 83eeb8b3:5bd709f3:0b079abc:da6fc34e
Creation Time : Wed Apr 15 13:42:42 2009
Raid Level : raid1
Raid Devices : 2
Total Devices : 2
Preferred Minor : 0
Update Time : Wed Apr 15 13:59:29 2009
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Checksum : 243179c - correct
Events : 0.2
Number Major Minor RaidDevice State
this 0 8 17 0 active sync /dev/sdb1
0 0 8 17 0 active sync /dev/sdb1
1 1 8 33 1 active sync /dev/sdc1
Scanne alle Partitionen und Devices und baue sie zu md0 sofern im Superblock 0 aufgeführt
mdadm -Ac partitions -m 0 /dev/md0
Scanne alle Partitionen und Devices und baue sie zu md1 sofern im Superblock 1 aufgeführt
mdadm -Ac partitions -m 1 /dev/md1
Konfiguration updaten
mdadm -Ds > /etc/mdadm.conf
Superblock löschen
mdadm --zero-superblock /dev/sda11
Partition anschalten
mdadm --run /dev/sd11
Partition schreibbar setzen
mdadm --readwrite /dev/sd11
Synchronisationsgeschwindigkeit
anzeigen
cat /proc/sys/dev/raid/speed_limit_max 200000 cat /proc/sys/dev/raid/speed_limit_min 1000
erhöhen
echo 50000 > /proc/sys/dev/raid/speed_limit_min