In addition to commercial products intended for backup for Kubernetes clusters – Kasten from Veeam, Trilio and Pure’s Portworx – Velero’s open source project aims to become a standard.
“Velero’s ambition is to accommodate as many scenarios as possible,” said Shubham Pampattiwar, chief engineer at Red Hat, who oversees contributions to Velero, and who met with the sister publication ComputerWeekly. LeMagIt during a recent IT press tour event.
“We have developed, for example, hooks or modules that suspend an activity for the time necessary to backup its data so as not to record it with inconsistencies,” Pampattiwar said.
“But also modules that will perform asynchronous backups so that the data is saved without stopping production. And an engine that parallelizes several backup and/or restore processes so that activity can be restored as quickly as possible in the event of a cyberattack.
Chances are that Dell, Veritas, or IBM could integrate Velero as a Kubernetes extension for their backup productswhile Red Hat and VMware could enrich their Kubernetes offers, namely OpenShift and Tanzu, with a native backup function.
A storage process assembler
Originally called Heptio Ark, Velero currently offers only three functions. These are backup, backup and restore planning. These take the form of a CRD – a Kubernetes CustomResourceDefinition – or a functional extension of Kubernetes and its configuration defined in the ectd registry to configure the whole cluster.
Velero does not implement the backup functionality as such – rather it acts as an engine to manage the functionality on the cluster that can perform the backup. It handles snapshots, for example, offered through the CSI Drivers provided by vendors for block storage, Restic or Kopia for file backup, or the Kubernetes API for emergency volumes in object storage mode.
“The availability of an increasing number of modules that can integrate with the surrounding infrastructure is the advantage of Velero,” said Pampatiwar. “For example, it is thanks to this that we can connect via API to cloud hosts to protect their resources. For the user, everything is transparent. They schedule their backup or perform restores without having to worry about the underlying infrastructure.
On the way down, the user executes or schedules the execution of commands such as “velero backup create
Regarding the infrastructure that hosts the backups, it can be an S3 cloud volume or a file volume. All it takes is a module that defines the destination storage that the admin can point to in the backup settings. The administrator can enter, for example, “–provider aws” or “–provider Portworx” followed by necessary details such as volume name or access credentials.
Similarly, hooks are maintenance scripts suitable to run before or after backup functions.
For example, to back up files from a working pod running on a Linux system, simply define a “pre-hook” when deploying the pod that instructs a container to run the command “/sbin/fsfreeze” – where “freeze” stops access before saving – then command “/sbin/fsfreeze” to unfreeze it and re-enable I/O. In the same way, it can act on requests made by application APIss, sent in JSON format, at restore time for example.
A plug-in engine for backup
Pampattiwar admits that performing all the backup functions from the command line could be complex for system administrators. But according to him, it is a detail.
“The appeal of Velero is that it’s open source,” Pampattiwar said. “This means that it can be used by all storage vendors who have developed a CSI driver for their solution that is recognized by Kubernetes. Now, vendors can integrate Velero functionality into a graphical console to administer systems. »
“The challenge for Velero is to focus on mechanics,” Pampattiwar said. “It’s a platform that’s raw enough that anyone can come up with improvements that will be useful to a lot of people. It is up to everyone how they want to implement the final product so that it is easy to use for their customers.
Pampattiwar explained that storage vendors can only offer local backups with their CSI drivers. The first problem here is that these backups are potentially non-functional because they do not guarantee data consistency before and after backup operations. The second is that these backups cannot be restored to a different infrastructure. Integrating Velero into their products would provide reliable multicloud protection.
“Commercial backup products come pre-packaged. Velero does not have this ambition at the moment. Instead, Velero wants to be a plug-in engine, capable of backing up for everything, usable by new storage products as well as legacy incumbents,” said Pampattiwar, who promised new features arriving on a regular basis. to facilitate backup processes.