LVM-Konzepte
Physical Volume (PV) → Volume Group (VG) → Logical Volume (LV)
/dev/sdb (PV) ─┐
/dev/sdc (PV) ─┤→ data-vg (VG) → data-lv (LV) → /data
/dev/sdd (PV) ─┘
LVM einrichten
# LVM-Tools installieren
apt install -y lvm2
# Physical Volumes erstellen
pvcreate /dev/sdb /dev/sdc
pvdisplay
# Volume Group erstellen
vgcreate data-vg /dev/sdb /dev/sdc
vgdisplay data-vg
# Logical Volume erstellen
lvcreate -n data-lv -L 100G data-vg
lvdisplay /dev/data-vg/data-lv
# Dateisystem erstellen und mounten
mkfs.ext4 /dev/data-vg/data-lv
mkdir /data
mount /dev/data-vg/data-lv /data
# /etc/fstab Eintrag
echo "/dev/data-vg/data-lv /data ext4 defaults 0 2" >> /etc/fstab
Volume online vergrößern (kein Downtime!)
# Neue Disk hinzufügen
pvcreate /dev/sdd
vgextend data-vg /dev/sdd
# Logical Volume vergrößern
lvextend -L +50G /dev/data-vg/data-lv
# Oder: bis zur maximalen VG-Größe
lvextend -l +100%FREE /dev/data-vg/data-lv
# Dateisystem vergrößern (online!)
resize2fs /dev/data-vg/data-lv
# XFS-Dateisystem vergrößern
xfs_growfs /data
# Prüfen
df -h /data
LVM Snapshots
# Snapshot erstellen (vor Update/Deployment)
lvcreate -L 5G -s -n data-lv-snap /dev/data-vg/data-lv
# Snapshot anzeigen
lvdisplay /dev/data-vg/data-lv-snap
# Snapshot wiederherstellen
lvconvert --merge /dev/data-vg/data-lv-snap
reboot # Bei Root-Partition
# Snapshot für Backup mounten
mkdir /mnt/snapshot
mount -o ro /dev/data-vg/data-lv-snap /mnt/snapshot
rsync -av /mnt/snapshot/ /backup/
umount /mnt/snapshot
lvremove -f /dev/data-vg/data-lv-snap
Thin Provisioning
# Thin Pool erstellen (überbuchbarer Speicher)
lvcreate -n thin-pool -L 200G data-vg
lvconvert --type thin-pool data-vg/thin-pool
# Thin Volumes erstellen (mehr als physisch vorhanden)
lvcreate -n vm-01 --thin -V 100G data-vg/thin-pool
lvcreate -n vm-02 --thin -V 100G data-vg/thin-pool
lvcreate -n vm-03 --thin -V 100G data-vg/thin-pool
# Thin Pool Auslastung
lvs -a data-vg/thin-pool
FAQ
Kann ich LVM auf einer laufenden Root-Partition nutzen?
Ja, für Nicht-Root-Volumes. Root-Partition-Vergrößerung erfordert eine Live-CD oder cloud-init bei Cloud-VMs.
Wie migriere ich Daten zwischen Physical Volumes?
pvmove /dev/sdb - verschiebt alle LVs von sdb auf andere PVs in der VG (online, während System läuft).
Fazit
LVM ist Standard auf professionellen Linux-Servern. Online-Vergrößerung und Snapshots sind unverzichtbar für produktive Umgebungen.
Linux-Storage-Konfiguration für KMU in Heidelberg, Mannheim und der Rhein-Neckar-Region. Beratung anfragen.