Traditional backup and disaster recovery applications tend to not work well in containerized environments. These types of data protection products typically focus on protecting individual servers and the applications running on them. In a Kubernetes environment, however, applications are often widely distributed, sometimes spanning multiple clouds and data centers. Additionally, containers tend to be highly transient, which also poses a major challenge for backup applications. The only way to adequately protect these applications is to use a backup tool that's specifically built to work with Kubernetes.
Although not as pervasive as more traditional backup and disaster recovery offerings, there are a number of Kubernetes backup tools available today and several other vendors have products in the works. A few months after announcing its partnership with Kasten to deliver a Kubernetes-native backup offering, Veeam acquired Kasten on Sept. 25, speeding up the integration of the two companies' products. Likewise, Zerto announced its Zerto for Kubernetes product, which is due to be available in 2021. Cohesity also recently launched its own application for protecting Kubernetes. Clearly, Kubernetes is gaining traction in the backup space.
Here, we examine the features and functionality of six prominent Kubernetes backup tools.
Catalogic Software KubeDR
Catalogic Software's open source Kubernetes backup tool, KubeDR, is built to simplify the normally complex task of backing up Kubernetes deployments. Rather than requiring administrators to tag the resources they want to protect, KubeDR automatically backs up the cluster configuration, its metadata and the certificates.
KubeDR also simplifies the recovery process. As it backs up all of the cluster components, it can perform automated cluster restorations and easily rebuild a failed cluster.
KubeDR backs up Kubernetes data to AWS S3 and supports the use of retention policies. The software also offers features such as automated cleanup and the ability to pause and resume backups on an as-needed basis.
Kasten Inc. markets its Kubernetes data protection product, K10, as being more than just a Kubernetes backup product. It refers to it as a data management platform. K10 is built to run within its own namespace on an organization's Kubernetes cluster and supports all of the major Kubernetes distributions. It comes with an intuitive, GUI dashboard-based management tool that supports the command line. The software simplifies the backup process by automatically discovering applications, including those that span volumes or databases. Additionally, K10 includes numerous security features such as role-based access control and encryption for data at rest and in motion.
The most noteworthy feature of K10 is its support for various industry standards. In addition to supporting numerous Kubernetes distributions, K10 also supports data services such as PostgreSQL, MongoDB, MySQL, Cassandra and AWS Relational Database Service. It also supports storage from a wide range of vendors and cloud providers, including NetApp, Dell EMC and Microsoft.
Learn the core capabilities and features of the Kubernetes container management platform, as well as its benefits and limitations, in this five-minute video.
PX-Backup by Portworx Inc. is an enterprise-grade application and data protection offering for Kubernetes. It's built to back up any Kubernetes application at the namespace, Pod or tag level and work with multiple namespaces.
PX-Backup's scalability enables admins to create on-demand backups or easily schedule backups of hundreds of applications with a single click. PX-Backup supports applications that span multiple databases and can restore applications to the Microsoft, Amazon or Google cloud.
Pure Storage recently announced its intent to acquire Portworx, adding to its current container platform and data services.
Rancher Labs isn't a backup vendor, but rather a company that provides a full software stack for organizations that use containers. Among the capabilities this management stack offers is Kubernetes backup.
Rancher is built to work with a variety of container platforms and its backup works differently, depending on which type of container an organization is using. Organizations using Docker containers, for example, will need to use a series of Docker commands to create a tarball that acts as a backup of the Rancher server data.
Rancher currently supports backups for its K3 distributions, Rancher Kubernetes Engine and Docker deployments. It's worth noting that SUSE is acquiring Rancher, so it's possible that Rancher's backup capabilities will evolve under the new ownership.
Trilio's cloud-native Kubernetes data protection product TrilioVault is an infinitely scalable backup offering that an admin can install from the Red Hat OperatorHub. The software performs snapshot-based backup and restore operations to the cloud. However, TrilioVault is cloud-agnostic, which means that admins can back up applications from or restore to any Kubernetes or OpenShift cluster running on any cloud -- even hybrid clouds.
TrilioVault supports on demand or scheduled incremental backups. It offers point-in-time recovery of both containers and applications. Admins can restore applications to their original namespace or to a different namespace. Additionally, TrilioVault enables authorized users to perform self-service application recovery.
Velero is an open source backup and DR tool for Kubernetes clusters. It enables admins to run scheduled backups of an entire cluster or individual namespaces or labels. Additionally, its Backup Hooks feature gives admins the option of performing a custom operation just before or after a backup, as well as apply a retention schedule to backups.
In addition to being used as a Kubernetes backup and DR tool, organizations can also use Velero as a migration tool. Velero's capabilities allow admins to move Kubernetes resources from one cluster to another.
Key considerations for selecting a Kubernetes backup tool
While each of these vendors is noteworthy in its own way, there are certain things an organization must consider when evaluating Kubernetes backup tools.
- Data protection requirements. An organization should begin by considering its Kubernetes architecture and backup requirements. If it's using a cloud-based Kubernetes cluster, for example, it will need to ensure it chooses a product that works in the cloud the organization is using. Similarly, an organization with multiple clusters will likely need to select a product that can perform cross-cluster restorations.
- Key features. Features are a major consideration. Remember, not every Kubernetes backup product includes a GUI interface or the ability to create scheduled backups. An organization must consider which features are most important before settling on a product.
- Security and compliance. It's important to ensure the organization chooses a product that meshes well with its security and compliance requirements. Some Kubernetes backup tools place a high priority on security, while other offerings are more utilitarian and offer little in the way of security.
- Total cost of ownership. Of course, price is always an important consideration, but the organization must keep in mind that the TCO may include more than just the licensing cost. The vendor might also require the organization to purchase a support contract.
- Try before you buy. Once the organization narrows down its list of potential options, it should check to see if those Kubernetes backup tools offer a free trial. This will give the organization an opportunity to fully assess how well the product meets its needs before committing to purchase it.