Impossibile spostare un volume proxmox su un filesystem ZFS
Se mentre si cerca di spostare un file immagine disco su uno storage ZFS, si ottiene l'errore:
TASK ERROR: storage migration failed: zfs error: cannot create 'DATA/vm-105-disk-2': volume size must be a multiple of volume block size
significa che la dimensione del file qcow2 o raw non è un multiplo della dimensione del blocco dello ZVOL che si va a creare. Di default la dimensione di blocco di uno zvol è 8k, e la si identifica con:
# zfs get volblock DATA NAME PROPERTY VALUE SOURCE DATA volblocksize - -
Occorre quindi aumentare la dimensione del file immagine del disco della VM per renderla un multiplo di 8k. Questo si può fare a VM accesa.
Costruire un figlio calc nel seguente modo
image filename | vm-105-disk-1.qcow2 | vm id | 105 | disk id | ide2 | image size in bytes | 85916034048 | qemu-img info vm-105-disk-1.qcow2 zfs block size k | 8 | delta | =B4-(INT(B4/(B5*1024))*(B5*1024)) | ="qm resize " & B2 &" " & B3&" +"&B6 | | ex: qm resize 112 ide0 +4096
Rilevare la dimensione del file immagine con
qemu-img info vm-105-disk-1.qcow2
Imputare i parametri, e poi eseguire il comando mostrato:
qm resize 112 ide0 +4096
Riprovare a spostare il file, se non riesce, rilevare di nuovo la dimensione e rieseguire il resize con il nuovo valore. Solitamente in tre volte poi si riesce.