What is the state of state at enterprises? Kubernetes and containerized environments were built to run on stateless machines. But now as this orchestration goes mainstream, teams are looking to apply this resource efficiency and scalability to the rest of the stack. To stateful environments like databases and analytics workloads. To web servers and gaming sites. To anywhere that needs persistent data.
The New Stack publisher Alex Williams sat down with Diane Patton, technical marketing engineer at NetApp, Jenny Fong, vice president of marketing at Diamanti, and Sriram Subramanian, an analyst at IDC, to learn how Kubernetes has evolved into the preferred infrastructure layer for stateful environments.
Patton argues that sure Kubernetes is logical when applied to anything that needs persistent data, but there are always alterations.
“In that case, you want to maintain that content, perhaps in some external place outside that container, outside that pod, in order to be able to access that, should that pod get redeployed, perhaps on a different node,” said Patton.
She points out that Kubernetes can be applied successfully to stateful databases:
- They have a stable hostname
- They have an ordered deployment
- They have a separate volume per instance
Fong also believes this comes from the sheer logic that very few applications don’t require a database so it’d make sense teams would want the benefits of containers to stateful pieces of their stack too.
She said, “The benefits of what we call immutable infrastructure are felt everywhere. While the developers building those like microservices apps were probably the first groups to really recognize the power of containers and of Kubernetes, I think everybody understands how valuable it is now — to have this capability to be able to basically define your application as a flat-file and being able to redeploy that as you go through test, development, staging, to production.”
Patton echoed that Kubernetes has the ability to have a certain object that is able to deploy databases that can be interacted from front-end applications.
Subramanian has come around from when he didn’t think Kubernetes should be stateful at all. He now acknowledges its benefits because he says the only way to fully serve enterprise customers is to leverage that container agility across an enterprise stack. Although he continues to be hesitant to say this immutable infrastructure is an answer to everything.
Fong agrees that it’s not a perfect fit yet. She says that as more and more organizations are adopting this container-based infrastructure and then applying it to stateful applications, teams are looking for a set of data services at the level that they are used to having in the virtualized environment in that newer containerized environment.
This becomes increasingly more complicated as these cloud-native applications don’t need to rely on the underlying infrastructure. This means they can’t anymore rely on the infrastructure for things like availability, resiliency, and no-fault tolerance.
Subramanian says that then “adds additional onus to the application developer. How do we recover from the failure? What do you need to log? What do you need to monitor? What do you need to trace,? These things require an additional, an advanced level of technological maturity.”
He still sees customers at various maturity levels. He says they are reaching the eventual environment that they want to get to, with a greater potential to update the architecture, but they still aren’t having their expectations met quickly.
And after that infrastructure is up and running, Subramanian says we often have yet to clarify:
- What is a cloud native application?
- What is a Kubernetes platform and what does it do?
- What does a containers infrastructure do?
- What is expected from the application developers?
Listen to this episode of The New Stack Analysts to hear more about where we are heading and how we should be able to handle state in any given situation.
NetApp and Diamanti are sponsors of The New Stack.
Photo by Clément Falize on Unsplash.