Cache-Pools
In Unraid, a cache pool is a collection of one or more drives, typically SSDs or high-speed HDDs. These drives temporarily store data before it's moved to your main array. Using cache pools can significantly enhance write speeds, protect your data, and provide dedicated storage for specific tasks like running Docker containers or virtual machines.
Cache-Pools bieten mehrere Vorteile, die sie zu einer wertvollen Ergänzung Ihres Unraid-Setups machen, wie z. B.:
-
Faster write speeds: Cache pools allow you to quickly write data to faster drives before it gets transferred to the main array. This greatly enhances perceived performance when saving files.
-
Data protection for cached files: By using multiple drives in a cache pool (like setting them up in RAID 1), you add redundancy. This means your cached data is protected from drive failure before it even reaches the main array.
-
Optimized storage for applications: Storing applications like Docker containers or virtual machines on a cache pool improves their performance, reduces wear on your main array, and minimizes the time it takes to access frequently-used files.
-
Flexible and dedicated storage: With multiple cache pools, you can assign specific pools for different tasks. For instance, you could have one pool dedicated to downloads and another for virtual machines, reducing competition for resources and boosting efficiency.
- Multiple pools: You can create and name different cache pools, tailoring them to match your specific needs.
- SSD vs. HDD: SSDs bieten hohe Geschwindigkeit, während Sie HDDs für große, sequentielle Datenlasten nutzen können. HDDs tragen zudem dazu bei, die Lebensdauer Ihrer SSDs zu verlängern.
- Redundancy matters: To protect your data, use more than one drive in a cache pool. A single drive pool won't protect you from potential drive failure.
- File system choice: The default file system for cache pools is BTRFS, which supports various RAID options for added redundancy and flexibility. For more details on file system selection, see File systems.
- Mover integration: Data written to a cache pool is automatically transferred to your main array based on a schedule you set. This keeps your user shares organized and easy to manage.
- Application performance: By placing Docker containers, app data, and VM disks on a cache pool, you enhance access speed and minimize strain on your main storage.
:::
Pool-Modi
Unraid cache pools can operate in two main modes: single device mode and multi-device mode. Knowing the difference between these modes will help you find the right balance between performance, flexibility, and data protection for your needs.
Einzelgerätmodus
In single device mode, your cache pool consists of only one device. This means:
- No redundancy: If the device fails, any data stored on it that hasn't been transferred to your array will be lost.
- Dateisystemoptionen: Sie können andere Dateisysteme als BTRFS verwenden, wie XFS oder ZFS.
If you choose a non-BTRFS or non-ZFS file system in single device mode and later decide to add more devices to the pool, you will need to reformat the device as BTRFS or ZFS first. That's why BTRFS is the default file system for cache pools, even when using just one device. Both BTRFS and ZFS support adding devices later to create mirrored pools. For more information on file system selection and compatibility, see File systems.
Der Einzelgeräte-Modus ist unkompliziert. Sie können das Gerät einfach hinzufügen oder entfernen, haben jedoch keine Optionen für erweiterte Funktionen wie Redundanz oder Erweiterung.
Multi-Gerät-Modus
When you set up a cache pool with more than one device, it enters multi-device mode. Here's what you should know:
- Datenschutz: Dieser Modus nutzt BTRFS oder ZFS, um Daten über Geräte hinweg zu spiegeln und so Ihre zwischengespeicherten Daten vor Laufwerksausfällen zu schützen. Sie können ein Gerät verlieren, ohne Daten zu verlieren.
- Mix and Match: Sie können Geräte unterschiedlicher Größen und Typen hinzufügen oder entfernen, einschließlich der Kombination von SSDs und HDDs.
- Kapazitätsmanagement: Verwenden Sie den BTRFS Speicherplatzrechner, um abzuschätzen, wie viel Platz Sie basierend auf dem RAID-Level und den Größen der verwendeten Geräte haben werden. Für ZFS-Pools nutzen Sie den ZFS Storage Guide für Konfigurationsdetails.
Common tasks for the cache pool include:
- Wechseln zwischen Einzel- und Mehrgerätmodi
- Hinzufügen von Datenträgern zu einem Pool
- Ersetzen von Datenträgern in einem Pool
- Moving files between the pool and the array (see Moving files between a pool and the array)
Hinzufügen von Laufwerken zur Erstellung eines Mehrgerätepools
Die Cache-Pools in Unraid können von einem Einzelgerät auf mehrere Geräte erweitert werden, was eine erhöhte Kapazität und Redundanz ermöglicht. Um den Mehrgerätemodus zu nutzen, muss Ihr Pool als BTRFS oder ZFS formatiert sein.
Umwandlung eines Pools in BTRFS oder ZFS
If your cache pool isn't already formatted as BTRFS or ZFS, you can convert it using the following steps.
Um einen Pool in BTRFS oder ZFS zu konvertieren:
- Back up important content. See Moving files between a pool and the array to move files from your pool to the array.
- Stoppen Sie das array.
- Klicken Sie im Main-Tab auf den Pool und wählen Sie BTRFS oder ZFS als Dateisystem-Format.
- Starten Sie das array.
- Wenn der Pool als nicht einhängbar angezeigt wird, bestätigen Sie und klicken Sie auf Formatieren.
- Nach dem Formatieren haben Sie einen BTRFS oder ZFS Pool (ein Gerät in diesem Stadium).
- (Optional) Fügen Sie bei Bedarf zusätzliche Laufwerke hinzu.
- Stellen Sie Ihre Daten wieder her, indem Sie Dateien zurück in den Pool verschieben.
Hinzufügen von Laufwerken zur Erstellung eines Mehrgerätepools
Sobald Ihr Pool als BTRFS oder ZFS formatiert ist, können Sie weitere Laufwerke für Redundanz und zur Speichererweiterung hinzufügen.
Wenn Ihr Speicherbedarf wächst, möchten Sie vielleicht Ihren Cache-Pool durch das Hinzufügen zusätzlicher Festplatten erweitern. Dieser Prozess ermöglicht Ihnen, sowohl die Kapazität als auch die Leistung zu erhöhen und gleichzeitig den Datenschutz durch RAID-Konfigurationen zu gewährleisten.
- Stoppen Sie das array.
- Weisen Sie im Main-Tab ein oder mehrere neue Geräte Ihrem Pool zu.
- Starten Sie das array.
- Unraid integriert automatisch die neuen Geräte und startet eine Balance (BTRFS) oder Resilver (ZFS).
- Klicken Sie im Main-Tab auf das erste Poolgerät und überprüfen Sie den Balance-Status (BTRFS) oder den Zpool-Status (ZFS), um den Fortschritt zu verfolgen.
- Wenn abgeschlossen, arbeitet der Pool im Mehrgeräte-Modus mit erhöhter Kapazität und Redundanz.
Sie können den BTRFS-Disknutzungsrechner verwenden, um den verfügbaren Speicherplatz und die Redundanz basierend auf Ihrem gewählten RAID-Level und den Gerätegrößen zu schätzen.
Hinzufügen von Datenträgern zu einem Pool
Wenn Ihr Speicherbedarf wächst, möchten Sie vielleicht Ihren Cache-Pool durch das Hinzufügen zusätzlicher Festplatten erweitern. Dieser Prozess ermöglicht Ihnen, sowohl die Kapazität als auch die Leistung zu erhöhen und gleichzeitig den Datenschutz durch RAID-Konfigurationen zu gewährleisten.
Wenn Sie Ihrem Pool Festplatten hinzufügen möchten, stellen Sie sicher, dass Ihr Pool bereits als BTRFS oder ZFS formatiert ist. Falls nicht, müssen Sie ihn zuerst formatieren, wie unter Konvertierung eines Pools zu BTRFS oder ZFS erklärt.
Zum Hinzufügen einer Festplatte zu einem Pool:
- Stoppen Sie das array.
- Öffnen Sie im Main-Tab den Pool.
- Setzen Sie im Abschnitt Poolgeräte die Slots auf die genaue Anzahl weiterer Geräte.
- Weisen Sie die neuen Geräte den verfügbaren Slots zu.
- Start the array to enable the changes.
Entfernen von Datenträgern aus einem Pool
Removing a disk from a BTRFS or ZFS multi-device cache pool can help you reclaim hardware, replace a failing drive, or reconfigure your storage. This process is only possible if your pool is set up for redundancy (like RAID 1 for both data and metadata) and the remaining devices have enough space to hold all of your data.
Über das WebGUI
- Sie können mit der GUI nur ein Laufwerk gleichzeitig entfernen.
- Stellen Sie sicher, dass Ihr Pool ein redundantes RAID-Profil verwendet (wie RAID 1 für sowohl Daten als auch Metadaten).
- To check your pool's RAID level, navigate to the Main tab and click on the pool. Scroll down to the Balance Status section (for BTRFS) or ZFS pool status (for ZFS).
:::
Um eine Festplatte über das WebGUI zu entfernen:
- Stoppen Sie das array: Gehen Sie zur Registerkarte Hauptmenü und suchen Sie nach der Option zum Stoppen Ihres array.
- Entfernen Sie das Pool-Laufwerk: Finden Sie das Laufwerk, das Sie entfernen möchten, und entbinden Sie es auf der Registerkarte Hauptmenü.
- Starten Sie das array: Starten Sie das array neu, um die Änderungen zu übernehmen.
- Entfernung überprüfen: Klicken Sie auf das erste Pool-Gerät in der Registerkarte Hauptmenü und überprüfen Sie dann den Balance-Status (für BTRFS) oder zpool status (für ZFS), um zu bestätigen, dass das Gerät korrekt entfernt wurde.
:::note[Timing]
Bedenken Sie, dass das Entfernen eines Laufwerks und das Neuausbalancieren des Pools mehrere Stunden dauern kann, abhängig von der Datenmenge und den Geschwindigkeiten Ihres Geräts.
:::
Verwenden Sie die Befehlszeile (Erweitert)
Wenn Sie mit der Befehlszeile vertraut sind, bietet Ihnen diese Methode mehr Kontrolle und kann nützlich sein, wenn die WebGUI-Option nicht verfügbar ist. Weitere Informationen zur Verwendung der Befehlszeilenschnittstelle finden Sie im Abschnitt Befehlszeilenschnittstelle.
:::
Um eine Festplatte über die Kommandozeile zu entfernen:
-
Stellen Sie sicher, dass das array läuft und öffnen Sie Ihre Befehlszeile.
-
Geben Sie den unten stehenden Befehl ein, ersetzen Sie dabei
Xdurch den Buchstaben, der dem Laufwerk entspricht, das Sie entfernen möchten (wie im Haupt-Tab angezeigt):btrfs device remove /dev/sdX1 /mnt/cache- Für verschlüsselte Geräte verwenden:
/dev/mapper/sdX1. - Für NVMe-Geräte verwenden Sie:
nvmeXn1p1.
- Für verschlüsselte Geräte verwenden:
-
Warten Sie auf den Abschluss: Das Gerät wird entfernt, sobald der Cursor zurückkehrt.
-
Unraid "vergessen" das gelöschte Mitglied:
-
Stoppen Sie das array erneut, weisen Sie alle verbleibenden Pool-Mitglieder außer dem entfernten Gerät neu zu und starten Sie dann das array.
Sie können dies mit einem Befehl tun:
Sie können dies mit einem Befehl tun:
btrfs device remove /dev/sdX1 /dev/sdY1 /mnt/cache
Beachten Sie jedoch, dass die Entfernung trotzdem nacheinander erfolgt.
:::note[Timing]
Ähnlich wie bei der WebGUI Methode kann das Entfernen von Geräten und das Neuausbalancieren je nach Datenmenge und Geräteschnelligkeit mehrere Stunden dauern.
:::
Wenn Sie nur ein Gerät im Pool übrig haben, müssen Sie das RAID-Profil zu Einzel konvertieren, um sicherzustellen, dass alles korrekt funktioniert. Für weitere Anweisungen beachten Sie bitte den Abschnitt Ändern des Pool-RAID-Levels auf Einzel.
Ändern von Pool-RAID-Leveln
BTRFS provides the ability to change RAID levels for cache pools dynamically, allowing you to adjust settings without stopping the array or losing any data. This flexibility lets you optimize for performance, redundancy, or storage efficiency as your requirements change.
Unterstützte RAID Level
| RAID Level | Datenschutz | Speichereffizienz | Anwendungsfall |
|---|---|---|---|
| Single | Keine | 100% | Temporäre Speicherung oder nicht-kritische Daten, bei denen keine Redundanz erforderlich ist. |
| RAID 0 | Keine | 100% | Maximiert Leistung und Kapazität, aber nicht für kritische Daten empfohlen. |
| RAID 1 | 1 Festplattenfehler | 50% | Standard für Unraid Pools. Ideal für Docker/VM Speicherung und kritische Daten. |
| RAID 10 | 1 Festplattenfehler | 50% | Kombiniert die Geschwindigkeit von RAID 0 mit der Redundanz von RAID 1 für Hochleistungsbedürfnisse. |
| RAID 5* | 1 Festplattenfehler | 67-94% | Experimentell. Balanciert Kapazität und Redundanz für große Medienlager. |
| RAID 6* | 2 Festplattenfehler | 50-88% | Experimentell. Bietet zusätzlichen Schutz für Archivspeicher mit großen Festplatten. |