[[PageOutline]] = RAID = Usere LtspServer verwenden RAID1, vorrangig zur Erhöhung der Datensicherheit und in zweiter Linie zur Beschleunigung der Lesevorgänge. Die Administration der Software-RAID geschieht über den Befehl `mdadm`. Im normalen Betrieb ist das RAID sehr pflegeleicht, im Fehlerfall sind jedoch einige besondere Vorgehensweisen einzuhalten. Wird das RAID richtig verwendet, ist der Austausch einer Platte im laufenden Betrieb des Servers möglich. == Partitionen == -- folgt -- == GRUB == Das RAID geht über die Partitionen sda1 und sdb1. Deren Inhalt wird nach dem Austausch einer Platte wiederhergestellt. GRUB steht aber im MBR der devices (sda und sdb). Dieser Block wird daher auch nicht vom RAID wiederhergestellt, wenn man eine Platte austauscht. Heisst: Nachdem man eine Platte ausgetauscht und das RAID neu gesynct hat, muss man GRUB neu in die MBRs installieren: {{{ sudo grub-install /dev/sda sudo grub-install /dev/sdb }}} == Platte aus Raid1 tauschen == 1. alte Platte als fehlerhaft setzen (faulty). {{{ mdadm --manage /dev/md127 --fail /dev/sdb1 }}} Ergebnis kann mit {{{ cat /proc/mdstat mdadm --detail /dev/md127 }}} angezeigt werden. 2. alte Platte aus Raid entfernen {{{ mdadm --manage /dev/md127 --remove /dev/sdb1 }}} 3. alte Platte aus Schacht entfernen 4. neue Platte partitionieren {{{ sfdisk -d /dev/sda | sfdisk -f /dev/sdb }}} schreibt die Partitionierungsdaten der ersten Platte auf die zweite (force nötig, sonst kommt eine Fehlermeldung). 5. neue Platte ins Raid aufnehmen Erstmal testen, als was die Platte erkannt wurde (siehe Hinweis): {{{ tail -f /var/log/syslog }}} Platte ins Raid aufnehmen (kommt eine Fehlermeldung, die Partition sei zu klein, einfach Platte nochmals ziehen) {{{ mdadm --manage /dev/md127 --add /dev/sdb1 }}} **Hinweis:** Es kann vorkommen, dass die Platte nicht als /dev/sdb erkannt wird und z.B. als /dev/sdg eingebunden wird. Das ist nicht weiter tragisch, denn beim nächsten booten sortiert der Kernel eh wieder neu, und es kommt ausschließlich auf die Rais-UUID der Platter an, anhand derer wird sie ins Raid eingebunden, man könnte die Plattan folglich auch einfach vertauschen, das macht garnichts aus.[[BR]][[BR]] Der mdadm-Daemon überträgt nun die Daten von Platte 1 nach Platte 2, der Vorgang kann beobachtet werden: {{{ cat /proc/mdstat mdadm --detail /dev/md127 }}} == Raid mit nur einer Platte starten == Wenn sich eine Platte aus einem Raid verabschiedet hat, so kann der Inhalt der anderen sehr leicht mit dem Super-Boot-Stick (Rüdigers Schrank) gebootet werden. Leider fragt Grub beim Starten, ob das Raid im degraded mode gestartet werden soll, danach ist der LVM nicht mehr active und das system startet nicht. Die Funktion des Raid kann durch ersetzen der defekten Platte wie oben beschrieben wiederhergestellt werden. Weiterhin ist es möglich, das Raid zu stoppen und neu zusammenzubauen. (noch ungetestet) == Eine Sicherungsplatte aus einem Raid 1 an einem anderen Rechner benutzen == * Die Platte z.B. per USB-SATA-Adapter an den Rechner anschließen, nennen wir sie /dev/sdb * `sfdisk /dev/sdb` offenbart ihre Partitionierung, nehmen wir an, das Raid liegt auf /deb/sdb1 * `mdadm --examine /dev/sdb1` gibt die Raid-Daten des Arrays aus * `mdadm --assemble --scan --run` fügt das Raid zusammen, ohne dass alle Platten da wären und weist es einem Eintrag in `/dev/md/...` zu. Befindet sich auf dem Raid ein LVM, so wird dieses anschließend erkannt. Eventuell muss das LVM volume noch aktiviert werden: {{{ lvchange -a y /VOLUMEGROUP/VOLUMENAME }}} Wurde das LVM in ProxMox als virtuelle HDD verwendet, so schließt man es mit {{{ kpartx -av /dev/VOLUMEGROUP/VOLUMENAME }}} auf, es wird nun zusätzlich das LVM in der virtuellen Platte erkannt. Möglicherweise muss auch dieses erst aktiviert werden: {{{ lvchange -a y /VOLUMEGROUP/VOLUMENAME }}} Nun kann es irgendwohin gemountet werden (am besten read-only). ---- [[CC_BY_NC_SA(J. Baumgärtner und Dr. R. Kupper)]]