Fernwartungsmodul herunterladen

Debian Linux LVM Partition während dem Betrieb unter VMWare vergrössern

Es soll Stimmen geben welche behaupten das es mit Linux nicht möglich ist, die Festplatte einer virtuellen Maschine während dem Betrieb zu vergrößern.

Das ist ... falsch!

Selbstverständlich geht das, wichtig ist nur das ein LVM darunter liegt, oder die Partition welche vergrößert werden soll die letzte auf der virtuellen Festplatte ist.

In dem Fall hier setzten wir einen VMWare ESXi 5.1 mit einem Debian Linux squeeze ein. Die Datenpartitionen liegen auf einem LVM2.

Wenn Ihr einem System begegnet welches von mir eingerichtet wurde, dann werdet Ihr feststellen das ich unter dem LVM PV nie eine Partition habe, sondern dieses immer direkt auf dem Device erstelle. Dies hat den Hintergrund dass ich im Falle eines Resize des Devices nicht eine extra Partition hinten anstückeln, oder erst die Partition vergrößern, sondern mich ausschließlich um das PV kümmern muss.

Festplatte in VMWare vergrössern

Als ersten vergrössern wir die Festplatte auf welcher unser LVM PV (Physical Device) liegt, in diesem Fall auf 350GB.

VMware Konfigurationsfenster
Festplatte in Linux neu einlesen

Damit unser Linux System etwas davon mitbekommt, müssen wir die Festplatte neu einlesen. Hierfür benötigen wir als ersten den Pfad der Disk, um diesen zu erfahren führen wir den folgenden Befehl aus:

root@ms-ms-01:/var# ls -la /dev/disk/by-path |grep sdb
lrwxrwxrwx 1 root root   9 13. Mai 08:54 pci-0000:03:00.0-scsi-0:1:0:0 -> ../../sdb
root@ms-ms-01:/var#

Der DevicePath in diesem Fall ist der 0:1:0:0, somit können wir diese in dem folgenden Befehl einbauen und ausführen.

root@ms-ms-01:/var# echo "1" > /sys/class/scsi_disk/0\:1\:0\:0/device/rescan
root@ms-ms-01:/var#
Vergrössern des LVM Devices

Mit pvresize nun das Physical Device vergrössern

root@ms-ms-01:/var# pvresize /dev/sdb
Physical volume "/dev/sdb" changed
1 physical volume(s) resized / 0 physical volume(s) not resized
root@ms-ms-01:/var#

Und zur Sicherheit kurz prüfen ob der Platz in den PV nun wirklich zur Verfügung steht:

root@ms-ms-01:/var# pvdisplay
--- Physical volume ---
PV Name               /dev/sdb
VG Name               vg01
PV Size               350,00 GiB / not usable 3,81 MiB
Allocatable           yes
PE Size               4,00 MiB
Total PE              89599
Free PE               12800
Allocated PE          76799
PV UUID               mXURAd-ulTW-gUau-3Wfd-kU4T-Eu0O-6AWCZj
root@ms-ms-01:/var#

Da wir durch die Vergrösserung des PV nun mehr Platz in der VG (Volume Group) haben, müssen wir nun noch das LV (Logical Volume) anpassen bevor es an das Dateisystem gehen kann.

root@ms-ms-01:/var# lvextend -l+100%FREE /dev/vg01/lv01
Extending logical volume lv01 to 350,00 GiB
Logical volume lv01 successfully resized
root@ms-ms-01:/var#
Vergrössern des Dateisystems

Da es sich in meinem Fall um ein ext3 Dateisystem handelt verwende ich für den Onlineresize resize2fs

root@ms-ms-01:/var# resize2fs /dev/mapper/vg01-lv01
resize2fs 1.41.12 (17-May-2010)
Das Dateisystem auf /dev/mapper/vg01-lv01 ist auf /var eingehängt; Online-Grössenveränderung nötig
old desc_blocks = 19, new_desc_blocks = 22
Führe eine Online-Grössenänderung von /dev/mapper/vg01-lv01 auf 91749376 (4k) Blöcke durch.
Das Dateisystem auf /dev/mapper/vg01-lv01 ist nun 91749376 Blöcke groß.
root@ms-ms-01:/var#

Das wars schon, ohne Neustart haben wir nun auf einem Debian Linux die Partiton für /var vergrössert. Dies sollte bei allen anderen Linux Systemen auch funktionieren. Wenn bei euch das PV Device auf einer Partition und nicht direkt auf der HDD liegt, müsst Ihr ggf. die Partition vorher vergössern, oder eine zusätzliche Partition anlegen welche Ihr das zum PV macht und in die VG aufnehmt.

root@ms-ms-01:/var# df -h
Dateisystem           Size  Used Avail Use% Eingehängt auf
/dev/sda1              19G  3,6G   15G  21% /
tmpfs                 4,0G     0  4,0G   0% /lib/init/rw
udev                  4,0G  104K  4,0G   1% /dev
tmpfs                 4,0G     0  4,0G   0% /dev/shm
/dev/mapper/vg01-lv01
                      345G  292G   54G  85% /var
root@ms-ms-01:/var#

Sollten Fragen aufkommen, kontaktiert uns einfach, wir stehen gerne zur Verfügung.