ADMIN-Tipp: Virtuelle Disks vergrößern

Jede Woche erscheint in unserem Newsletter ein neuer ADMIN-Tipp. Eine Sammlung aller Tipps finden Sie im Archiv der ADMIN-Tipps.

Wer zuwenig Speicherplatz für eine virtuelle Maschine eingeplant hat, kann sie mit wenigen Befehlen vergrößern.

Ob virtuell oder physisch: Der zur Verfügung stehende Speicherplatz ist endlich. Prinzipiell sind dabei virtuelle Maschinen weitaus flexibel, denn nur mit wenigen Befehlen oder Mausklicks lässt sich virtuelle Hardware zu einer Maschine hinzufügen. Wer zum Beispiel in einer Linux-KVM den Logical Volume Manager (LVM) verwendet, kann so recht leicht den verfügbaren Plattenplatz erweitern. Auch das Einbinden von blockbasiertem Netzwerk-Storage über iSCSI oder gar GlusterFS und Ceph wäre damit kein Problem.

Wer ein Disk-Image vergrößern möchte, muss zunächst die "physische" Datei auf dem Virtualisierungs-Host vergrößern, die hinter der Disk der VM steckt. Hierzu muss die virtuelle Maschine heruntergefahren sein. Folgender Aufruf erweitert den Speicherplatz um 50 GByte:

 qemu-img resize master.img +50G

Die neue Datei hat jetzt aber nur den nötigen Speicherplatz reserviert. Als nächstes muss der Administrator die Partition anpassen, die er vergrößern möchte. Ein einfacher Weg dafür ist, die VM etwa mit der GParted-Live-CD zu booten und mit dem grafischen Tool die Partition zu vergrößern. Jetzt bleibt nur noch, in der VM das darauf befindliche Dateisystem beziehungsweise die LVM-Konfiguration, sofern vorhanden, anzupassen. Bei LVM kann man dies innerhalb der VM mit den LVM-Tools tun, einfacher geht es mit den Programmen aus der Guestfs-Sammlung. Zuerst öffnet ein Aufruf von "guestfish" auf dem Host eine interaktive Shell zur Arbeit mit dem VM-Image. In der Shell stehen die Befehle "lvresize-free" und "resize2fs" zur Verfügung, um das Logical Volume respektive das Ext-Dateisystem zu vergrößern. Sicherheitshalber prüft "e2fsck-f" danach noch einmal das Dateisytem.

# guestfish --rw -a master.img 
...
><fs> run 
><fs> lvresize-free /dev/vg_node7/lv_root 100
><fs> resize2fs /dev/vg_node7/lv_root
><fs> e2fsck-f /dev/vg_node7/lv_root
><fs> exit

 

16.04.2014
comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023