This week, Pure Storage announced the intended acquisition of Portworx Inc, a start-up company developing software-based storage solutions for containerised environments. Adding Portworx to the Pure portfolio will expand options for customers and prospects looking to move into more abstracted storage solutions. What’s the long-term strategy and outcome?
We’ve talked about Pure Storage a lot at Architecting IT. The company was founded in 2009 and went public in October 2015. Pure has ridden the wave of all-flash adoption in the enterprise, with FlashArray//X offering block storage (with some file services), FlashArray//C bringing QLC to the portfolio and FlashBlade delivering scale-out file services.
Although FlashArray is essentially a dual-controller platform, Pure was innovative in bringing NVMe to the market without forcing customers to go through significant upgrades. This capability enabled the company to offer flexible purchasing terms with Evergreen. FlashBlade represented a new class of product that we see more of in the market today, namely scale-out high-performance unstructured data stores.
Portworx was founded in 2014 by a team that had previously worked at Google, Microsoft, NetApp and Nimble Storage. Two of that group (Goutham Rao and Murli Thirumale) also developed data optimisation solutions company Ocarina Networks, acquired by Dell in 2010. Ocarina and Portworx CTO Goutham Rao presented at the very first Tech Field Day event in November 2009 (which I attended).
The Portworx portfolio implements storage for containers using the container ecosystem itself. Portworx Enterprise, the flagship product, comprises the following components:
- PX-Store – the underlying distributed data store that runs across all nodes in a container cluster (typically Kubernetes).
- PX-Secure – data encryption and security access controls.
- PX-Migrate – data mobility between Portworx clusters.
- PX-DR – disaster recovery capabilities with zero RPO.
- PX-Autopilot – automation and capacity management.
Portworx Enterprise is a commercial platform that is also available in a cut-down community edition called Portworx Essentials. The Essentials offering is limited by node count, capacity and some features. PX-backup is a separate data protection solution for Kubernetes clusters. Pricing is based on hourly usage with a minimum charge of $550/month.
Portworx is recognised as a leader in developing storage for containers and Kubernetes. However, as is the case with many start-ups, we have no clear idea of what adoption levels (or revenue) are really like, only historic growth multipliers. In a press release in May 2020, Portworx indicated the company had 145 customers (Pure has 6,600).
Pure Storage and Portworx have come from very different backgrounds. Pure is hardware and enterprise-focused, replacing traditional solutions from incumbent vendors like (Dell) EMC, NetApp and HPE. Portworx has come squarely from the container and software community, although not entirely through the Open Source route.
Looking at what we know from the acquisition in more detail, Pure Storage paid $370 million in cash. The deal is expected to close by the end of September 2020, with Portworx forming the core of a new “Cloud Native” business unit within Pure Storage. Current Portworx CEO Murli Thirumale will lead this group. The purchase price represents a good day for Portworx investors, who had invested $55.5 million over just three funding rounds (the latest in March 2019 for $27 million).
Portworx will be run as a semi-autonomous company, which reminds me of the recent acquisition of Hedvig by Commvault and the way VMware is managed by Dell. Assimilating an acquisition directly into the mothership from day one has the risk to upset some partners (unless of course, you’re a hyper-scale company like AWS).
Pure Storage is highlighting Portworx as the first “strategic” acquisition by the company, where the products and solutions will continue standalone. StorReduce and CompuVerde were acquired to augment existing products.
The Rise of Container-based Storage
The last decade saw the continued evolution of software-defined storage solutions. As containerisation took a hold, popularised by Docker, we’ve seen two approaches:
- Amend existing solutions to support containers
- Build storage for containers using containers
The former option has been driven, in part, by the adoption of CSI, the Container Storage Interface. CSI provides the mechanism for mapping persistent storage to containerised workloads, in particular Kubernetes.
The laughingly naïve approach for storage in the development of Docker and Kubernetes was the assumption that persistent storage wouldn’t be required. Instead, applications could protect data across cloud-native applications with application-based redundancy. In the “real world” of the enterprise, data persistence is essential to deliver security, audit, compliance, governance, data protection and resiliency.
These enterprise requirements drive “day 2” operations, and as container-based deployments have continued to mature, persistent storage has developed as an essential component.
As Kubernetes adoption continues to grow, the simple option for many organisations is to use CSI drivers for existing storage platforms. This approach (of course) will work, and Pure itself offers CSI plugins for FlashArray and FlashBlade. These solutions are inherently limited as the CSI design works from a “bottom-up” approach, rather than a “top-down” one. CSI drivers offer services that map to Storage Classes in a process that is “what do you have?” rather than “here’s what I want”.
The designation of storage classes for workload placement is nothing new. IBM introduced the capability in DFSMS in 1989, enabling data attribute decisions to be made in code known as ACS (automated class selection) routines. However, this reflects the “bottom-up” nature in the way storage is still generally mapped to applications today.
The challenge for CSI and mapping persistent storage to Kubernetes is to ensure metadata stays with the data itself. Application data will outlast the life of a pod, application or even an entire Kubernetes cluster. Without some metadata to understand where the data originated from (and what its requirements are), we’re just emulating the abstraction of physical storage from the last 30 years.
Portworx offers customers the intermediate layer of abstraction that provides data services with application awareness. Whether customers choose to use Pure Storage hardware or run in the public cloud, PX-Store delivers the capability to be the metadata intermediary. The current feature offerings are already designed to meet the requirements of the enterprise.
So, what could the future look like for a combined Pure Storage and Portworx? Pure offers Portworx access to a wider sales force and existing customer base, and brings the credibility of a public company. Portworx brings Pure Storage some credibility in the DevOps world and a better solution for storage in the public cloud than Cloud Block Store. I say “better”, but that statement is not aimed disparagingly at CBS, which is really only suitable for larger enterprises that need (and can afford) data migration from FlashArray into the public cloud.
The bigger question is how Pure and Portworx will combine their product offerings to deliver extra value. In a briefing discussion yesterday with Matt Kixmoeller and Gou Rao, it was clear that Portworx will be integrated into Pure1 and Pure Service Orchestrator as a first step.
However, there are more options for “synergy” if Pure can integrate the metadata from the application directly into FlashBlade and FlashArray. Then we could see native replication used to move data across clusters; we could see QoS defined by the application and implemented by the hardware (rather than the reverse). We could also see much greater long-term data protection and retention capabilities. Both Pure Storage and Portworx have also emphasised the ability to deliver services for Edge/IoT.
The Architect’s View
Pure Storage has made a significant move in acquiring Portworx. The market of successful companies in this area is small, and Portworx is a leader (however, I do wonder if this acquisition would have happened if Portworx was purely Open Source).
The future value for customers will be delivered through the level of integration achieved with Portworx and Pure’s existing platforms. There are options to assist in migration from traditional platforms (e.g. moving virtual applications from vVols to Portworx volumes) and to exploit the public cloud.
Recently on Storage Unpacked, we discussed the “what next” for pure-play storage companies like Pure Storage. The acquisition of Portworx is clearly one step further in building out a long-term strategy for the future of Pure Storage as an independent entity.
Copyright (c) 2007-2020 – Post #b385 – Brookend Ltd, first published on https://www.architecting.it/blog, do not reproduce without permission.