How Kubernetes Can Manage Stateful Data
How Kubernetes environments might be able to offer hooks for storage, databases and other sources of persistent data still is a question in the minds of many potential users. To that end, a new consortium called the Data on Kubernetes Community (DoKC) was formed to help organizations find the best ways of working with stateful data on Kubernetes.
In this latest episode of The New Stack Makers podcast, two members of the group discuss the challenges associated with running stateful workloads on Kubernetes and how DoKC can help.
Participants for this conversation were Melissa Logan, principal, of Constantia.io, an open source and enterprise tech marketing firm, and director of DoKC; Patrick McFadin, vice president, developer relations and chief evangelist for the Apache Cassandra NoSQL database platform from DataStax; and Evan Powell, advisor, investor and board member, MayaData, a Kubernetes-environment storage-solution provider.
TNS editor-in-chief Joab Jackson hosted the podcast.
Given the immense challenges of shifting applications and operations to Kubernetes clusters, the idea of attaching storage and databases to such a stateless and complex containerized environment can seem especially daunting. Still, with the advent of community support that groups such as DoKC provide and the availability of working tools for Kubernetes storage and data management, many DevOps teams are forging ahead anyway.
“What we’ve seen — and this is certainly the case — is that there is a large group of Kubernetes people that says, you know, stateful data never belongs in Kubernetes,” McFadin said. “But just like everything else, the infrastructure teams are saying, ’hold my beer — we’re doing it anyway.’”
Indeed, Kubernetes stateful data storage and management is a different animal compared to years past. “These workloads that themselves are ‘cloud native or loosely coupled,’ my workload and Team A should not be dependent on your workload in Team B, or another workload and team C,” Powell said. “So, the whole paradigm of shared storage, where you have ‘n’ workloads all being dropped into the same bucket of data — which is what traditional shared storage does — doesn’t really fit in the new world of cloud native data.”
The goal of DoKC has always been to “bring people together to figure out how to run stable workloads on Kubernetes,” Logan said. “It has been a challenge…Kubernetes was not originally intended to run stateful workloads,” Logan said. “Now, the early [adopters] people saw some success, but there’s still a lot of challenges with it. And so the community was formed to bring people together to Kubernetes.”
For those interested in community support for their Kubernetes data-management initiatives, DoKC holds regular meetings. “The idea is to get people who are doing data on Kubernetes or who have something to share, both at a high level, as a practitioner [offering] how-to tutorials, as well as, ‘hey, here’s how we think the future could be with data on Kubernetes,'” Logan said. “So, we host a couple of meetups every week, sometimes more, and bring all those people on to help share that knowledge.”