Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


lpi2:raid

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
lpi2:raid [2024/08/16 09:34] – [Ausfall einer Platte simulieren] ingo_wichmannlpi2:raid [2026/05/19 08:48] (aktuell) – [RAID 1 aus einzelner Platte zusammensetzen] ingo_wichmann
Zeile 1: Zeile 1:
 ====== 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 drei. In 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]]
  
 Vorsichtshalber betroffene Blockdevices wipen: Vorsichtshalber betroffene Blockdevices wipen:
-  wipefs -af /dev/sda4+  wipefs -af /dev/sdb
  
-==== RAID Partition taggen ==== +==== RAID Partitionen taggen ==== 
-  parted /dev/sda set 4 raid on+Bevorzugt mit ''gdisk'', hier vereinfacht mit ''parted'': 
 +  parted /dev/sdb set 1 raid on 
 +  parted /dev/sdc set 1 raid on 
 +  …
  
-  fdisk -l /dev/sda | grep -i raid +  fdisk -l /dev/sd{b,c} | grep -i raid 
-gibt aus: +-> gibt aus: 
-<file> +<file txt GPT Partitionstabelle> 
-/dev/sda4        63500288   126414847    31457280   fd  Linux raid autodetect +/dev/sdb1   2048 3907028991 3907026944  1.8T Linux RAID 
-</file> +… 
-bzw. +/dev/sdc1   2048 3907028991 3907026944  1.8T Linux RAID
-<file> +
-/dev/sda4     851968  30212095 29360128    14G Linux RAID+
 </file> </file>
  
Zeile 30: Zeile 31:
 Autoerkennung auf ''none'' stellen.  Autoerkennung auf ''none'' stellen. 
  
-=== CentOS (8) ====+=== CentOS (ab 8) ====
   dnf install mdadm   dnf install mdadm
 ===== RAID 1 anlegen ===== ===== RAID 1 anlegen =====
-((falls die Blockdevices zuvor schon verwendet wurden sicherheitshalber: +((falls die Blockdevices zuvor schon verwendet wurden, sicherheitshalber: 
-  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 --assume-clean /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
   mdadm --detail /dev/md0   mdadm --detail /dev/md0
-  mdadm --query --examine /dev/sda2 +  mdadm --query --examine /dev/sdb1 
-Wiederherstellen: +===== Wiederherstellen ===== 
-  mdadm /dev/md0 --add /dev/sda2 +  mdadm /dev/md0 --add /dev/sdb1 
-  watch cat /proc/mdstat +  cat /proc/mdstat
-Resync läuft mit angezogener Handbremse, um dem normalen I/O nicht im Weg zu sein. Beschleunigen mit:+
  
-  # Mindestens mit 100 MB/s syncen, ohne Rücksicht +==== Wiederherstellen beschleunigen ==== 
-  echo 100000 >/proc/sys/dev/raid/speed_limit_min +Resync läuft mit angezogener Handbremse, um dem normalen I/O nicht im Weg zu sein. Aktuelle Werte auslesen: 
-  # Niemals mit mehr als 200 MB/s syncen +  sysctl dev.raid.speed_limit_min 
-  echo 200000 >/proc/sys/dev/raid/speed_limit_max+  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
-  mdadm --detail /dev/md0 
-  mdadm --query --examine /dev/sda2 
  
 +====== 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
 +  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:
Zeile 69: Zeile 92:
   mdadm --detail /dev/md0   mdadm --detail /dev/md0
 Platte 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 ====== ====== Platte ersetzen, bevor sie ausgefallen ist ======
-  mdadm /dev/md0 --add-spare /dev/sda3+  mdadm /dev/md0 --add-spare /dev/sdb1
   cat /proc/mdstat   cat /proc/mdstat
-  mdadm /dev/md0 --replace /dev/sda2+  mdadm /dev/md0 --replace /dev/sdb1
   watch cat /proc/mdstat   watch cat /proc/mdstat
  
-Resync läuft mit angezogener Handbremse, um dem normalen I/O nicht im Weg zu sein. Beschleunigen mit: +[[#wiederherstellen_beschleunigen|Beschleunigen s.o.]]
- +
-  # Mindestens mit 100 MB/s syncen, ohne Rücksicht +
-  echo 100000 >/proc/sys/dev/raid/speed_limit_min +
-  # Niemals mit mehr als 200 MB/s syncen +
-  echo 200000 >/proc/sys/dev/raid/speed_limit_max+
 ====== 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 147: 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 ======
   * https://www.thomas-krenn.com/de/wiki/Unterschiede_zwischen_Hardware_RAID_und_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   * http://www.thomas-krenn.com/de/wiki/Linux_Software_RAID
  
lpi2/raid.1723800843.txt.gz · Zuletzt geändert: 2024/08/16 09:34 von ingo_wichmann