Containers and microservices are on the tipping point of disrupting the market, by serving the agility required by modern DevOps-centric business processes. However, serving persistent storage to containerized applications as they are moved into production is difficult with legacy data management tools. Storage environments are notoriously siloed, a fact (and pain point) that has been exacerbated by the shift to heterogeneous multi-cloud architectures that are today’s reality. Furthermore, the advent of data privacy laws requires strong governance of these environments. This becomes an expensive and cumbersome burden that flies in the face of the collaborative and agile, containers and DevOps mindsets. As a result, storage managers require a data management solution that functions based on the user’s intent, like containers do. They require a management tool that will enable data to adapt in real time as workload requirements fluctuate dynamically.
Hammerspace delivers what it calls an intent-based data management solution that enables data to be seamlessly accessed regardless of where it is deployed. The Hammerspace platform creates a unified global namespace from the customer’s storage infrastructure resources, alongside an abstracted metadata index that contains the location of each file and that serves as the centralized data control plane. Block, file and object protocols, and on and off-premises storage resources, are all supported. Upon a user request for data, the Hammerspace solution uses the metadata to locate the applicable files, and then enables those files to flow seamlessly to the application without being re-directed. The user does not need to know where the data resides physically in order to access it, and machine learning can be applied for automated optimization as application needs and cloud provider pricing and functionalities fluctuate. A deeper overview of Hammerspace’s data management platform can be found in Storage Switzerland’s previously published briefing note.
Hammerspace Container Storage Interface (CSI) Driver
To date, Hammerspace has focused on serving hybrid multi-cloud environments. Now, Hammerspace has added support for the Kubernetes CSI to enable customers to integrate their container environments into their Hammerspace global namespace to simplify persistent data management within and across Kubernetes clusters. The core concept is to treat the data itself as a microservice, as opposed to bringing the data into containers, so that the data can be orchestrated to get to the right users at the right time, in the most efficient way possible.
The key value that Hammerspace brings to containerized environments is the ability to offload the complexities of storage environment provisioning and data migration and management; data is seamlessly exposed to containers regardless of where the data resides. Although containers typically can only consume block and file persistent volumes, because Hammerspace abstracts the interface, it also enables the use of object storage for storing and archiving container data. Adding additional value, the container doesn’t need to be shut down in order for the data to be copied between storage systems since the Hammerspace platform does this automatically with no penalty to the production environment’s performance. It retains features including snapshots and replication to be able to effectively support mission-critical, production workloads.
One key use case that Hammerspace is targeting is supporting scale-out, distributed databases such as MongoDB or Redis. Because Hammerspace facilitates global storage classes, data does not need to be localized to a singular cluster. A common definition may be applied to applicable data across the global namespace, so that common policies (such as automatic tiering from slow to fast storage based on access needs) may be applied. The storage manager then does not need to worry about the complexity of migrating and managing various storage classes across sites, to serve a container that might only be in production temporarily. Hammerspace is also targeting test and development use cases, whereby developers can work with a snapshot or replication of the production data within Hammerspace. It also enables developers to work on data in an environment segregated from the production network – which it calls a data air gap.
Data mobility makes or breaks a company’s ability to embrace new innovations such as containers that stand to return substantial business value. The Hammerspace platform stands to add value, especially for large enterprises seeking to standardize and streamline how they are managing data across heterogeneous environments, which could be further splintered by the advent of containers.
Hammerspace’s objective of providing behind-the-scenes optimization of data across storage environments without impacting the user, and of eliminating the need for the user to know where the data resides, is especially important in container environments that are highly dynamic and designed to facilitate agility. Container environments may need to be spun up at a moment’s notice, and oftentimes they might only need to access data for a few minutes.
Hammerspace’s key differentiator is its ability to apply metadata tracking, management and correlation of unstructured data that is more sophisticated beyond even that of a traditional object store, to refine its ability to get specific data where it needs to be when it needs to be there, and also to empower IT to make more informed data management decisions. For instance, Hammerspace’s extensive telemetry data enables IT to know where a piece of data came from (such as a container or a cloud service), which workload it came from, and how it was used. This can help to guide decisions as to whether or not that data needs to be archived, deleted or made disaster ready, based on whether that workload was a production workload and how it is being used by the enterprise, for example. For consistency and a seamless experience, this metadata is inherited across the namespace.