It's a great & it's so efficient to have VM running on thin provisioned disks. However, I just learnt that Proxmox will quietly put a VM into some stalled status (web GUI shows a darkened icon but without green triangle, and the console will not respond) if the volume is fulled. Having Proxmox to reset or to boot with a .iso is possible, but sooner or later, all will hit the wall again.
I don't want to lose my VM, so my solution was to move a virtual disk out from the volume. I added a small USB drive (actually a mSATA SSD, seems performed ok) to the box, created a new thin pool volume, and move one VM out. Now I can keep the VMs running again.
Create a volume group on the USB (assuming a new group "external" on the disk /dev/sdc1):
vgcreate external /dev/sdc1
Create the volume (naming it "extdata") (yes, it's small):
lvcreate -L 14G -n extdata external
Convert to a thin-provisioning volume:
lvconvert --type thin-pool external/extdata
It's time to add the storage using web GUI (naming it "ext" here):
[WebGUI] >
[Datacenter] >
[Storage] >
[Add] >
ID: ext,
Volume group:
external, Thin pool: extdata >
[Add]
Finally, move the virtual disk:
[WebGUI] >
[999 (bustedVM)] >
[Hardware] >
[Hard Disk (virtio0)](the disk to move) >
[Move disk] >
Target storage: ext >
[Move disk]