Kubernetes storage: easily manage statefulsets, PVs & PVCs

Run stateful services including MySQL, Cassandra, Redis and Postgres on Kubernetes

Kubernetes is an open-source system for automating the deployment, scaling, and management of containerized applications. It is based on technology used to run Google’s own applications and can operate in on-premise, hybrid, and public cloud environments. Because of this flexibility, Kubernetes has become a popular choice in complex enterprise environments. However, as enterprises adopt containers, they need a Kubernetes storage solution that provides HA, backups, snapshots, encryption, monitoring integration, and more. If you are thinking about running applications like MySQL, Cassandra, Redis, Postgres, or any other stateful services on k8s, this guide about Kubernetes persistent storage is for you.

Problems with stateful apps on Kubernetes today:

  • k8s stateful container primitives don’t solve data management issues
  • Attaching block devices is a slow and brittle process
  • No support for snapshots
  • Increasing your storage capacity without downtime is difficult

Portworx Provides Kubernetes Storage

Kubernetes storage & persistence for k8s statefulsets
Kubernetes storage for Mysql
Kubernetes storage for Cassandra
Kubernetes storage for Redis
Kubernetes storage for Redis
Kubernetes storage for Postgres

Install Portworx as a daemon set via kubectl

Getting started running stateful services on Kubernetes is easy. Portworx can be installed directly via the kubectl command line and will run as a Daemon set. A Portworx container runs on each host and creates a cluster-wide storage fabric from your underlying block devices.

Use Portworx with Kubernetes for the most common stateful apps

Kubernetes contains a variety of stateful primitives that, when combined with Portworx, allow enterprises to reliably run and manage the most common stateful applications such as MySQL, Cassandra, Redis, Postgres, and more. For instance, Portworx provides a flexible storage layer for  Kubernetes statefulsets, the recommended way to run database containers that provide the semantics required by topologies like master/slave (e.g. MySQL) and ring (e.g. Cassandra). You can easily configure a statefulset for a popular database which will automatically provision storage using the underlying Portworx volume driver.

More than just Kubernetes storage.  Container data services.

Many enterprises who have tried to use Kubernetes for stateful applications at scale have stumbled when it comes to using the platform for services like databases, queues, and key-value stores. Even when running with recommended storage drivers like Amazon EBS or Google Cloud disks, there are problems such as stuck EBS drives and Auto Scaling Groups deleting drives.

Portworx solves all these problems, while also providing snapshots, off-site backups, encryption of data in flight and at rest, and full automation of data management. Portworx is more than just Kubernetes persistent storage. It is a complete container data services platform.

True data management using Kubernetes

Portworx’s deep integration into Kubernetes gives you the benefits of Portworx container data services, directly through your scheduler. It provides a management layer for storage that is decoupled from compute. For instance, you can increase your storage pool without container downtime and encrypt all your k8s volumes at the container granular level. Additionally, container-granular replication makes failover less error prone and much faster, meaning you avoid problems like stuck EBS drives.

Learn more about how to run Portworx as part of your Kubernetes  deployment