System Tools‎ > ‎

Managing your Stateful Workloads in Kubernetes

posted May 5, 2020, 1:48 PM by Chris G   [ updated May 5, 2020, 1:49 PM ]

Managing your Stateful Workloads in Kubernetes


Kubernetes as we know, is currently the most popular container orchestration tool used to Scale, Deploy and Manage containerised applications. In its initial days, kubernetes was mostly used to run web-based stateless services.

However if you ever wanted to run stateful services like a database, you either had to run them in virtual machines (VM) or as a cloud-service. But with the rise of the kubernetes based hybrid-cloud, many users want to deploy stateful workloads also on top of kubernetes based clusters.

Stateless and Stateful Workloads :

The Kubernetes sweet-spot is running stateless services and applications, which can be scaled horizontally. By keeping state out of applications, Kubernetes can seamlessly add, remove,restart and delete pods to keep your services healthy and scalable. Developing a stateless application is, without question, the easiest way to ensure that your app can scale with Kubernetes.

A key point to keep in mind is that statefulness requires persistent storage. An application can only be stateful if it has a place to store information about its state, and that information should be available on demand to read in future.