Tatsächliche Größe einer VM-Disk auf Ceph

Mar 18, 2021
86
7
13
Hallo zusammen,

wie kann ich die tatsächliche Größe einer auf Ceph befindlichen VM-Disk ermitteln?

In der 108.conf ist die virtuelle Disk auf 25 TB angelegt und discard=on:

Code:
scsi1: ceph-hdd-size-2:vm-108-disk-0,backup=0,discard=on,iothread=1,size=25480G

Die 25 TB sehe ich auch hier:

Code:
root@pvs1:~# rbd info ceph-hdd-size-2/vm-108-disk-0
rbd image 'vm-108-disk-0':
    size 25 TiB in 6522880 objects
    order 22 (4 MiB objects)
    snapshot_count: 0
    id: c8ab3da5acdb7c
    block_name_prefix: rbd_data.c8ab3da5acdb7c
    format: 2
    features: layering, exclusive-lock, object-map, fast-diff, deep-flatten
    op_features:
    flags:
    create_timestamp: Mon Aug  8 23:51:35 2022
    access_timestamp: Mon Jul 31 18:14:50 2023
    modify_timestamp: Mon Jul 31 18:14:47 2023

Im Ceph Dashboard sehe ich, dass 22.1 TB provisioniert sind:

Provisioned22.1 TiB
Total provisioned22.1 TiB

Allerdings hat das Filesystem selbst nur ca. 15 TB belegt:

Code:
/dev/sda                  25T   15T   11T  59% /mnt/ceph-hdd-size-2
/dev/sda on /mnt/ceph-hdd-size-2 type xfs (rw,relatime,attr2,inode64,logbufs=8,logbsize=32k,noquota)

Die eigentliche Frage ist also: Wieso sind 22.1 TB provisioniert, obwohl das Filesystem nur (noch) knapp 15 TB belegt? Kann es sein, dass trim hier nicht (ordentlich) läuft?
 
Hallo zusammen,

wie kann ich die tatsächliche Größe einer auf Ceph befindlichen VM-Disk ermitteln?

In der 108.conf ist die virtuelle Disk auf 25 TB angelegt und discard=on:

Code:
scsi1: ceph-hdd-size-2:vm-108-disk-0,backup=0,discard=on,iothread=1,size=25480G

Die 25 TB sehe ich auch hier:

Code:
root@pvs1:~# rbd info ceph-hdd-size-2/vm-108-disk-0
rbd image 'vm-108-disk-0':
    size 25 TiB in 6522880 objects
    order 22 (4 MiB objects)
    snapshot_count: 0
    id: c8ab3da5acdb7c
    block_name_prefix: rbd_data.c8ab3da5acdb7c
    format: 2
    features: layering, exclusive-lock, object-map, fast-diff, deep-flatten
    op_features:
    flags:
    create_timestamp: Mon Aug  8 23:51:35 2022
    access_timestamp: Mon Jul 31 18:14:50 2023
    modify_timestamp: Mon Jul 31 18:14:47 2023

Im Ceph Dashboard sehe ich, dass 22.1 TB provisioniert sind:

Provisioned22.1 TiB
Total provisioned22.1 TiB

Allerdings hat das Filesystem selbst nur ca. 15 TB belegt:

Code:
/dev/sda                  25T   15T   11T  59% /mnt/ceph-hdd-size-2
/dev/sda on /mnt/ceph-hdd-size-2 type xfs (rw,relatime,attr2,inode64,logbufs=8,logbsize=32k,noquota)

Die eigentliche Frage ist also: Wieso sind 22.1 TB provisioniert, obwohl das Filesystem nur (noch) knapp 15 TB belegt? Kann es sein, dass trim hier nicht (ordentlich) läuft?
Ja, das kann am Trim liegen oder am alignment.
Wenn ein 64k Block in der VM leer ist, aber das alignment um paar Byte verschoben ist, sind immer noch ein paar Byte im darunter liegenden Layer belegt.
Probiere erst einmal einen manuellen Trim aus.
 
Probiere erst einmal einen manuellen Trim aus.
Habe ich angeworfen, hat sich gebessert. Vorhin waren nur noch 21.4 TB provisioniert. Da ich die Disk aber sowieso in ein paar Tagen löschen werde – ziehe die Daten gerade auf Ceph 'nativ' um (RadosGW) – habe ich den Vorgang nun abgebrochen.

Welche Dinge gibt es denn bzgl. Trim zu beachten? Muss man außer der discard-Option noch etwas tun oder läuft das automatisch? Welche Dateisysteme eignen sich beispielsweise nicht? Gibt es eine Liste der Betriebssysteme, die z.B. bei HDDs (bzw. VM-Disks, die sich als HDD zu erkennen geben) keinen Trim durchführen?
 

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!