LVM, Stratis & VDO on RHEL (Artikel 085)
Fortgeschrittenes Storage-Management unter RHEL. Erfahren Sie alles über die moderne Storage-Abstraktion Stratis und die Datenreduktion mit VDO (Virtual Data Optimizer).
# Enterprise Storage on RHEL: LVM, Stratis und VDO
TL;DR / Management Summary Red Hat hat das klassische Storage-Management um zwei mächtige Werkzeuge erweitert: Stratis bietet ein ZFS-ähnliches Erlebnis (Pools, Snapshots, Thin-Provisioning) auf Basis von bewährten Linux-Technologien. VDO (Virtual Data Optimizer) sorgt für massive Platzersparnis durch Inline-Deduplizierung und Kompression. Ein Senior Admin nutzt diese Tools, um Speicherplatz effizienter zu nutzen und die Komplexität von LVM-Volumes zu reduzieren.
# 1. Einführung & Architektur
Die Evolution des Storage-Stacks.
RHEL setzt weiterhin auf LVM als Fundament, baut aber Schichten darüber auf, um die Administration zu vereinfachen.
# Der moderne RHEL Storage-Stack (Mermaid)
graph TD
A[Hardware Disk / NVMe] --> B[Device Mapper]
B --> C[VDO: Compression & Dedup]
C --> D[LVM: Volume Groups]
D --> E[Stratis: Managed Pools]
E --> F[XFS Filesystem]
G[Cockpit Web UI] --> E
# 2. Stratis: Storage einfach gemacht
Pools statt Partitionen.
Stratis ist ein lokaler Storage-Manager. Er automatisiert das Erstellen von VGs, LVs und Filesystemen.
# Einrichtung
sudo dnf install stratisd stratis-cli
sudo systemctl enable --now stratisd
# Pool und Filesystem erstellen
# 1. Pool aus einer Disk erstellen
sudo stratis pool create my-pool /dev/sdb
# 2. Filesystem (Dataset) anlegen
sudo stratis fs create my-pool my-data
# 3. Mounten (Stratis nutzt immer XFS)
sudo mount /stratis/my-pool/my-data /mnt/data
# 3. VDO: Daten reduzieren
Deduplizierung in Echtzeit.
VDO ist ideal für Backup-Ziele oder Fileserver. Es erkennt identische Datenblöcke und speichert sie nur einmal.
# VDO Volume erstellen
sudo dnf install vdo kmod-kvdo
sudo vdo create --name=vdo_data --device=/dev/sdc --vdoLogicalSize=1T
Obwohl die Disk nur z.B. 100GB hat, erlauben wir 1TB logische Größe (Deduplizierungs-Potenzial).
# 4. Day-2 Operations: Cockpit Integration
Management im Browser.
In RHEL ist Cockpit das Standard-Tool für die grafische Verwaltung.
sudo systemctl enable --now cockpit.socket
Unter Storage können Sie grafisch:
- VDO Statistiken einsehen (Deduplication Ratio).
- Stratis Pools erweitern.
- LVM Snapshots erstellen.
# 5. Troubleshooting & “War Stories”
Wenn die Abstraktion hinkt.
# Story 1: “Der VDO RAM-Hunger”
Symptom: Nach dem Aktivieren von VDO wird das System extrem langsam oder Dienste stürzen ab. Ursache: VDO benötigt für den Index der Deduplizierung massiv RAM (ca. 1GB RAM pro 1TB physischer Disk). Lösung: Nutzen Sie VDO nur auf Systemen mit ausreichend Speicher. Auf kleinen VMs ist die Performance-Einbuße oft zu hoch.
# Story 2: “Stratis Mount-Fail beim Boot”
Symptom: Der Server bootet in die Emergency-Shell, weil Stratis-Filesysteme nicht gemountet werden konnten.
Ursache: Stratis-Filesysteme müssen in der /etc/fstab mit speziellen Optionen eingetragen werden, damit das System auf den stratisd Dämon wartet.
Lösung: Nutzen Sie immer die UUID und das Flag x-systemd.requires=stratisd.service in der fstab.
# 6. Fazit & Empfehlung
- VDO: Ein Muss für Backup-Server (z.B. für Veeam Repository auf RHEL). Ersparnis oft über 50%.
- Stratis: Ideal für Admins, die die Flexibilität von ZFS wollen, aber auf XFS und Standard-Kernel-Module angewiesen sind.
- Best Practice: Nutzen Sie XFS als Dateisystem auf diesen Schichten, da es am besten mit den darunterliegenden Thin-Provisioning Mechanismen harmoniert.
# Anhang: Cheatsheet
| Aufgabe | Befehl |
|---|---|
| Stratis Pools listen | stratis pool list |
| Stratis Filesystems | stratis fs list |
| VDO Status / Ratio | vdo status --name=vdo_data |
| VDO Statistiken | vdostats --human-readable |
| Disk zu Stratis Pool | stratis pool add-data <pool> <device> |