Data Backup and Recovery

Snapcreator and KVM-plugin configuration: Correct value for KVM_VM_CONFIG_DIR needed for RHEV



a customer is using snapcreator (version 4.0P1) in order to backup some virtual machines in a RHEV-Environment (RHEL6.5 with RHEV-Manager 3.2.4-0.44). Now we are searching for the correct value for "KVM_VM_CONFIG_DIR". The default "/etc/libvirt/qemu" is not valid, this directory doesn't exist on the host. Does anybody know which is the correct directory for RHEV? Is there more documentation for the KVM-plugin than the chapter in the Installation and Administration Guide?

Thanks in advance for any help and best regards




Hi Martin,

I've got good news and bad news. The bad news is that the KVM plug-in wasn't actually meant for RHEV. Yes, RHEV uses KVM, but as you've already found, it's not setup the same way. The VM specific directories are not meant to be human readable. Here is the good news - you can still use Snap Creator to backup your RHEV guests and the applications that are virtualized by RHEV. Hopefully you're using templates for your server builds, and not building from scratch each time.. A template could be a traditional template as found in RHEV or it could also be a specific build pulled using PXE. Either way, you should have a couple of standard templates at your disposal. For example, templates for: large database, small database, web server, infrastructure server, etc. Here is why: you can build a new VM from template much faster than you can recover a VM from backup.

On the other hand, you have every right to be concerned with your application data. Hopefully you're using your NetApp for SAN or NAS for that app data. Assuming that's the case, then you want to have Snapshots, then have SnapMirror do it's thing with an offsite controller, and then maybe to tape or VTL. Or something similar. Regardless, Snap Creator works with both RHEL (as the guest OS) and in many cases, the application that is being virtualized. Let's assume that you're building your VMs from a template, and for the sake of argument, you're virtualizing a MySQL database. Let's also state that you've mounted an NFS volume to /var/lib/mysql. Your Snap Creator activities would then be:

  1. Tell MySQL to enter hot backup mode (can use MySQL plug-in or use custom "pre" script)
  2. Tell RHEL to flush all buffers (sync; sync; sync) (use customer "pre" script)
  3. Tell the NetApp controller to take a snapshot of the NFS volume
  4. Resume the MySQL database (MySQL plug-in or customer "pre" script)
  5. Trigger SnapMirror to mirror between sites

If you absolutely have to take periodic snapshots of the VMs (or the volume containing the boot disks), then you can set up a different policy to do that every 3 or 4 weeks. However, that will have to be a "crash consistent" snapshot.. that is to say that the snapshot will capture all of the VMs "in flight". Most of the time this is ok, as RHEL uses a journaled file system, so if a VM was recovered from backup, any inconsistent data would be handled by RHEL using the replay logs of the file system to reconstruct/repair any inconsistencies.

hope this helps,



Hello Jon,

thanks for the explanation! Maybe this could find its way into the next Snapcreator documentation ... I discussed the issue with the customer and we agreed to try the vsc4rhev - although it's still "beta" - and see if it works.

Best regards