mdadm: RAID1 = Festplatte + RAID0 ?

Probleme mit Samba, NFS, FTP und Co.
Antworten
buhtz
Beiträge: 1099
Registriert: 04.12.2015 17:54:49
Kontaktdaten:

mdadm: RAID1 = Festplatte + RAID0 ?

Beitrag von buhtz » 06.04.2021 11:51:56

Da ich es gewohnt bin, dass es nicht so läuft, wie ich mir das vorgestellt habe, frag ich vorher mal nach.
Geht das so? 8O

Ich habe physisch 3 Festplatte: 8TB und 2x 4TB.

Meine Idee: Aus den beiden 4TB mach ich ein RAID0 - habe also im Ergebnis 8TB. Dieses RAID0 kombiniere ich mit der 8TB Platte zu einem RAID1.

Geht? Ist das ungewöhnlich? Habe diese Platten einfach gerade so übrig.
Debian 11 & 12; Desktop-PC, Headless-NAS, Raspberry Pi 4
Teil des Upstream Betreuer Teams von Back In Time (Debianbackintime)

Benutzeravatar
Meillo
Moderator
Beiträge: 8782
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: mdadm: RAID1 = Festplatte + RAID0 ?

Beitrag von Meillo » 06.04.2021 12:34:05

Wenn du auf der 8TB-Platte zwei 4TB-Partitionen anlegst, kannst du ein ganz normales Raid-10 einrichten. Dann bist du den Sonderfall los.

Erfahrungen zu solchen Setups habe ich nicht.
Use ed once in a while!

Benutzeravatar
heisenberg
Beiträge: 3473
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: mdadm: RAID1 = Festplatte + RAID0 ?

Beitrag von heisenberg » 06.04.2021 12:45:35

Meillo hat geschrieben: ↑ zum Beitrag ↑
06.04.2021 12:34:05
Wenn du auf der 8TB-Platte zwei 4TB-Partitionen anlegst, kannst du ein ganz normales Raid-10 einrichten. Dann bist du den Sonderfall los.
RAID 10 braucht mindestens 4 Platten und weiterhin eine gerade Anzahl von Platten. (Von der Vorstellung her ist ein RAID-10 ein RAID-0 aus mindestes 2 bis vielen RAID-1 Paaren. Deswegen die Mindestzahlen bzw. Notwendigkeit einer geraden Zahl)

@Meillo:
Oh Mann. Ich hab' ja voll an Deiner Antwort vorbei gelesen. Sorry.

---

Also mir wäre das zu kompliziert ein 2 stufiges RAID einzurichten bzw. zu betreiben(umso komplexer umso fehleranfälliger). Ich könnte mir vorstellen dass das bei Störungen schwieriger zu handhaben ist. (Backup!) Aber machen kann man das schon. Ich denke auch die Performance der 2 x 4 TB Platten wird halt dann bei Schreibvorgängen gebremst auf das Niveau der 8 TB Platte.

Wenn es Dir nicht so auf Performance ankommt, dann mach doch lieber ein ZFS-RAIDZ draus. Das kommt mit unterschiedlichen Plattengrössen zurecht, auch wenn das dabei auch zu Performanceeinbussen kommt. Es hat zum einen den Vorteil der Checksummen und zum anderen, dass das Setup einfacher ist.

Die weitere Frage wäre noch, ob das RAID direkt das Root-FS ist, oder nur ein Daten-Dateisystem. Meine Empfehlung gilt nur für letzteres. Bei ersterem würde ich zu Meillos Empfehlung greifen.
... unterhält sich hier gelegentlich mangels wunschgemäßer Gesprächspartner mal mit sich selbst.

buhtz
Beiträge: 1099
Registriert: 04.12.2015 17:54:49
Kontaktdaten:

Re: mdadm: RAID1 = Festplatte + RAID0 ?

Beitrag von buhtz » 06.04.2021 21:30:40

Es ist nur ein Datensystem ohne OS-Sachen.
Die 8TB sind bereits belegt. Daran kann ich nicht viel ändern oder umpartitionieren.

Hätte ich zusätzliche Platten, um die 8TB temporär woanders hinzu schieben, bräuchte ich so ein exotisches Setup nicht. :D
Debian 11 & 12; Desktop-PC, Headless-NAS, Raspberry Pi 4
Teil des Upstream Betreuer Teams von Back In Time (Debianbackintime)

Benutzeravatar
smutbert
Moderator
Beiträge: 8316
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: mdadm: RAID1 = Festplatte + RAID0 ?

Beitrag von smutbert » 07.04.2021 00:24:20

Wenn die Daten wichtig sind, benötigst du ja, unabhängig davon ob es sich nun um ein raid handelt oder nicht, ein Backup.
Erstens einmal grundsätzlich und zweitens bei größeren Umbau-/Kopier-/Verschiebeaktionen natürlich erst recht. Und da ist es schon überlegenswert raid und das Dateisystem wie gewünscht anzulegen und hinterher die Daten aus dem Backup oder einer anderen Kopie wieder einzuspielen.


Es sollte allerdings auch ohne Meillos bestechender Idee ohne Probleme funktionieren:
  1. auf den beiden 4 TB je eine große Partition erstellen (nicht unbedingt notwendig, man könnte auch die Festplatten ohne Partitionierung verwenden, aber eine Partitionierung beugt Mißverständnissen beim Einsatz anderer Betriebssysteme vor, die sonst glauben könnten die beiden Platten würden gar nicht verwendet)
  2. das raid0 (oder jbod) aus den zwei 4 TB Partitionen (bzw. Platten) einrichten
  3. ein raid1 anlegen, allerdings nur mit dem vorher angelegten raid0 als Gerät, also als degraded raid1
  4. die Daten von der 8 TB Platte auf das raid1 kopieren
  5. die 8 TB Platte mit einer großen Partition partitionieren (es gilt dasselbe wie bei 1. – das Löschen der vorhandene(n) Partition(en)/Signaturen würde also eigentlich genügen)
  6. die 8 TB Partition (bzw. Partition) dem raid1 hinzufügen um es zu vervollständigen
  7. das raid1 synchronisieren

Mit den in btrfs eingebauten raid-Modi sollte das ganze übrigens auch klappen. Bei btrfs hat raid1 die Bedeutung, dass nicht auf jedem Gerät eine Kopie der Daten abgelegt wird sondern, dass 2 Kopien auf unterschiedlichen Geräten gespeichert werden.
Da müsstest du also
  1. ein btrfs ohne raid anlegen, das sich über die beiden 4 TB Platten/Partitionen erstreckt (Partitionen wären aus denselben Gründen wie oben von Vorteil)
  2. die Daten darauf kopieren
  3. die 8 TB Platte vorbereiten (die Signaturen vorhandener Partitionen und Dateisysteme löschen und wieder eine Partition anlegen)
  4. die 8 TB Platte/Partition dem btrfs hinzufügen
  5. einen (re)balance in den raid1-Modus durchführen
Der Vorteil von btrfs ist, dass das in das Dateisystem integrierte raid meist effizienter funktioniert, der Nachteil ist in dem Fall, dass es btrfs passieren kann, dass es die Daten so ungünstig aufteilt, dass es keine Daten mehr redundant speichern kann. Dann erscheint das Dateisystem als voll obwohl eigentlich noch Speicher frei wäre – Abhilfe schafft dann ein (re)balance.

Normalerweise würde ich eher die btrfs-Variante weiterempfehlen, allerdings erwecken deine Schilderungen den Eindruck als würdest du tatsächlich etwa 8 TB an Daten gespeichert haben und btrfs mag keine allzu vollen Dateisysteme. Da wärst du vielleicht mit einem anderen Dateisystem besser beraten.


lvm böte, wenn ich mich nicht irre auch die Möglichkeit ein logische Volumes mit Redundanz einzurichten, da sollte das mit den zwei Kopien auf unterschiedlichen Geräten etwa so funktionieren wie bei btrfs.

debianoli
Beiträge: 4068
Registriert: 07.11.2007 13:58:49
Wohnort: Augschburg

Re: mdadm: RAID1 = Festplatte + RAID0 ?

Beitrag von debianoli » 07.04.2021 06:46:57

Ich hatte so eine Config auch schon im Einsatz, funktioniert.

Smutbert hat dir einen Weg beschrieben, wie man das einrichten kann.

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: mdadm: RAID1 = Festplatte + RAID0 ?

Beitrag von MSfree » 07.04.2021 09:10:14

smutbert hat geschrieben: ↑ zum Beitrag ↑
07.04.2021 00:24:20
  • das raid0 (oder jbod) aus den zwei 4 TB Partitionen (bzw. Platten) einrichten.
  • ..
  • die 8 TB Partition (bzw. Partition) dem raid1 hinzufügen um es zu vervollständigen
  • das raid1 synchronisieren
Nur eine kleine Anmerkung von mir:

Das raid0 aus den beiden 4TB-Platten könnte (ein paar Kilobyte) größer sein als die 8TB-Platte. Dann wird es mit dem Aufbau eins Raid1 nicht klappen. Es ist hier also vorher zu beachten, die Partitionen, die das Raid0 ausmachen, so klein zu machen, daß es zur Größe der 8TB-Platte paßt.

Benutzeravatar
Meillo
Moderator
Beiträge: 8782
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: mdadm: RAID1 = Festplatte + RAID0 ?

Beitrag von Meillo » 07.04.2021 09:22:16

MSfree hat geschrieben: ↑ zum Beitrag ↑
07.04.2021 09:10:14
smutbert hat geschrieben: ↑ zum Beitrag ↑
07.04.2021 00:24:20
  • das raid0 (oder jbod) aus den zwei 4 TB Partitionen (bzw. Platten) einrichten.
  • ..
  • die 8 TB Partition (bzw. Partition) dem raid1 hinzufügen um es zu vervollständigen
  • das raid1 synchronisieren
Nur eine kleine Anmerkung von mir:

Das raid0 aus den beiden 4TB-Platten könnte (ein paar Kilobyte) größer sein als die 8TB-Platte. Dann wird es mit dem Aufbau eins Raid1 nicht klappen. Es ist hier also vorher zu beachten, die Partitionen, die das Raid0 ausmachen, so klein zu machen, daß es zur Größe der 8TB-Platte paßt.
Das ist der Grund warum ich lieber Partitionen verwende als die Devices direkt: Man hat dann die Groessen selber im Griff und ist nicht von den (recht willkuerlichen) Groessen der Hersteller abhaengig. Es empfiehlt sich, die Partitionen etwa kleiner als die Platten zu machen, weil die naechste Ersatzplatte von vorgeblich gleicher Groesse mit Sicherheit ein paar Megabytes kleiner ist als die bisherige.

Btw: Die ``paar Kilobyte'' koennen auch ein paar hundert Megabytes sein -- nebensaechlich bezogen auf die Groesse dieser Platten, aber sehr nervig wenn es eben exakt stimmen muss.
Use ed once in a while!

buhtz
Beiträge: 1099
Registriert: 04.12.2015 17:54:49
Kontaktdaten:

Re: mdadm: RAID1 = Festplatte + RAID0 ?

Beitrag von buhtz » 07.04.2021 09:24:25

MSfree hat geschrieben: ↑ zum Beitrag ↑
07.04.2021 09:10:14
Das raid0 aus den beiden 4TB-Platten könnte (ein paar Kilobyte) größer sein als die 8TB-Platte. Dann wird es mit dem Aufbau eins Raid1 nicht klappen. Es ist hier also vorher zu beachten, die Partitionen, die das Raid0 ausmachen, so klein zu machen, daß es zur Größe der 8TB-Platte paßt.
Ja, das ist mir bei einem Testlauf in einer VM auch aufgefallen. Dann fing ich an Partionen und RAIDs in der Größe zu verändern und hab alles zerschossen. :D

Das lässt sich in meiner Situation aber einfach lösen.

Die 8TB HDD ist bereits ein degraded RAID1.
Ich füge die beiden 4TB als vollständiges RAID0, dem RAID1 als zweites Element hinzu.
Wenn das wegen der Größe nicht geht, weil das RAID0 zu klein ist, bzw. die 8TB HDD zu groß, ...
Dann erzeuge ich ein neues degraded RAID1 mit dem RAID0 als einziges Element.
rsynce alles von der 8TB HDD/RAID1 rüber auf das neue RADI1.
Und dann mache ich die 8TB HDD "platt" und füge diese als zweites Element dem neuen RAID1 hinzu.

Liebe Mitleser, im Profi Environment macht man das anders und mit Backups. Mein Home-Environment ist nicht unbedingt als super Beispiel geeignet.
Ohne meine tatsächlich bestehende Backup-Strategie im Detail zu erläutern, möchte ich aber anmerken, dass dieses RAID bereits teilweise Backups beinhaltet, die mehrere Jahre zurückreichen. Es ist also etwas übertrieben, wenn man Backups vom Backup macht - selbst für mich.
Debian 11 & 12; Desktop-PC, Headless-NAS, Raspberry Pi 4
Teil des Upstream Betreuer Teams von Back In Time (Debianbackintime)

Benutzeravatar
Meillo
Moderator
Beiträge: 8782
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: mdadm: RAID1 = Festplatte + RAID0 ?

Beitrag von Meillo » 07.04.2021 10:34:49

buhtz hat geschrieben: ↑ zum Beitrag ↑
07.04.2021 09:24:25
MSfree hat geschrieben: ↑ zum Beitrag ↑
07.04.2021 09:10:14
Das raid0 aus den beiden 4TB-Platten könnte (ein paar Kilobyte) größer sein als die 8TB-Platte. Dann wird es mit dem Aufbau eins Raid1 nicht klappen. Es ist hier also vorher zu beachten, die Partitionen, die das Raid0 ausmachen, so klein zu machen, daß es zur Größe der 8TB-Platte paßt.
Ja, das ist mir bei einem Testlauf in einer VM auch aufgefallen. Dann fing ich an Partionen und RAIDs in der Größe zu verändern und hab alles zerschossen. :D

Das lässt sich in meiner Situation aber einfach lösen.

Die 8TB HDD ist bereits ein degraded RAID1.
Ich füge die beiden 4TB als vollständiges RAID0, dem RAID1 als zweites Element hinzu.
Wenn das wegen der Größe nicht geht, weil das RAID0 zu klein ist, bzw. die 8TB HDD zu groß, ...
Dann erzeuge ich ein neues degraded RAID1 mit dem RAID0 als einziges Element.
rsynce alles von der 8TB HDD/RAID1 rüber auf das neue RADI1.
Und dann mache ich die 8TB HDD "platt" und füge diese als zweites Element dem neuen RAID1 hinzu.
Das hoert sich fuer mich gut an. Wuerde ich auch so machen.
Use ed once in a while!

Antworten