invis_server_wiki:installation:diskprep

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste Überarbeitung Beide Seiten der Revision
invis_server_wiki:installation:diskprep [2009/04/08 05:34]
flacco
invis_server_wiki:installation:diskprep [2009/06/30 13:07]
flacco
Zeile 35: Zeile 35:
 Zunächst müssen die am RAID beteiligten Festplatten identisch partitioniert werden. Am schnellsten geht das mit dem Klassiker** //​fdisk//​**. ​ Zunächst müssen die am RAID beteiligten Festplatten identisch partitioniert werden. Am schnellsten geht das mit dem Klassiker** //​fdisk//​**. ​
  
-''​Komandozeile:​ fdisk /dev/sdx''​+<​code>​Komandozeile:​ fdisk /dev/sdx</​code>​
  
 //​**fdisk**//​ ist relativ leicht zu bedienen. Die verschiedenen Funktionen verstecken sich hinter verschiedenen Buchstabentasten. So liefert die Taste "​m"​ einen Überblick über die verfügbaren Kommandos. Sie können das Programm auf zwei Wegen wieder verlassen. Dass Kommando "​w"​ (write) schreibt die vorgenommen Änderungen auf die Platte und "​q"​ verlässt das Programm ohne zu speichern. //​**fdisk**//​ ist relativ leicht zu bedienen. Die verschiedenen Funktionen verstecken sich hinter verschiedenen Buchstabentasten. So liefert die Taste "​m"​ einen Überblick über die verfügbaren Kommandos. Sie können das Programm auf zwei Wegen wieder verlassen. Dass Kommando "​w"​ (write) schreibt die vorgenommen Änderungen auf die Platte und "​q"​ verlässt das Programm ohne zu speichern.
Zeile 41: Zeile 41:
 **//​Achtung://​** //Wenn Sie gebrauchte Platten verwenden, sollten Sie zunächst eine leere DOS-Partitionstabelle (Kommando: "​o"​) anlegen und das System vorsichtshalber neu starten.// **//​Achtung://​** //Wenn Sie gebrauchte Platten verwenden, sollten Sie zunächst eine leere DOS-Partitionstabelle (Kommando: "​o"​) anlegen und das System vorsichtshalber neu starten.//
  
-Legen Sie auf jeder Platte drei Partitionen an: /dev/sdx1 125MB, /dev/sdx2 512MB (oder 1024MB) und eine erweiterte ​Partition über den gesamten noch verfügbaren Plattenplatz. In der erweiterten Partition legen Sie ein logisches Laufwerk an, welches ebenfalls den gesamten zur Verfügung stehenden Platz ausfüllt. Das Kommando zum Anlegen neuer Partitionen ist "​n"​ (new). Kontrollieren können Sie Ihre Änderungen mit dem Kommando "​p"​ (print).+Legen Sie auf jeder Platte drei Partitionen an: /dev/sdx1 125MB, /dev/sdx2 512MB (oder 1024MB) und eine letzte ​Partition ​(/​dev/​sdx3) ​über den gesamten noch verfügbaren Plattenplatz. Das Kommando zum Anlegen neuer Partitionen ist "​n"​ (new). Kontrollieren können Sie Ihre Änderungen mit dem Kommando "​p"​ (print).
  
-Jetzt müssen den einzelnen Partitionen nich die entpsrechenden Partitions-IDs (Partitionstypen) zugeordnet werden. Dies erreichen Sie jeweils über das Kommando "​t"​ (toggle). Partition 1 und erhalten den Typ "​fd",​ die Kennung für automatisch erkannte Linux RAID Partitionen und Partition 2 erhält den Typ "​82"​ für swap.+Jetzt müssen den einzelnen Partitionen nich die entpsrechenden Partitions-IDs (Partitionstypen) zugeordnet werden. Dies erreichen Sie jeweils über das Kommando "​t"​ (toggle). Partition 1 und erhalten den Typ "​fd",​ die Kennung für automatisch erkannte Linux RAID Partitionen und Partition 2 erhält den Typ "​82"​ für swap.
  
 Abschließend wird noch die jeweils erste Partition mit dem Kommando "​a"​ (active) als aktive Bootpartition markiert. Abschließend wird noch die jeweils erste Partition mit dem Kommando "​a"​ (active) als aktive Bootpartition markiert.
Zeile 55: Zeile 55:
 Ausgehend davon, dass das Partitionieren fehlerfrei funktioniert hat, verfügt jede Platte mit sdx1 und sdx5 jetzt über zwei als "Linux auto RAID" gekennzeichnete Partitionen. Um diese jetzt zu organisieren kommt das Tool **//​mdadm//​** zum Einsatz: Ausgehend davon, dass das Partitionieren fehlerfrei funktioniert hat, verfügt jede Platte mit sdx1 und sdx5 jetzt über zwei als "Linux auto RAID" gekennzeichnete Partitionen. Um diese jetzt zu organisieren kommt das Tool **//​mdadm//​** zum Einsatz:
  
-''​Kommandozeile:​ mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1''​+<​code>​Kommandozeile:​ mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1</​code>​
  
 und für den zweiten Verbund: und für den zweiten Verbund:
  
-''​Kommandozeile:​ mdadm --create /dev/md1 --level=1 --raid-devices=2 /dev/sda5 /dev/sdb5''​+<​code>​Kommandozeile:​ mdadm --create /dev/md1 --level=1 --raid-devices=2 /dev/sda3 /dev/sdb3</​code>​
  
 Damit werden die beiden RAID1-Verbünde /dev/md0 und /dev/md1 angelegt. Die gezeigten Befehlszeilen sehe ich als weitestgehend selbsterklärend an. Die Option "​create"​ erwartet die Angabe des md-Devices (md = multiple disk) - die Zählung beginnt bei 0. "​level"​ definiert den RAID-Level und "​raid-devices"​ erwartet als Parameter die Anzahl der beteiligten Partitionen,​ die abschließend noch genannt werden müssen. RAID-Verbünde lassen sich (etwa wenn es gerade schnell gehen muss und nur eine Platte zur Hand ist) auch "​untermotoriesiert"​ zum Leben erwecken, dabei wird einfach anstelle einer beteiligten Partition das Schlüsselwort "​missing"​ angegeben. Vergessen Sie aber nicht den RAID-Verbund später zu komplettieren,​ sonst war der Arbeitsaufwand für die Katz. Damit sind die Möglichkeiten des Tools //​**mdadm**//​ bei weitem nicht erschöpft, wie ein Blick in dessen [[http://​man-wiki.net/​index.php/​8:​mdadm|manpage]] schnell verdeutlicht. Damit werden die beiden RAID1-Verbünde /dev/md0 und /dev/md1 angelegt. Die gezeigten Befehlszeilen sehe ich als weitestgehend selbsterklärend an. Die Option "​create"​ erwartet die Angabe des md-Devices (md = multiple disk) - die Zählung beginnt bei 0. "​level"​ definiert den RAID-Level und "​raid-devices"​ erwartet als Parameter die Anzahl der beteiligten Partitionen,​ die abschließend noch genannt werden müssen. RAID-Verbünde lassen sich (etwa wenn es gerade schnell gehen muss und nur eine Platte zur Hand ist) auch "​untermotoriesiert"​ zum Leben erwecken, dabei wird einfach anstelle einer beteiligten Partition das Schlüsselwort "​missing"​ angegeben. Vergessen Sie aber nicht den RAID-Verbund später zu komplettieren,​ sonst war der Arbeitsaufwand für die Katz. Damit sind die Möglichkeiten des Tools //​**mdadm**//​ bei weitem nicht erschöpft, wie ein Blick in dessen [[http://​man-wiki.net/​index.php/​8:​mdadm|manpage]] schnell verdeutlicht.
Zeile 65: Zeile 65:
 Der Linux-Kernel in dessen Hoheitsbereich die Verwaltung der Software-RAID-Verbünde liegt, beginnt jetzt unmittelbar diese zu synchronisieren. Beim kleinen /dev/md0 geht dies so schnell, dass es sich kaum beobachten lässt. Da /dev/md1 bei aktuellen Platten und der zugrunde liegenden Partitionierung vermutlich um die 500GB (oder größer) sein wird sieht hier die Sache etwas anders aus. Hier kann die Synchronisation durchaus eine halbe Stunde oder länger dauern. Beobachten lässt sich dies mit: Der Linux-Kernel in dessen Hoheitsbereich die Verwaltung der Software-RAID-Verbünde liegt, beginnt jetzt unmittelbar diese zu synchronisieren. Beim kleinen /dev/md0 geht dies so schnell, dass es sich kaum beobachten lässt. Da /dev/md1 bei aktuellen Platten und der zugrunde liegenden Partitionierung vermutlich um die 500GB (oder größer) sein wird sieht hier die Sache etwas anders aus. Hier kann die Synchronisation durchaus eine halbe Stunde oder länger dauern. Beobachten lässt sich dies mit:
  
-''​Kommandozeile:​ watch cat /​proc/​mdstat''​+<​code>​Kommandozeile:​ watch cat /​proc/​mdstat</​code>​
  
 Wird der Rechner vor beendeter Synchronisation neu gestartet, beginnt die Prozedur nach dem Neustart einfach von vorne. Noch während der Synchronisation können bereits Daten auf das RAID geschrieben werden, wobei ich dies bei der Erstsynchronisation üblicherweise vermeide. Wird der Rechner vor beendeter Synchronisation neu gestartet, beginnt die Prozedur nach dem Neustart einfach von vorne. Noch während der Synchronisation können bereits Daten auf das RAID geschrieben werden, wobei ich dies bei der Erstsynchronisation üblicherweise vermeide.
Zeile 73: Zeile 73:
 Formatieren Sie diese Platte genau so wie auch die beiden aktiven Platten. Die Erstellung eines RAID1 Verbundes mit Hotspare-"​Partition"​ sieht dann so aus: Formatieren Sie diese Platte genau so wie auch die beiden aktiven Platten. Die Erstellung eines RAID1 Verbundes mit Hotspare-"​Partition"​ sieht dann so aus:
  
-''​Kommandozeile:​ mdadm ------create /​dev/​md1 ​----level=1 ​----raid-devices=2 /dev/sda5 /dev/sdb5 ----spare-device=1 /dev/sdc5''​+<​code>​Kommandozeile:​ mdadm --create /dev/md1 --level=1 --raid-devices=2 /dev/sda3 /dev/sdb3 --spare-device=1 /dev/sdc3</​code>​
  
 Dies müssen Sie selbstverständlich für alle RAID-Verbünde vornehmen. Dies müssen Sie selbstverständlich für alle RAID-Verbünde vornehmen.
  
 ===== Konfiguration des Bootmanagers ===== ===== Konfiguration des Bootmanagers =====
 +
 +Grundsätzlich kann der verbreitete Bootmanager "​Grub"​ nicht auf Software-RAID Devices zugreifen. Trotzdem ist es möglich mit einem RAID-Verbund für das /boot Verzeichnis zu arbeiten und daraus auch Vorteile zu ziehen. Voraussetzung dafür ist, dass es sich definitiv um einen Level 1 Verbund handelt.
 +
 +Da Level 1 einer einfachen Spiegelung entspricht, ist gewährleitset,​ dass auf allen beteiligten Partitionen der gesamte Datenbestand des RAID-Verbundes vorhanden ist. Aus Sicht des Bootmanagers sind es dann einfach mehrere /boot Partitionen mit gleichem Inhalt, die er als reguläre Partition und nicht als RAID-Device anspricht.
 +
 +Daraus lässt sich für Grub ein Fallback-Mechanismus realisieren. Sprich: Ist die /​boot-Partition auf Platte 1 nicht ansprechbar,​ nimm die von Platte 2. Erst, wenn der Linux-Kernel geladen ist wird aus den einzelnen Partitionen ein RAID-Verbund,​ der etwa im Falle eines Kernel-Updates dafür sorgt, dass das neue Kernel-Image auf allen beteiligten Partitionen landet.
 +
 +Voraussetzung dafür ist, dass alle beteiligten Partitionen für Grub auch als Start-Partitionen nutzbar sind.
 +
 +Dafür, dass alle /​boot-Partitionen der beteiligten Platten als "​active"​ gekennzeichnet sind wurde bereits beim Partitionieren Sorge getragen. Jetzt muss noch Grub in den Masterbootrecord aller beteiligten Platten installiert werden. Dies kann mit **//​grub//​** selbst erledigt werden.
 +
 +<​code>​Kommandozeile:​ grub
 +grub> root (hd0,0)
 +grub> setup (hd0)
 +grub> root (hd1,0)
 +grub> setup (hd1)
 +grub> quit </​code>​
 +
 +
  
 to be continued to be continued
  • invis_server_wiki/installation/diskprep.txt
  • Zuletzt geändert: 2018/05/18 13:00
  • von flacco