Most people I speak with realise Kubernetes is no longer this new thing we should be afraid of.
– It’s more than 8 years old
– Version 1.0 was released way back in July 2015
– It has millions of users worldwide
– Over 4k companies are contributing to it
However, I’m regularly asked if it’s “ready for production”. Well, here goes…
Any platform being deployed to production needs first-class support for the three pillars of cloud computing:
Compute is easy, comes first, and Kubernetes has handled compute since the beginning.
Networking comes second, requires support from the 3rd-party ecosystem, and Kubernetes has had strong networking for several years.
Storage is the hardest, always comes last, and requires strong 3rd-party support. This has been the missing piece.
Getting Kubernetes ready for production-grade storage and data management
Basic support for storage and data started inside of Kubernetes with things like the container storage interface (CSI) and the persistent volume subsystem (persistent volume claims, storage classes, snapshot APIs etc.). However, first-class support was always going to come from the outside via 3rd-parties building on these foundations.
As I head to KubeCon, I’m excited that Commvault is bringing world-class storage and data management solutions to Kubernetes.
NOTE: The remainder of this article is sponsored by Commvault. However, I only put my name alongside people, technologies, and companies I believe in.
What I like about Kubernetes + Commvault
First up, Commvault has been protecting containerised workloads on Kubernetes for a while. However, the following three enhancements will take things to new levels.
Full Cluster Protection (the Easy button). It’s now possible to onboard a Kubernetes cluster and just backup everything. This is ideal if you’re unsure what needs protecting and what doesn’t – Commvault guarantees to protect everything in a cluster, allowing you to sleep at night in the knowledge you haven’t missed anything. It even detects new objects before each backup run.
Namespace Level Protection (the intermediate button). This is great if you know a bit more about your environments but still aren’t exactly sure what comprises individual applications. Just tell Commvault the Namespaces that need protecting, and Commvault takes care of the rest.
These new options are over and above the existing Application Group Protection options. However, no matter which levels you protect at, Commvault lets you recover at very granular levels. For example, you can restore entire clusters, individual Namespaces, individual applications, just application data, or just application configuration files. And all options allow for out-of-place recovery so you can selectively test and then copy back to your live environments.
Another feature I like is protecting the Cluster Store (etcd). Every Kubernetes 101 session teaches that the cluster store is the only stateful component of the Kubernetes control plane and that protecting it is vital. However, this has never been simple. Well… it couldn’t be easier in the latest versions of Commvault — toggle a single switch and Commvault will backup your Cluster Store!
Away from the new features, I like how Commvault implements all of this with zero footprint in your clusters. And of course, everything is wrapped in what you’d expect from Commvault:
– Support contracts
– Service level agreements
– Single pane of glass for all data management needs