Backup and restore VMs with KubeVirt
Portworx Backup now enables you to back up and restore KubeVirt Virtual Machines (VMs) running on Kubernetes clusters in an enterprise environment. Furthermore, this feature allows you to back up and restore VMs migrated from VMware environments and VMs running on OpenShift Virtualization. Portworx Backup detects these VMs to provide end to end data protection for VMs, VM disks, resource configuration, and network configuration data.
KubeVirt is Virtual Machine management add-on to provide a unified platform for VM workloads in the Kubernetes environment and allows VMs to run parallel with containers on Kubernetes, OpenShift, and other environments. With KubeVirt, you can run VM workloads and Kubernetes native workloads without requiring additional management tools or dedicated pipelines.
Prerequisites
- Ensure that KubeVirt v1.0.0 or below and its dependent modules are installed on all managed Kubernetes clusters, source and destination clusters.
- Make sure that
qemu-guest-agent
is installed on all the VMs to add KubeVirt specific pre-exec and post-exec rules.
Following table lists out the backup and restore workflows along with the scenarios supported by Portworx Backup as part of this feature:
Resource types | Support |
---|---|
Clusters | Backup and restore on OCP, EKS, GKE, and Kubernetes Vanilla clusters |
Backup locations | Backup and restore of VMs on S3 compliant object store and NFS backup locations |
Cloud accounts | All the cloud accounts that Portworx Backup currently supports |
Pre-exec and post-exec rules | Freeze/thaw (unfreeze) rules for crash consistent backups |
Backup types | Manual and scheduled backups |
Backups and restores |
Backup and restore workflows supported by Portworx Backup for the VM resources is outlined in the following table:
VM resources | Support |
---|---|
PVCs (CSI-based and non-CSI based) | Yes |
Hotplug volumes | Yes (Supports hotplug volumes with persist enabled) |
Kubernetes secrets (used as startup scripts, networkDataSecretRef) | Yes (Manual selection of these resources are required during creation of backup) |
NetworkAttachmentDefinition | |
Network Policy | |
Service object | |
Data volumes (DV) | No (Supports backup and restores of PVCs associated with data volumes only) |
Data volume template (serves as a template to create data volume for a VM) | No (Supports backup and restores of PVCs associated with data volume templates only) |
No |
Portworx Backup does not support backup and restore of VM instances configured with multiple network interfaces and VMs created with virtualMachineInstance.
📄️ Backup rules for VMs
File-system consistent backups require you to freeze IO operations before backing up the volumes and unfreeze them after creation of backups. If you want to take file-system consistent backups, here are the sample values for pod selector and action field to create pre-exec and post-exec rules.
📄️ Backup and restore VMs
To backup and restore your KubeVirt VMs (or namespaces that contains your VMs):