Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


lpi2:raid

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
lpi2:raid [2019/07/02 13:41]
ingo_wichmann [Vorraussetzung]
lpi2:raid [2025/09/27 06:42] (aktuell)
ingo_wichmann
Zeile 1: Zeile 1:
-====== ​Einfaches ​Beispiel Software RAID 1 ======+====== Beispiel Software RAID 1 ======
 ===== Voraussetzung ===== ===== Voraussetzung =====
-Laufendes Linuxsystem auf einer Festplatte, zusätzliche mindestens ​gleich große ​zweite ​neue Festplatte +Mindestens zwei gleich große neue Festplatten,​ für RAID5 mindestens dreiIn der Praxis besser mindestens eine mehr
- +
-Zum Testen können auch zwei Partitionen auf der selben Festplatte genutzt werden+
  
 +Zum Testen können auch zwei bzw. drei gleich große Partitionen auf derselben Festplatte genutzt werden. ​
  
 ===== Partitionierung ===== ===== Partitionierung =====
-Große ​Partition ​für RAID und kleine für Swap auf der zweiten Festplatte ​anlegen+Partitionstabelle mit einer Partition ​[[admin_grundlagen:​partitionierung|anlegen]]
  
-==== RAID Partition taggen ==== +Vorsichtshalber betroffene Blockdevices wipen: 
-  ​parted ​/dev/sda set 4 raid on+  ​wipefs -af /dev/sdb
  
-  ​fdisk -l /dev/sda | grep -i raid +==== RAID Partitionen taggen ==== 
-<​file>​ +Bevorzugt mit ''​gdisk'',​ hier vereinfacht mit ''​parted'':​ 
-/dev/sda4        63500288 ​  ​126414847 ​   31457280 ​  ​fd  ​Linux ​raid autodetect+  parted /dev/sdb set 1 raid on 
 +  parted /dev/sdc set 1 raid on 
 +  … 
 + 
 +  ​fdisk -l /dev/sd{b,​c} ​| grep -i raid 
 +-> gibt aus: 
 +<​file ​txt GPT Partitionstabelle
 +/dev/sdb1   ​2048 3907028991 3907026944 ​ 1.8T Linux RAID 
 +… 
 +/​dev/​sdc1 ​  ​2048 3907028991 3907026944 ​ 1.8T Linux RAID
 </​file>​ </​file>​
  
 ===== Pakete installieren ===== ===== Pakete installieren =====
-=== Debian (ab 7) ==== +=== Debian (ab 9) ==== 
-  apt-get install mdadm+  apt install mdadm
  
 Autoerkennung auf ''​none''​ stellen. ​ Autoerkennung auf ''​none''​ stellen. ​
  
 +=== CentOS (ab 8) ====
 +  dnf install mdadm
 ===== RAID 1 anlegen ===== ===== RAID 1 anlegen =====
-((falls die Blockdevices zuvor schon verwendet wurden sicherheitshalber:​ +((falls die Blockdevices zuvor schon verwendet wurdensicherheitshalber:​ 
-  mdadm --zero-superblock /dev/sda2 +  mdadm --zero-superblock /dev/sdb1 
-  mdadm --zero-superblock /dev/sda4+  mdadm --zero-superblock /dev/sdc1
 )) ))
-  mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sda2 /dev/sda4+  mdadm --create /dev/md0 --level=1 --raid-devices=2 ​--assume-clean ​/dev/sdb1 /dev/sdc1
   watch cat /​proc/​mdstat   watch cat /​proc/​mdstat
-  mkfs.ext4 /dev/md0 +  mkfs.ext4 /​dev/​md0 ​ 
-  ​mkdir /mnt/md0 +(( alternativ: 
-  mount /dev/md0 /mnt/md0+  ​mkfs.xfs ​/dev/md0 
 +)) 
 +  mount -m /​dev/​md0 ​/mnt/md0 
 +  cp -a /​usr/​share/​. ​/mnt/md0
  
 ====== Ausfall einer Platte simulieren ====== ====== Ausfall einer Platte simulieren ======
-  ​mdadm /dev/md0 --fail /dev/sda2+===== Platte entfernen ===== 
 +  ​mdadm /dev/md0 --fail /dev/sdb1
   cat /​proc/​mdstat   cat /​proc/​mdstat
-  mdadm /dev/md0 --remove /dev/sda2+  mdadm /dev/md0 --remove /dev/sdb1 
 +-> Ergebnis:
   cat /​proc/​mdstat   cat /​proc/​mdstat
-Wiederherstellen: +  mdadm --detail /dev/md0 
-  mdadm /dev/md0 --add /dev/vdb1+  mdadm --query --examine /dev/sdb1 
 +===== Wiederherstellen ​===== 
 +  mdadm /dev/md0 --add /dev/sdb1 
 +  cat /​proc/​mdstat 
 + 
 +==== Wiederherstellen beschleunigen ==== 
 +Resync läuft mit angezogener Handbremse, um dem normalen I/O nicht im Weg zu sein. Aktuelle Werte auslesen: 
 +  sysctl dev.raid.speed_limit_min 
 +  sysctl dev.raid.speed_limit_max 
 + 
 +Beschleunigen mit: 
 +  # 100000 bedeutet: mindestens mit 100.000 K/sec syncen, ohne Rücksicht 
 +  sysctl dev.raid.speed_limit_min=100000 
 +  # Niemals mit mehr als 200 MB/sec syncen 
 +  sysctl dev.raid.speed_limit_max=200000 
 +-> Resync sollte jetzt schneller laufen:
   watch cat /​proc/​mdstat   watch cat /​proc/​mdstat
  
 +====== RAID entfernen =====
 +  umount /mnt/md0
 +  mdadm --stop /dev/md0
 +  cat /​proc/​mdstat
 +
 +====== RAID 1 aus einzelner Platte zusammensetzen =====
 +  mdadm --assemble --force /dev/md0 /dev/sdb1
 +  watch cat /​proc/​mdstat
 +
 +Zweite Platte wieder hinzufügen:​
 +  mdadm /dev/md0 --add /dev/sdc1
 +
 +Wieder mounten:
 +  mount /dev/md0 /mnt/md0
 ====== RAID 1 zu RAID 5 erweitern ====== ====== RAID 1 zu RAID 5 erweitern ======
 RAID 1 in RAID 5 konvertieren:​ RAID 1 in RAID 5 konvertieren:​
   mdadm --grow /dev/md0 --level=5   mdadm --grow /dev/md0 --level=5
   mdadm --detail /dev/md0   mdadm --detail /dev/md0
-Platte ​als Spare hinzufügen:​ +Platte hinzufügen:​ 
-  mdadm /dev/md0 --add /dev/vdd1+  mdadm /dev/md0 --add /dev/sdd1
   mdadm --detail /dev/md0   mdadm --detail /dev/md0
 +-> ''​Raid Level : raid5''​
 +
 +-> ''​Active Devices : 2''​
 +
 Platte aktivieren: Platte aktivieren:
   mdadm --grow /dev/md0 --raid-devices=3   mdadm --grow /dev/md0 --raid-devices=3
 +  mdadm --detail /dev/md0
 +-> ''​Active Devices : 3''​
  
   watch cat /​proc/​mdstat   watch cat /​proc/​mdstat
  
-Dateisystem erweitern:+Dateisystem erweitern: ​(( bei XFS: 
 +  xfs_growfs /dev/md0 
 +))
   resize2fs /dev/md0   resize2fs /dev/md0
  
 +Reboot/​Wiederherstellung nach Crash beschleunigen:​ (zu Nachteilen siehe: [[https://​raid.wiki.kernel.org/​index.php/​Write-intent_bitmap]])
 +  mdadm --grow --bitmap=internal /dev/md0
 +
 +====== Platte ersetzen, bevor sie ausgefallen ist ======
 +  mdadm /dev/md0 --add-spare /dev/sdb1
 +  cat /​proc/​mdstat
 +  mdadm /dev/md0 --replace /dev/sdb1
 +  watch cat /​proc/​mdstat
 +
 +[[#​wiederherstellen_beschleunigen|Beschleunigen s.o.]]
 ====== Bestehendes System auf Software RAID 1 migrieren ====== ====== Bestehendes System auf Software RAID 1 migrieren ======
 +
 +++++ Bestehendes System auf Software RAID 1 migrieren |
 ===== Voraussetzung ===== ===== Voraussetzung =====
 Laufendes Linuxsystem auf einer Festplatte, zusätzliche mindestens gleich große zweite neue Festplatte. ​ Laufendes Linuxsystem auf einer Festplatte, zusätzliche mindestens gleich große zweite neue Festplatte. ​
  
-Zum Testen können auch zwei Partitionen auf der selben ​Festplatte genutzt werden. ​+Zum Testen können auch zwei Partitionen auf derselben ​Festplatte genutzt werden. ​
  
 ===== Partitionierung ===== ===== Partitionierung =====
Zeile 114: Zeile 178:
   mdadm --manage --add /dev/md/0 /dev/sda2   mdadm --manage --add /dev/md/0 /dev/sda2
   watch cat /​proc/​mdstat   watch cat /​proc/​mdstat
 +++++
 ====== Doku ====== ====== Doku ======
-http://​www.thomas-krenn.com/​de/​wiki/​Linux_Software_RAID+  * https://​www.thomas-krenn.com/​de/​wiki/​Unterschiede_zwischen_Hardware_RAID_und_Linux_Software_RAID 
 +  * http://​www.thomas-krenn.com/​de/​wiki/​Linux_Software_RAID
  
lpi2/raid.1562074913.txt.gz · Zuletzt geändert: 2019/07/02 13:41 von ingo_wichmann