Safety First: Backup Your Kubernetes Clusters..or Pods… or Namespaces
In our digital world, things can go wrong. And when they do, they can go very wrong, very fast. Whether it’s a failed experiment with a new application feature, the dreaded blue screen, or perhaps a phone that’s non-responsive (a brick), that moment of complete loss raises everyone’s blood pressure. How do you recover? With that backup copy you made just last night, right?
Let’s be honest — backups, unless they’re automated, are the last thing we think about. It’s just not that…exciting. For most of us, the last time we backed up our phones, smartwatch, music library, photo albums, or configuration files isn’t necessarily “recent.”
In a nod to World Backup Day, I reached out to the Velero team and chatted with its new Community Manager, Orlin, to get the latest information about Velero. Here’s what I learned:
OSPO: Tell us a little bit about Velero — an introduction for newcomers.
Orlin: Velero is an open source tool for safely backing up and restoring resources in a Kubernetes cluster, performing disaster recovery, and migrating resources and persistent volumes to another Kubernetes cluster.
Velero offers key data protection features, such as scheduled backups, retention schedules, and pre- or post-backup hooks for custom actions. Velero can help protect data stored in persistent volumes and makes your entire Kubernetes cluster more resilient. Because, as we all know, “stuff” happens.
OSPO: So it sounds like Velero could be something useful if I’m the Kubernetes type. Tell me how it works — give me the TL;DR version if you could.
Orlin: Well, I don’t know about TL;DR, because when you’re backing things up, you really should get into the details to do it right. And you don’t want to get it wrong, because it’s your safety net. If you’re new to Velero, I think the best place to start is with Tiffany Jerringan’s “How to” video on the Tanzu Developer Portal. It’s important to note Velero works agnostically — it doesn’t care if you are a devoted Tanzu user or not. In this video, Tiffany starts you out with setting up a Kubernetes cluster and from there she guides you through setting up Velero.
Then…CHAOS! (BOOM! POW! ZAP!) Tiffany shows you how to wreak havoc on your own hard work:
OSPO: So, okay, that’s pretty comprehensive…and kinda fun, too. What other resources would you recommend? Got a Netflix-like playlist I could binge watch?
Orlin: Hahaha! Yes, I do. Thanks for asking.
Here are my favorites:
The Velero Youtube channel brims with all kinds of information on Velero. Turn off Netflix or Hulu and start watching! Carlisia Thompson, Velero’s maintainer emeritus, (now Knative maintainer — WOOT!) walks through another Velero introduction in her Rawkode Academy presentation.
Of course, Velero’s been to numerous KubeCons and featured in CNCF webinars. Those are always good stops to learn more. And the Velero community – they’re also creating content. That DevOps guy and Venkat Nagappan posted vlogs for your enjoyment. Venkat Nagappan explains the basic requirements, and then walks you through various options: backup clusters or namespaces, pods, etc. He also shows you how to customize your backup by invoking special exclusions (“everything but …” parameters) such as config maps. He makes a special note of the expiration date of any backup, which is 30 days unless you change that default value.
OSPO: So, what’s new with Velero?
Orlin: Well, we’ve just released version 1.8. It includes some fairly major changes and updates:
Velero plugins now support handling volumes created by the container storage interface (CSI) drivers of cloud providers
IPv6 dual stack support
Enhancements to E2E test cases
Read through the documentation before you upgrade. It’s important to note that starting in v1.8, Velero will only support Kubernetes v1 CRD. This means that Velero v1.8+ will only run on Kubernetes v1.16+. Before upgrading, check to make sure you are running a supported Kubernetes version. For more information, see our compatibility matrix.
And work on v1.9 has already started.
OSPO: For a look into the future of Velero, I took a peek at the v1.9 roadmap. With 11 P0 and 5 P1 issues on the 1.9 roadmap, it’s clear there’s plenty of activity in the Velero Project. A couple of roadmap items caught my attention: the addition of a new data movement layer and my favorite, two P0 nominations for “improving Velero documentation.” Documentation: it’s a user’s best friend.
In my final question to Orlin, I asked about the people behind the scenes — the community that makes the “version magic” happen.
Orlin: We’ve got a team of experts from Kasten, SUSE, Red Hat, and VMware, but we’re always keen to get more people involved. You can reach out to us on GitHub — ask questions, attend community meetings — whatever you are comfortable with, we’re here for you!
You can chat with the Velero team on Kubernetes Slack in the #velero channel and follow us on Twitter at @projectvelero. Please join us during our online community meetings every Tuesday and catch up with past meetings on YouTube on the Velero Community Meetings playlist.
Now don’t forget to back up your [fill in the blank]!