Dennis_B: SCSI verbund aus vier Platten und Web-Fileserver unter Debian

Hey,

also in diesem Thread wurde nun ein für allemal für mich Persönlich geklärt ob Windows oder Linux, ich habe viel durch euch neues erfahren und bleibe bei Debian.

Der Satz "du hast Windows auch nicht in ein paar Wochen gelernt" hat es mir besonders angetan denn es entspricht der Wahrheit. Ich habe an diesem Abend tief in mich hinneingehorcht und etwas über mich selber erfahren, frage ist entstanden weil ich wohl viel Angst vor Debian habe und der Meinung war "du kannst Windows warum nicht Linux?".Die Einstellung meinerseits ist falsch, ich muss noch viel lernen und das werde ich auch tun.
<<

So nun zu meiner Frage, ich soll für einen bekannten einen Server mit Debian aufsetzen. Er möchte gerne in sein Netzwerk einen Web- sowie einen Fileserver laufen haben.

Soweit kein ernstes Problem doch er hat mir da einen kleinen echten "Server" hingestellt mit 4 SCSI (RAID?) Festplatten. Ich habe absolut nicht viel mit Hardware zutun und kenne SCSI fast nur vom Namen her (und ein wenig Lesen aber ich verstehe das nicht so ganz).

Es soll -wenn möglich- das Debian auf den beiden ersten Platten liegt, die anderen beiden HD's (3&4) sollen die ersten beiden Spiegeln.
Hört sich alles gut an aber wie bringt man den Linux bei zu spiegeln?
Das ist ein völlig neuer Bereich für mich, macht das der Rechner (Hardware) selbst? Wenn ja wie sagt man das dem Rechner?
Ich jemand versteht meine Problematik... wie man Platten Partitioniert usw. habe ich (hier durch euch) schon gelernt aber das ist mir eine Nr. zu hoch und würde mich sehr über eine Aufklärung der Thematik freuen...

lg

Dennis

  1. Hallo Dennis,

    Vorweg, allgemeine Terminologie:

    RAID: Redundant Array of Independent Discs: Zusammenschalten von        unabhängigen Festplatten, um eine "virtuelle Festplatte" zu erzeugen,        die bessere Eigenschaften hat, als eine einzelne Festplatte alleine.        Zu den besseren möglichen Eigenschaften zählen: Geschwindigkeit,        Zugriffszeit,Redundanz. (Nicht alles ist auf einmal möglich!)

    RAID-0: Zwei oder mehr Festplatten werden zu einer großen Festplatte          zusammengeschlossen, die insgesamt die doppelte (oder mehrfache)          Kapazität einer einzelnen Festplatte hat. Das Ausfallrisiko erhöht          sich dramatisch, weil alle Daten weg sind, wenn auch nur eine          einzige Festplatte ausfällt.

    Die Daten werden für eine höhere Geschwindigkeit (man kann von          beiden Platten gleichzeitig lesen und schreiben) sektorweise          alternierend auf beide Festplatten verteilt.

    Beispiel für ein RAID-0: (Größen sind Beispielangaben)

    Platte1 (1 TB)     Platte2 (1 TB)        +----------+       +----------+        | Sektor 1 |       | Sektor 2 |        | Sektor 3 |       | Sektor 4 |        | Sektor 5 |       | Sektor 6 |        | Sektor 7 |       | Sektor 8 |        | ...      |       | ...      |        +----------+       +----------+

    Virtuelle RAID-0-Platte: (2 TB)         +--------------------------+         | Sektor 1                 |         | Sektor 2                 |         | Sektor 3                 |         | Sektor 4                 |         | Sektor 5                 |         | Sektor 6                 |         | Sektor 7                 |         | Sektor 8                 |         | ...                      |         +--------------------------+

    RAID-1: Zwei oder mehr Festplatten enthalten Kopien der gleichen Daten,          um die Redundanz zu erhöhen. Wenn eine Ausfällt, sind die Daten          somit noch sicher. Allerdings geht in jedem Fall die Schreib-          geschwindigkeit (weil auf beide Platten geschrieben werden muss)          und je nach Konfiguration auch die Lesegeschwindigkeit (weil von          beiden Platten das gleiche gelesen werden muss, um die Daten zu          verifizieren, wird aber nicht immer gemacht) deutlich nach unten          im Vergleich zu einer einzelnen Platte.

    Beispiel für ein RAID-1:

    Platte1 (1 TB)     Platte2 (1 TB)        +----------+       +----------+        | Sektor 1 |       | Sektor 1 |        | Sektor 2 |       | Sektor 2 |        | Sektor 3 |       | Sektor 3 |        | Sektor 4 |       | Sektor 4 |        | ...      |       | ...      |        +----------+       +----------+

    Virtuelle RAID-1-Platte: (1 TB)         +--------------------------+         | Sektor 1                 |         | Sektor 2                 |         | Sektor 3                 |         | Sektor 4                 |         | ...                      |         +--------------------------+

    RAID-10: 4 Platten werden so zusammengeschaltet, dass jeweils 2 davon           RAID-1-Verbände bilden und diese RAID-1-Verbände dann als           Grundlage für einen darüberliegenden RAID-0-Verband dient.

    Beispiel:

    Platte 1 (1 TB)   Platte 2 (1 TB)     \ Virtuelle RAID1-Platte (1 TB)       +----------+      +----------+         |    +---------------+       | Sektor 1 |      | Sektor 1 |         |    | Sektor 1      |       | Sektor 3 |      | Sektor 3 |         |    | Sektor 3      |       | ...      |      | ...      |         |    | ...           |       +----------+      +----------+        /     +---------------+

    Platte 3 (1 TB)   Platte 4 (1 TB)     \ Virtuelle RAID1-Platte (1 TB)       +----------+      +----------+         |    +---------------+       | Sektor 2 |      | Sektor 2 |         |    | Sektor 2      |       | Sektor 4 |      | Sektor 4 |         |    | Sektor 4      |       | ...      |      | ...      |         |    | ...           |       +----------+      +----------+        /     +---------------+

    ____________________/

    Virtuelle RAID0-Platte (2 TB)                                             +---------------------+                                             | Sektor 1            |                                             | Sektor 2            |                                             | Sektor 3            |                                             | Sektor 4            |                                             | ...                 |                                             +---------------------+

    Wenn nun eine Platte ausfällt, sagen wir Platte 2, dann kann die          ausgetauscht werden und währenddessen hat Platte 1 (auf Grund          des RAID-1-Verbundes) noch die nötigen Daten und es funktioniert          weiterhin. Wenn man Platte 2 austauscht, werden die Daten von          Platte1 1 wieder herüberkopiert und dann hat man den gewünschten          Zustand wiederhergestellt.

    Solange Platte 2 ausgefallen ist, kann aber noch zusätzlich          Platte 3 oder Platte 4 ausfallen (nicht jedoch Platte 1!), ohne,          dass es zu Datenverlust kommt, da sie beide in einem separaten          RAID-1-Array sind.

    WICHTIG: (!!!!!)

    Auf KEINEN Fall ein RAID-1 über zwei RAID-0s setzen! Das mag zwar          äquivalent erscheinen auf Grund des oberen Diagramms, ist es aber          nicht. Wenn bei der Konstellation RAID-1 über RAID-0 eine Platte          ausfallen würde, dann hieße das, dass der gesamte zu Grunde          liegende RAID-0-Array "defekt" wäre und sobald man die Platte          ausgetauscht hat und den unteren RAID-0-Array wieder angelegt hat,          müssen alle Daten von den anderen beiden Platten komplett neu          herübergespiegelt werden (weil es ja keine Möglichkeit gibt          festzustellen, dass die Daten auf der einen Platte noch OK waren!),          was (a) länger dauert, (b) auf Grund höherer Festplattenaktivität          das Ausfallrisiko während des Wiederherstellens stark steigert          und (c) hängt dann alles an einem einzigen RAID-0 während eine          Platte ausgefallen ist, was man ja eher nicht haben will wg.          Datensicherheit...

    Soweit kein ernstes Problem doch er hat mir da einen kleinen echten "Server" hingestellt mit 4 SCSI (RAID?) Festplatten. Ich habe absolut nicht viel mit Hardware zutun und kenne SCSI fast nur vom Namen her (und ein wenig Lesen aber ich verstehe das nicht so ganz).

    Naja, ob IDE, SCSI, SATA oder SAS ist erst einmal relativ egal, solange Linux Dir Deine Hardware unterstützt (was bei Festplattencontrollern eigentlich immer der Fall ist, das letzte Mal, als ich mal einen erwischt hatte, der nicht lief, ist schon 15 Jahre her), einen großen Unterschied macht das softwareseitig nicht - allerdings hast Du natürlich die jeweiligen Vor- und Nachteile von der Hardwareseite aus.

    Es soll -wenn möglich- das Debian auf den beiden ersten Platten liegt,

    Definiere "liegt"? Mehrere Partitionen? Oder eine Partition, die beide Platten auf einmal "transparent" überdecken soll? Denn:

    die anderen beiden HD's (3&4) sollen die ersten beiden Spiegeln.

    Es gibt zwei mögliche Konfigurationen:

    * RAID-1 zwischen jeweils 2 Platten und dann die 2 "virtuellen Platten"    die aus dem RAID entstehen entsprechend partitionieren.

    * RAID-10, was im Endeffekt so läuft, dass je 2 Platten zu einem RAID-1-    Verbund zusammengefügt werden und die beiden "virtuellen Platten" zu    einem großen RAID-0-Verbund zusammengefügt werden, womit Du dann eine    große "virtuelle Platte" zur Verfügung hast, die doppelt so viel    Kapazität hat, wie jede einzelne. (Das haben wir z.B. in einem der    SELFHTML-Server, wo das Wiki und die Datenbank drauf läuft.)

    ACHTUNG: NICHT UMGEKEHRT MACHEN, ALSO RAID-01 - SIEHE OBEN!

    Hört sich alles gut an aber wie bringt man den Linux bei zu spiegeln?

    Da gibt's zwei Möglichkeiten:

    * Wenn Du sagst, dass das ein "richtiger" Server ist, dann kann der    Controller evtl. schon ein Hardware-RAID. Dann kannst Du einfach beim    Booten direkt nach dem BIOS bevor das Betriebssystem gestartet wird    irgend eine Tastenkombination drücken und im Controller die    entsprechenden RAID-Konfiguration festlegen. Wenn Du dann 2x RAID-1    machst sieht Linux zwei Festplatten (die nicht "echt" sind) die jeweils    gespiegelte RAID-1-Verbünde sind, wenn Du RAID-10 machst, dann sieht    Linux hinterher eine große Platte. (Achtung: Nicht alle Controller können    multiple RAIDs, nicht alle Controller können RAID-10.)

    Vorteil von der Lösung: Du kannst die Platten einfach austauschen wenn    eine Defekt ist und der Software ist das relativ egal.

    Nachteile: Controller muss das können, in seltenen Fällen kann man die    Daten nur nutzen, wenn man den gleichen Controllertyp verwendet, weil    der das nicht einfach "naiv" spiegelt sondern Zusatzdaten mit drauf-    speichert, welche es dann nicht erlauben, so ohne weiteres auf die    Daten zuzugreifen, wenn man die Platten mal in einen anderen Rechner    einbaut.

    Manche Controller erlauben es nicht, den SMART-Status von einzelnen    Platten abzufragen, wodurch sich die Vorhersage, wann die nächste Platte    wohl ausfällt, erschwert.

    * Software-RAID-Lösung unter Linux. Linux kann Software-RAID, Stichwort    'mdadm' / 'md'. Damit kann Linux von selbst diese Konfiguration der    Hardware nachbilden - sieht dann aber sowohl die Platten, wo das RAID    drauf ist als auch zusätzlich die virtuellen Platten, die der Kernel    emuliert.

    Wie konkret Debian Software-RAID unterstützt, weiß ich nicht.

    Vorteile: Controller ist egal, geht mit so ziemlich jeder Art von    Platte, auch Mischungen sind im Prinzip möglich. (Es wäre z.B. denkbar,    3 Platten intern und eine über USB anzuschließen. Wäre aber absolut    nicht sinnvoll, das Beispiel ist nur zur Illustration!)

    Linux-RAID-Format ist dokumentiert und "standardisiert", d.h. Du kommst    in jedem Fall wieder an die Daten, wenn Du die Platten in einen anderen    Rechner baust, vorausgesetzt, Du weißt wie.

    Nachteile: Boot-Konfiguration hinzukriegen ist bestenfalls haarig meiner    Erfahrung nach, schlimmstenfalls ein Albtraum.

    Wenn Platte ausfällt muss man Softwaremäßig an Linux was machen, damit    man die alte Platte austauschen kann, ohne, dass man dabei Mist baut.

    Ich jemand versteht meine Problematik... wie man Platten Partitioniert usw. habe ich (hier durch euch) schon gelernt aber das ist mir eine Nr. zu hoch und würde mich sehr über eine Aufklärung der Thematik freuen...

    Nix für ungut: Bist Du sicher, dass Du die richtige Person bist, diese Kiste einzurichten? Wenn jemand irgendwas gespiegelt haben will, dann legt er ja Wert auf Datensicherheit. Es braucht aber in meinen Augen nicht nur das theoretische Wissen, sondern auch Erfahrung, wie man gerade mit sowas umgeht, weil man da enorm viel falsch machen kann.

    Gut, ok, ein Hardware-RAID aufzusetzen halte ich durchaus noch für realistisch für jemanden, der sich in das Thema einarbeitet, aber Software-RAID ist meiner Erfahrung nach zu haarig, als dass man das ohne die nötige Erfahrung tun sollte.

    Viele Grüße, Christian

    1. Tach,

      wo war doch gleich der Flattr-Button?

      mfg
      Woodfighter

    2. Hallo Christian,

      ich danke dir vielmals für deine Mühe und Aufklärung, Hut ab!
      Werde mir deinen Thread ausdrucken und als Hilfe und Nachschlage"werk" neben den Server legen!
      Hat mir verdammt viel geholfen!

      Danke!

      Dennis