Konzept des LV-Thin verstehen

pixel24

Active Member
Dec 11, 2019
104
2
38
45
Hallo zusammen,

ich nutze schon lange LVM aber das Konzept des LVM-Thin ist mir völlig neu und ich versuche das Konzept dahinter zu verstehen. In Wikipedia habe ich einen Artikel zum Thema, jedoch unabhängig von LVM gefunden. Bei diesem kann dann wohl in Summe mehr Speicher bereitgestellt werden als physikalisch vorhanden.

Ist das so ähnlich wie bei den QCOW2-Files (die hatte ich bisher verwendet). Dort lege ich die max. Größe fest aber nur das wirklich genötigte wird allokiert. Das QCOW2-File wachst also dynamisch mit.

Was ich beim LVM-Thin nicht ganz verstehe ist der Zusammenhang mit den Metadata bzw. wie ich nachher in der Praxis damit umgehe. Was machen die Metadata genau bzw. worauf muss ich beim Administrieren in Bezug auf die Metadata beachten?

Ich habe eine Standard-Installation zum Testen durchgeführt. Anschließend enen weiteren Datenträger (/dev/sdb) eingebaut, über das Webinterface die Partitionstabelle vom Typ GPT initialisiert und eine Partition (/dev/sdb1) über die ganze Größe des Datenträgers erstellt und sdb1 als PV definiert:
Code:
pvcreate /dev/sdb1

Im Handbuch finde ich jedoch beim Erstellen des PV's auch einen Parameter für die Metadaten:
Code:
Create a Physical Volume (PV) without confirmation and 250K metadatasize.
# pvcreate --metadatasize 250k -y -ff /dev/sdb1
Muss dieser hier auch benutzt werden?

Die Volume-Gruppe (pve) entsprechend erweitert:
Code:
vgextend vge /dev/sdb1

Im Proxmox-Wiki steht dass man beim Vergrößern des LV's auch immer die Metadaten mit vergrößern muss. Hier im Forum habe ich einen Hinweis gefunden man macht dies im Verhältnis 1/10

Gibt es dazu eine allg. gültige Vorgehensweise oder von was die dieses Größen-Verhältnis abhängig? Der "Jetzt-Zustand" (vor der erweiterung von "data") ist:
Code:
root@vmhost02:/var/lib/vz/images# lvs -a
  LV              VG  Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  data            pve twi-a-tz-- 339.33g             0.00   0.50                           
  [data_tdata]    pve Twi-ao---- 339.33g                                                   
  [data_tmeta]    pve ewi-ao----   3.46g                                                   
  [lvol0_pmspare] pve ewi-------   3.46g                                                   
  root            pve -wi-ao----  96.00g                                                   
  swap            pve -wi-ao----   7.00g
Hier finde ich das etwaige Größen-Verhältnis auch wieder. Bedeutet das fü mich immer wenn ich ein LV erweitere nutze ich diesen Verhältnis?

Wäre nett wenn jemand Licht ins Dunkel bringen könnte :)

Viele Grüße
pixel24
 
Ich versuche es mal :)

Bei einem non thin LVM werden ganze Bereiche für ein Volume reserviert. Entsprechend kann nur soviel Platz vergeben werden wie vorhanden ist. Bei einem Thin-LVM wird der Speicherplatz dynamisch beschrieben. Die Metadaten speichern wo welches Volume seine Daten hingeschrieben hat.

Wenn die Metadaten voll laufen hat man das Problem, dass für neu geschrieben Blöcke die dazugehörenden Metadaten geschrieben werden können. Das kann im schlimmsten Fall zu Datenverlust führen.

Deshalb sollte das LV für die Metadaten immer groß genug gewählt werden und bei bedarf vergrößert werden.
 
Wenn die Metadaten voll laufen hat man das Problem, dass für neu geschrieben Blöcke die dazugehörenden Metadaten geschrieben werden können
Ich denke das soll:" .... die dazugehörenden Metadaten NICHT geschrieben werden können", oder?

Gibt es in Proxmox eigentlich Tools um solche Parameter zu überwachen und ggf. benachrichtigt zu werden?
 
Und wie wäre nun die umgekehrte Vorgehensweise zu:
Code:
- Partition Typ=LVM anlegen
- pvcreate --metadatasize 250k -y -ff /dev/sdb1
- vgextend pve /dev/sdb1
- lvresize --size +200G pve/data
- lvresize --poolmetadatasize +20G pve/data
also den Pool "data" wieder um 200GB, die Poosl-Metadata um 20GB verkleinern und anschließend /dev/sdb1 wieder aus der VG zu entfernen?
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!