KVM and Back Ups
-
@tim_g
One problem is the dirty bitmapping in the API is push only so anything expecting an interactive API won't work. This means the backup system can't query the API for dirty bitmaps, only create them.(At least it was this way the last time I looked at it)
-
This is quite an old thread, but it discusses exactly what I am researching.
I use KVM (via Fedora) in my home lab, and currently, since I have no production workloads on it, I run file only backups via a couple scripts.
However, I'd like to explore the possibility of using KVM in a production scenario. Backups are obviously key here. Automated, live, nightly snapshots (entire VM) is what I am looking for.
What would be the best way to achieve this? Assuming I am running a single KVM server with local storage.
Is this still a good option: https://storware.eu/products/vprotect/
Is there something better?
Can something like ProxMox handle this? https://www.proxmox.com/en/proxmox-ve
-
Proxmox backups are always a full backup.
https://pve.proxmox.com/wiki/Backup_and_Restore -
@fuznutz04 said in KVM and Back Ups:
However, I'd like to explore the possibility of using KVM in a production scenario. Backups are obviously key here. Automated, live, nightly snapshots (entire VM) is what I am looking for.
What would be the best way to achieve this? Assuming I am running a single KVM server with local storage.You come back to the fundamental question of... why are you approaching backups this way?
Backups have never been something that we think of at the hypervisor level for decades, all of a sudden its the hot new "everyone has to do it" way. But it has all kinds of limitations and should only be a consideration for certain workloads, and only one of the options. Backups are always by workload, never by platform. It's fundamentally a flawed way to think of backups because it hides the scope and complexity of getting reliable backups and causes all kinds of problems.
Under no circumstances can anyone answer how you should take backups based on knowing your platform - no matter what hypervisor or OS you use, your backups have to be a decision based on your workloads.
-
@black3dynamite said in KVM and Back Ups:
Proxmox backups are always a full backup.
https://pve.proxmox.com/wiki/Backup_and_RestoreDo you use or have any experience using proxmox? Does/can it just run as a VM on the host?
-
@fuznutz04 said in KVM and Back Ups:
@black3dynamite said in KVM and Back Ups:
Proxmox backups are always a full backup.
https://pve.proxmox.com/wiki/Backup_and_RestoreDo you use or have any experience using proxmox? Does/can it just run as a VM on the host?
PM doesn't do anything special, you still need to deal with the backups on a workload basis.
-
@scottalanmiller said in KVM and Back Ups:
@fuznutz04 said in KVM and Back Ups:
However, I'd like to explore the possibility of using KVM in a production scenario. Backups are obviously key here. Automated, live, nightly snapshots (entire VM) is what I am looking for.
What would be the best way to achieve this? Assuming I am running a single KVM server with local storage.You come back to the fundamental question of... why are you approaching backups this way?
Backups have never been something that we think of at the hypervisor level for decades, all of a sudden its the hot new "everyone has to do it" way. But it has all kinds of limitations and should only be a consideration for certain workloads, and only one of the options. Backups are always by workload, never by platform. It's fundamentally a flawed way to think of backups because it hides the scope and complexity of getting reliable backups and causes all kinds of problems.
Under no circumstances can anyone answer how you should take backups based on knowing your platform - no matter what hypervisor or OS you use, your backups have to be a decision based on your workloads.
So in this case, I’d have a PBX, a Wordpress site and eventually some windows server workloads. All of them are individually backed up via scripts at the OS level.
What I’m after is an “instant” type restore. For example, I had a developer fubar a server the other day. Completely unrecoverable. It was hosted at vultr, and I used their backup service. I was able to completely restore the server from their snapshot backup. That’s what I am after.
-
@fuznutz04 said in KVM and Back Ups:
So in this case, I’d have a PBX, a Wordpress site and eventually some windows server workloads. All of them are individually backed up via scripts at the OS level.
That's all that you want. Just the OS level backups.
-
@fuznutz04 said in KVM and Back Ups:
For example, I had a developer fubar a server the other day. Completely unrecoverable. It was hosted at vultr, and I used their backup service. I was able to completely restore the server from their snapshot backup. That’s what I am after.
That's not crash consistent. So THAT level of backup KVM can do without anything special, it's just taking a snapshot of the storage. You have that with any system because it is done at the storage layer.
-
For most workloads, like the ones that you have, you can just shut down the VM, and take a totally safe backup. Then you only need to take application level backups and do a restore from them for the latest data. Even ProxMox for their "safe" backups powers down your VMs first, that's how they handle it.
-
@scottalanmiller said in KVM and Back Ups:
@fuznutz04 said in KVM and Back Ups:
For example, I had a developer fubar a server the other day. Completely unrecoverable. It was hosted at vultr, and I used their backup service. I was able to completely restore the server from their snapshot backup. That’s what I am after.
That's not crash consistent. So THAT level of backup KVM can do without anything special, it's just taking a snapshot of the storage. You have that with any system because it is done at the storage layer.
What tools can I use to do that (scheduled) with KVM on fedora?
-
@fuznutz04 said in KVM and Back Ups:
@scottalanmiller said in KVM and Back Ups:
@fuznutz04 said in KVM and Back Ups:
For example, I had a developer fubar a server the other day. Completely unrecoverable. It was hosted at vultr, and I used their backup service. I was able to completely restore the server from their snapshot backup. That’s what I am after.
That's not crash consistent. So THAT level of backup KVM can do without anything special, it's just taking a snapshot of the storage. You have that with any system because it is done at the storage layer.
What tools can I use to do that (scheduled) with KVM on fedora?
If you want the Vultr style (or ProxMox risky style), you can do that right from the storage layer. So first determine the storage that you are going to use. ZFS, BtrFS, XFS, LVM, etc. Then you use the native tools (if you want) to snap it. Everything except the scheduling is just built in.
-
To answer this, what I did for my lab is setup UrBackup and just installed the agent into each of my VM's.
It works and is simple enough to restore from.
-
It's for this kind of stuff that ZFS and BtrFS has been made popular, because they handle this very well.
-
@scottalanmiller said in KVM and Back Ups:
@fuznutz04 said in KVM and Back Ups:
@scottalanmiller said in KVM and Back Ups:
@fuznutz04 said in KVM and Back Ups:
For example, I had a developer fubar a server the other day. Completely unrecoverable. It was hosted at vultr, and I used their backup service. I was able to completely restore the server from their snapshot backup. That’s what I am after.
That's not crash consistent. So THAT level of backup KVM can do without anything special, it's just taking a snapshot of the storage. You have that with any system because it is done at the storage layer.
What tools can I use to do that (scheduled) with KVM on fedora?
If you want the Vultr style (or ProxMox risky style), you can do that right from the storage layer. So first determine the storage that you are going to use. ZFS, BtrFS, XFS, LVM, etc. Then you use the native tools (if you want) to snap it. Everything except the scheduling is just built in.
What is the latest recommendation for storage now? LVM?
-
@DustinB3403 said in KVM and Back Ups:
To answer this, what I did for my lab is setup UrBackup and just installed the agent into each of my VM's.
It works and is simple enough to restore from.
Right, that's often the better option. It's safer than hypervisor level backups, and if set up well, is just as fast and more flexible.
-
@DustinB3403 said in KVM and Back Ups:
To answer this, what I did for my lab is setup UrBackup and just installed the agent into each of my VM's.
It works and is simple enough to restore from.
I have to check that out tonight in my lab
-
@fuznutz04 said in KVM and Back Ups:
@scottalanmiller said in KVM and Back Ups:
@fuznutz04 said in KVM and Back Ups:
@scottalanmiller said in KVM and Back Ups:
@fuznutz04 said in KVM and Back Ups:
For example, I had a developer fubar a server the other day. Completely unrecoverable. It was hosted at vultr, and I used their backup service. I was able to completely restore the server from their snapshot backup. That’s what I am after.
That's not crash consistent. So THAT level of backup KVM can do without anything special, it's just taking a snapshot of the storage. You have that with any system because it is done at the storage layer.
What tools can I use to do that (scheduled) with KVM on fedora?
If you want the Vultr style (or ProxMox risky style), you can do that right from the storage layer. So first determine the storage that you are going to use. ZFS, BtrFS, XFS, LVM, etc. Then you use the native tools (if you want) to snap it. Everything except the scheduling is just built in.
What is the latest recommendation for storage now? LVM?
LVM, ZFS, BtrFS are all fine. I've not used this but here is a script to do LVM backups...
-
@scottalanmiller said in KVM and Back Ups:
@fuznutz04 said in KVM and Back Ups:
@scottalanmiller said in KVM and Back Ups:
@fuznutz04 said in KVM and Back Ups:
@scottalanmiller said in KVM and Back Ups:
@fuznutz04 said in KVM and Back Ups:
For example, I had a developer fubar a server the other day. Completely unrecoverable. It was hosted at vultr, and I used their backup service. I was able to completely restore the server from their snapshot backup. That’s what I am after.
That's not crash consistent. So THAT level of backup KVM can do without anything special, it's just taking a snapshot of the storage. You have that with any system because it is done at the storage layer.
What tools can I use to do that (scheduled) with KVM on fedora?
If you want the Vultr style (or ProxMox risky style), you can do that right from the storage layer. So first determine the storage that you are going to use. ZFS, BtrFS, XFS, LVM, etc. Then you use the native tools (if you want) to snap it. Everything except the scheduling is just built in.
What is the latest recommendation for storage now? LVM?
LVM, ZFS, BtrFS are all fine. I've not used this but here is a script to do LVM backups...
Awesome. I’ve used ZFS in the past, but it was on a freeNas box I was testing. Seemed pretty good at the time (zfs)
-
@fuznutz04 said in KVM and Back Ups:
@scottalanmiller said in KVM and Back Ups:
@fuznutz04 said in KVM and Back Ups:
For example, I had a developer fubar a server the other day. Completely unrecoverable. It was hosted at vultr, and I used their backup service. I was able to completely restore the server from their snapshot backup. That’s what I am after.
That's not crash consistent. So THAT level of backup KVM can do without anything special, it's just taking a snapshot of the storage. You have that with any system because it is done at the storage layer.
What tools can I use to do that (scheduled) with KVM on fedora?
QEMU has both internal and external snapshots. Internal are inside of the qcow2 file, external are redirect on write snapshots. The external are the more robust since they don't do full COW like the internal ones.