Unterschiede zwischen den Revisionen 17 und 18
Revision 17 vom 2013-10-07 06:54:02
Größe: 4226
Autor: anonym
Kommentar:
Revision 18 vom 2019-01-01 21:09:43
Größe: 4221
Autor: phil
Kommentar:
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 3: Zeile 3:
-----

Was ist das hier

Auf thorax verwenden wir LVM (Logical volume management) für den Umgang mit den Images der virtuellen Server. Die folgenden Infos geben dir genug Wissen, um die wichtigsten Aufgaben in Verbindung mit LVM zu erledigen.

Daten fuer die Faxe-Administration

Server

LVM-Volumes

Zweck

thorax

xen-vol

Images der virtuellen Server

Begriffe und Variablen

Variable

Bedeutung

Beispiel

PV

physisches Volume - bspw. eine Festplattenpartition, die als Teil einer Volume-Group (VG) genutzt wird

/dev/hda3

VG

Volume-Group - besteht aus mind. einem PV und kann mehrere logische Volumes (LV) enthalten

xen-vol

LV

logisches Volume - ein nutzbares Blockdevice; Teil einer VG

ldap-disk


Übliche Aufgaben

Status anzeigen

pvdisplay
Infos zu den physischen Volumes (welche sind vorhanden?)
vgdisplay
Infos zu den Volume-Groups (wieviel Platz ist noch vorhanden?)
lvdisplay
Infos zu den logischen Volumes (wie gross sind sie?)

Erzeugung eines logischen Volumes

  1. Umwandeln (mindestens) einer ungenutzten (leeren) Partition in eine PV: pvcreate PV

  2. Erzeugung einer Volume-Group aus einer oder mehreren PV: vgcreate VG PV1 PV2 PV3

  3. Anlegen eines logischen Volumes (im Beispiel: 4GB gross): lvcreate -n LV -L 4G VG

Nutzung eines logischen Volumes

Ein logisches Volume verhält sich genauso, wie andere Blockdevices. Also erstmal formatieren - und dann kann mensch es mounten.

Die Blockdevice-Nodes sind jeweils unter /dev/VG/LV erreichbar.

Beispiel: mkfs.ext3 /dev/VG/LV && mount /dev/VG/LV /mnt/ttt

Vergrößern eines Volumes

ext3 online vergrößern

Spart 'ne Menge Zeit und die Dienste sind fast durchgängig verfügbar.

  • in mutter:

    lvresize -L +2G /dev/xen-vol/VOLDISKNAME
    • in /etc/xen/auto/DOMAIN.cfg nachsehen unter welchem Namen das Volume in der Xen domu eingbunden wird

    • Domain neustarten oder sonstwie dafür sorgen, dass die Domain die vergrößerte Partition realisiert ("xm block-detach; xm block-attach" bei ungemountetem Gerät):
      • xm shutdown DOMAIN
      • xm create /etc/xen/auto/DOMAIN.cfg
  • in der entsprechenden domain:

    resize2fs /dev/...

ext3 vergrößern

Mit den folgenden Befehlen, kannst du schnell eine Partition eines domU vergrößern.

<!> Auch wenn laut Doku ein online resize möglich sein sollte, funktionierte dies bei meinen Tests auf thorax nicht. Das Volume sollte also während der Größenänderung nicht benutzt/gemountet werden! Nicht das du hinterher heulst... ;)

xm shutdown VOLNAME
lvresize -L 2G /dev/xen-vol/VOLDISKNAME
e2fsck -f /dev/xen-vol/VOLDISKNAME
resize2fs /dev/xen-vol/VOLDISKNAME
xm create VOLNAME
  • lvresize -L 2G erzeugt eine Partition mit der angegebenen Größe; -L +1G vergrößert um den angegebenen Wert
  • Die komplette Prozedur dauert im Idealfall nicht länger als fünf Minuten. Die meiste Zeit benötigt e2fsck (für 10GB ~2Min.).

xfs vergrößern

Damit ein xfs Dateisystem vergrößert werden kann _muss_ es gemounted sein. Somit lässt sich eine laufende domU im Betrieb vergrößern.

lvresize -L 2G /dev/xen-vol/VOLDISKNAME
xfs_growfs /MOUNT-POINT
  • lvresize -L 2G erzeugt eine Partition mit der angegebenen Größe
  • lvresize -L +1G vergrößert um den angegebenen Wert

Volumes umbenennen

lvrename /dev/xen-vol/OLD_VOLDISKNAME /dev/xen-vol/NEW_VOLDISKNAME

Volume löschen

lvremove /dev/xen-vol/VOLDISKNAME

Snapshots

Snapshots bieten die einfache Möglichkeit Änderungen am System reversibel zu gestalten:

  • 5GB großen Snapshot anlegen mit "lvcreate -L 5G -s -n /dev/xen-vol/VOLDISKNAME-SNAP /dev/xen-vol/VOLDISKNAME"
  • nach erfolgreich getaner Arbeit wieder löschen mit "lvremove /dev/xen-vol/VOLDISKNAME-SNAP"
  • falls unlösbare Probleme auftraten Ursprungszustand wieder herstellen mit "lvconvert --merge /dev/xen-vol/VOLDISKNAME-SNAP"

Links

FaxeLogicalVolumeManagement (zuletzt geändert am 2019-01-01 21:09:43 durch phil)


Creative Commons Lizenzvertrag
This page is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.