The Container Storage Management Solution That Works Where Others Fail
Sometimes, providing storage to your apps is easy. If the apps are monoliths running on physical servers or VMs, you can connect them to databases or file systems easily enough. If they’re microservices hosted on a particular platform with integrated storage, that’s the obvious solution to use. And if you’re dealing with just one or two apps, it’s feasible to set up whichever custom storage configuration they require.
But what if you have thousands of containerized, microservices-based apps? What if they are hosted across a range of different platforms: private clouds, public clouds, on-premises servers and beyond? What if they need to connect to a multitude of databases, scale-out storage services or other storage volumes?
Few solutions are designed with your needs in mind. One is Portworx. As a storage platform designed to serve Kubernetes-based apps running across any distribution, any environment and at any scale, Portworx occupies a special niche within the storage market.
Here’s the story of how it got where it is today, what makes it different and where it’s headed next.
The benefits and limitations of CSI
To explain what Portworx does, it helps to talk about what it doesn’t do: provide storage to Kubernetes-based applications using the Container Storage Interface (CSI) specification.
If you know much about Kubernetes and stateful apps, you know that CSI is a way to expose storage to applications hosted in Kubernetes. Storage providers offer CSI plugins, which you can use to connect apps to their storage media.
There’s certainly nothing wrong with using CSI-based storage if it works for you–which it probably does if you have just a handful of stateful apps running in your Kubernetes clusters.
But the limitation of CSI-based storage solutions is that they create one-to-one mappings between containers and storage volumes, which makes them impractical to use at scale. Unless you enjoy manually configuring new storage volumes every time you need to launch a new container (and we’re guessing you don’t) CSI isn’t a great solution for large-scale environments.
A cloud-native vision
That’s where Portworx comes in. It enables data engineers and developers to deploy storage for containers based on any source with just a few clicks, without relying on CSI. That means storage provisioning can be easily automated, making it practical to connect thousands of stateful containers with the bits they need to do their jobs.
“The value of Portworx comes in when you start scaling and putting multiple stateful apps into production,” Andy Gower, Group Marketing Manager at Portworx, says. “If you have one container and one app, and you can set it and forget it, CSI probably works for you.” But not if you have “tens of thousands of containers running all day,” in which case you need the automation that Portworx delivers.
Ultimately, Gower says, the vision behind the Portworx platform is to “take the automation of Kubernetes and extend it to storage.” Kubernetes makes it easy to orchestrate most facets of containerized application deployment, such as scheduling containers across a cluster of servers. One thing it doesn’t orchestrate–arguably because some Kubernetes developers see the platform only as an orchestration solution for stateless apps, not stateful ones–is storage.
Portworx fills that void by letting engineers configure storage in an automated, scalable way “using language that Kubernetes understands,” as Gower puts it.
Stop "having to care" about your storage infrastructure
Portworx’s ability to automate container storage provisioning and management is only one of its selling points. Another major differentiator is that it works with Kubernetes-based apps that are hosted using any distribution and on any infrastructure, from public and private cloud to on-prem clusters.
Portworx "frees you from having to care about what your underlying storage or infrastructure is," Gower explains. “Today you might be on AWS, but tomorrow you want to move to GCP to take advantage of better pricing,” or perhaps you’re using multiple hosting platforms at once and need to manage storage for containerized apps across all of them. Either way, Portworx’s infrastructure-agnostic storage provisioning makes migration easy.
In contrast, Gower says, most other solutions that cater to storage provisioning and management for Kubernetes are tied to specific Kubernetes distributions or infrastructure platforms. They lack Portworx’s agnosticism.
From enterprise to startup
Gower’s education about infrastructure for Kubernetes started early. He began his career as a product manager and marketer for a now-defunct Kubernetes distribution developed by a major tech company.
In the course of that work, “I ran into Portworx every day as the up-and-coming startup in the container storage space,” he says. “And I knew I wanted to go work for that startup that was driving the market forward.”
So, in the spring of 2021, he abandoned the security of a blue-chip tech job and joined Portworx. He admits it was a rough transition–“I was thrust into a marketing team of three and told, ‘Go do something great’”–but he has thrived in his new role, where he gets to focus on a specific tech-heavy niche.
What’s next in container storage?
Portworx is a market leader in Kubernetes storage management today. Outside of certain ecosystems and platforms that offer their own storage management solutions, there are few alternatives for storage automation for containerized apps.
That doesn’t mean Gower and the rest of his team are sitting on their laurels, content with what Portworx has achieved to date. The next big push is to deliver self-service solutions that empower developers to deploy any type of storage, from MySQL and Postgres databases to cloud-based scale out storage systems, to Kubernetes-based apps across any cloud.
That’s important, he says, because “we've found that developers today increasingly want to have lots of storage systems at their disposal," but the diversity of storage solutions out there means that developers have conventionally had to depend on data engineers to configure storage systems for them. “That’s a huge challenge for teams,” Gower says, and Portworx’s vision is to solve it so that “no one has to worry anymore about where their storage is coming from.”
That goal is at the core of Portworx’s recent collaboration with Equinix Metal. Working together, the partners are validating Portworx’s storage-as-a-service solution, called Portworx Data Services, or PDS, on Equinix Metal servers. It’s part of both companies’ mission to give teams ultra-reliable, ultra-simple access to the storage and infrastructure resources they need to work efficiently.
That’s a big deal when you consider that not even a decade ago, developers were still figuring out whether they could run stateful apps in containers at all. Virtually no one was thinking back then about scalable, automated, self-service storage management that works across tens of thousands of containers and any infrastructure platform. And yet, Portworx has made that type of solution feel so simple you almost don’t notice it–which is how infrastructure should always feel!