The Cohesity Dataprotect Plugin extends Velero's backup and restore capabilities for Kubernetes workloads, with a focus on Virtual Machines (VMs), Network Attachment Definitions (NADs). It enables advanced backup and restore workflows by applying custom logic and metadata management to these resources.
The plugin implements several item actions to enhance Velero's handling of specific Kubernetes resources:
VM Backup Item Action: Adds a unique label to each Virtual Machine (VM) during backup and ensures that associated Network Attachment Definitions (NADs) are included in the backup set.
VM Restore Item Action: Removes the custom label from VMs during restore and ensures that the required NADs are restored alongside the VM.
NAD Backup Item Action: Handles backup operations for Network Attachment Definitions, logging their inclusion for traceability and debugging.
NAD Restore Item Action: Restores NAD resources, patching their metadata as needed (such as updating the namespace in the netAttachDefName) to ensure correct restoration in the target cluster.
PVC Restore Item Action: Patches Persistent Volume Claims (PVCs) during restore to remove fields and annotations that would otherwise prevent rebinding to new Persistent Volumes (PVs). This action is especially relevant for PVCs with a "Retain" reclaim policy, enabling them to be rebound after restore.
Migration Restore Item Action: Supports migration use-cases by applying transformation rules (from a ConfigMap) to resources such as StorageClasses, Secrets, and PersistentVolumes during restore. This enables automated resource adaptation for migration workflow