Impossibile spostare un volume proxmox su un filesystem ZFS

From RVM Wiki
Jump to navigation Jump to search

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.

Riferimenti