I really need incremental backups ...
Okay. So for rbd snapshots+exports. Is there any script available for that already or will I have to write something myself?
And before I can use this I need to look into more detail why making a snapshot of a VM running CloudLinux always freezes the VM completely.
I tried that before and as soon as I create a snapshot of VM's running CloudLinux, they freeze and the snashot creation process seems to never end... Other OS's are not affected.
Also interestedIf you are interested I can post the script. It is just a BASH script.
Thanks! We'll have a look into that.Here you go. Please go easy on me, I am not great at BASH scripting But all feedback is welcome.
I plan to modify the restore script so it will act like vzdump with vma files. Right now it just restores the image to the ceph cluster. Soon the script will restore the vm.conf and all disks that were backed up with the ceph backup script. I also want to figure out how to have the script register in the gui under the task pane to show its backing up and give a status.
https://github.com/valeech/proxmox_ceph_backups
The snapshot button in the GUI creates a VM snapshot. Ceph rbd snapshots are completely different. My script makes use of them heavily. Hopefully they will work and my script will work for you.
I'll keep you posted on the script.
This has nothing to do with the OS, the backup works on the RBD layer (ceph). Its more like a snapshot of the virtual disk.So your script is not interacting with the guest OS (through qemu-agent for example) and the backups are maybe (more) inconsistent compared to Proxmox's VM backup method?
Thanks! We'll have a look into that.
The main problem here is that you need a working ceph cluster to restore
Thats the biggest benefit of PVEs VMA backups, they can be restored an any other PVE machine even with local storage (if the ceph cluster is completely destroyed i.e. what hopefully never happens
Yes, but proxmox backup system is sending commands to qemu-agent (running inside the guest) in order to freeze the filesystem momentarily or something, in orde to make the snapshot more consistent before taking a backup. I don't know if this is worth it but this is something your script won't do, right?
I'm not sure if there's any way we could improve backup consistency by telling guest VM's to flush it data, somehow, before your scripts creates an rbd snapshot...
Thanks for clarifying! Raw sounds good, but the backups are fullsized filesystems then, right? What about compression?Actually you don't need a working ceph cluster to restore. rbd export creates raw image files. Those images can them be mapped directly to VMs or converted using qemu to another format. I know this works with a full export. For differential exports, it looks like I will have to write my own tool to replay them onto the full image.
The mechanism I use in my script to get the differential exports to work is this:
create ceph snapshot of disk on Saturdayn (rbd snap create)
backup full snapshop (rbd export pool/disk@snap)
create ceph differential export Sun-Fri using the snapshot from Saturday as the source (rbd export-diff --from-snap)
If you changed the backup strategy to always full backup rather than differential, you would be able to mount all you backups directly.