As Linux clusters and HPC infrastructures become more mainstream and turnkey, it stands to reason that so too would the storage systems that support them. But until now, IT administrators have been burdened with conventional storage technologies that require quite a bit of customization before they can be effectively applied in these environments. Sure, a vendor targeting the HPC marketplace may dress up a parallel file system solution, a SAN storage product or NAS and call it a storage grid. But this designation, in and of itself, does not render that technology capable of meeting HPC performance, accessibility, capacity and availability requirements. Simply put, an HPC environment demands far more interoperability than is possible with a parallel file system, far more capacity than is possible with NAS and much greater data accessibility and collaborative possibilities than are possible with SAN storage. What it comes down to is this: Meeting HPC storage requirements requires an entirely new approach to storage, an approach that picks up where conventional technologies leave off and that is designed, from the ground up, to closely map its functionalities to those of an HPC environment.
Traditional Storage Technologies Just Don't Cut It
Despite the need for true innovation, many vendors are increasingly turning to the allure of the term “grid” in an attempt to hide this fact. This effort to speak “grid-ish” should be taken for what it is — a well-meaning stab at capturing market share in what will undoubtedly become a sizable and competitive marketplace. Although some modifications are being made to address key weaknesses in legacy approaches, these tend to be band-aids, unable to resolve fundamental shortcomings.
Network storage manufacturers, for example, have recently introduced block-based virtualization and technologies that enable the convergence of access protocols like block, NFS, CIFS and iSCSI to enhance scalability. But, unfortunately, SANs remain SANs and suffer the basic problem of being application-centric. As a result, no matter how well they are dressed up, SAN storage solutions ultimately prevent information from being shared to the extent it needs to be in an HPC environment.
While NAS solutions certainly resolve the data sharing issue, the weak point here is an underlying architecture that cannot meet HPC performance and capacity requirements. In an attempt to resolve this problem, some vendors offer scalable global name space and migration software solutions that offer a router-like front end to multiple NAS boxes. Although certainly effective for small numbers of NAS boxes, this technology fails to meet the scalable performance requirements of HPC environments because only a limited number of NAS boxes can be linked to each global name space router. Furthermore, the added overhead of the approach is costly from capital investment, management overhead and networking utilization perspectives.
Scalable storage clusters may be more cost-effective and more scalable than global name space solutions, but the roadblock here is that these solutions tend to be linked only to specific servers. And, since they do not support efficient file level access and locking semantics, they cannot enable effective data sharing across clusters and servers.
Attempts to by-pass these limitations with multi-threaded parallel file systems also tend to fall short because, while achieving improved performance I/O to support the throughput speed and data sharing needed in an HPC environment, these solutions are limited by their inability to cost-effectively share data beyond that environment. As a result, HPC environments relying on this technology also need a secondary storage infrastructure such as NAS — a move that significantly increases storage and administrative costs. And, despite what vendors of commercialized parallel file systems solutions may say, interoperability issues become a concern due to the requirement for a client to be installed on each compute node.
A New Storage Architecture Founded on the Principles of High Performance Computing
To meet all performance, accessibility, capacity and availability requirements of an HPC environment requires an entirely new approach to storage that begins not with legacy storage technologies, but rather with a clear understanding of what an HPC environment really is. With a new storage paradigm rooted in HPC principles, HPC environments may finally be enabled to achieve the full promise of high performance computing without being limited by storage-related obstacles.
The seven key functionalities required for a turnkey storage solution that will meet the full range of HPC requirements, include the following:
1. Transparent data access
2. Collaborative data access
3. Seamless integration of disparate storage resources
4. Built-in resiliency and availability
5. Centralized management
6. Quality of service
7. Integrated data services.
Transparent data access is a critical architectural mandate for an HPC storage solution in order to ensure data access regardless of protocols, standards, interface technology or data path connectivity from the HPC resources to the storage solution itself. In other words, data access needs to be completely open to all authorized users, with data available to any point in the HPC environment regardless of its physical location within the underlying storage infrastructure.
Collaborative data access enables seamless collaboration on the complex team-based projects that are common in HPC environments among all authorized users of any particular data sets. To achieve this objective, the storage architecture must be standards-based and offer multiple parallel paths to storage resources. Not to be overlooked is the importance of a robust access security system that leverages all authentication, encryption and other secure network services traditionally supported in large, scalable enterprise IT infrastructures.
Seamless integration of disparate storage resources into a unified resource — regardless of vendor — that can be accessed as described above is essential in order to eliminate data silos, a common problem with earlier storage approaches because silos prevent data sharing and limit collaboration in HPC environments. With the ability to non-disruptively and horizontally increase the capacity of this resource, in a vendor agnostic and on-demand manner, the storage solution will be able to meet HPC's continuously expanding performance and capacity demands.
Built-in resiliency and availability ensures that all storage resources are always available. In other words, no matter how large or small, the solution must have resiliency built into its “genetic code,” with functionalities such as nodes that are automatically self-healing and the ability to redistribute both workloads and access across the system in the event of a failure. This high level of resiliency is essential to absolutely prevent both data loss and HPC downtime.
Centralized management that is policy-based and automated simplifies administration of the ever-expanding storage resource required in HPC environments. Change management, performance monitoring, storage provisioning and many other administrative tasks can bog down IT departments with conventional storage technologies. To minimize overhead and ensure that HPC users always have access to the data they need, when they need it in the new HPC-centric storage architecture, centralized administration needs to be a fundamental design feature, not a bolted on afterthought.
Quality of service in an HPC-centric storage architecture empowers HPC users because it guarantees that each application and end-user group has ready access to the storage resources required — and that, overall, capacity and performance are optimized. What's required here is a solution that enables automated policy-based resource distributions based on performance demands of end-users and applications. This capability, which essentially physically separates data from applications, allows all service level objectives of all HPC end-user groups to be effectively met because the storage solution itself determines how to best service and maintain data resources.
Integrated data services such as data replication, migration, and data protection services including backup and remote replication for disaster recovery optimize utilization of the storage resource. By making such services more universally available, and eliminating the need for such services to be delivered, far less cost-effectively, on an application level, an HPC-centric storage solution can enhance the entire HPC environment — and make it more cost-effective than otherwise possible.
HPC Environments Demand an HPC-Centric Storage Paradigm
HPC environments were developed to meet the rapidly escalating need to support new and evolving high data-intensive applications. And yet, until now, the actual performance of applications running in these environments has been limited by storage technologies that just cannot keep pace.
Fully leveraging HPC environments demands a storage solution engineered from the ground up for the unique requirements of those environments. In searching for such solutions IT managers should look beyond terminology, focusing instead on functionality. By evaluating storage technologies against the factors discussed in this paper, it should be eminently possible to find a solution that really does meet HPC performance, accessibility, capacity and availability needs.
—–
Mark Stratton, a founding member of Crosswalk, has over 18 years of experience in storage systems, storage networking, computer systems and networks. Stratton served as the director of Marketing Solutions and Alliances and as the director of McDATA's System's Integration Lab (SIL). Previously, he served as a technical marketing engineer at Vixel Corporation during its initial start-up phase, helping Sun and HP bring their first SAN products to the market. His hands-on experience includes product interoperability, industry standards and the delivery of solutions in customer environments. He has also worked for the National Research Council, Nortel and Digital Equipment Corporation. He has served as the vice chair of Supported Solutions Forum for the Storage Networking Industry Association, and as a team member for the ANSI/NCITS T11 Standard.