We’ve all heard about the hyperscalers, those big public cloud and social media companies that essentially reinvented storage infrastructure. Traditional enterprise storage systems were way too expensive and not efficient enough, so they developed their own scale-out architectures using industry-standard server hardware and “commodity” storage devices that could support their crazy capacity needs, affordably.
These systems abstracted just about everything – compute, storage, networking – in order to allow software control of the infrastructure. This let them scale where and when they needed to, without disruption, and provided the "fail in place” resiliency to support a sprawling environment, one that didn’t require the care and feeding that a SAN does. All this was way too exciting for enterprise IT to ignore. The only problem was that hyperscale designs weren’t commercially available, and enterprises weren't in a position to design their own like the hyperscalers did. But they still wanted it. They had “hyperscale envy.”
Hyperconverged infrastructures have a scale-out architecture, they use industry-standard servers and storage, and they are run on a software-defined storage platform. HCIs are built around a hypervisor and run this virtualization layer on every node. They're designed more for ease of deployment and simplicity than maximum resource efficiency at scale. Environments that need bare-metal performance more than operational simplicity need a different solution.
While they don't have the same architecture as the systems hyperscalers developed, software composable infrastructure (SCI) may be the closest thing commercially available for those suffering from hyperscale envy. These systems dynamically configure physical resources, using APIs to map storage and networking components to servers as needed to create bare-metal compute instances. Many compose GPUs and FPGAs as well. There is no storage virtualization software and no hypervisor needed, although a hypervisor or container engine can be run on SCI servers. All resources – servers, storage, networking, GPUs and FPGAs – are physically connected to a switch fabric and with specific elements virtually connected as needed under software control.
At the heart of the SCI system is its composing software, a program that can run on a separate server or module or on a switch. This software manages the stored templates or images that describe a group of resources used for a specific server configuration: storage devices, NICs, GPUs, etc. When deployed, the composing software maps these resources to a server, with boot information, and brings that server instance up. When more resources are needed, most SCIs can add them on the fly.
Software composable infrastructure systems currently come in two basic architectures. One is a blade server chassis with dedicated compute, storage and networking modules that are internally connected. Multiple chassis can be combined to create a scale-out infrastructure that's managed from a single point. Two examples of this modular architecture are HPE Synergy and Dell EMC MX7000.
The other architecture has servers, storage, networking, GPUs and FPGAs housed in industry-standard racks that are connected to a switch fabric. These systems scale by adding resource chassis and servers. Examples of this architecture are those from Liqid, DriveScale and Intel (Rack Scale Design).
Advantages of Composable
Software composable infrastructure brings some specific advantages to companies looking for an integrated system architecture, many of the characteristics that made hyperscale architectures so appealing to enterprise IT.
- Scale. SCIs can expand almost without limit, adding modular chassis or device chassis as needed. Since there is no shared storage pool, there's no virtual limit on node count or file system size, etc.
- Efficiency. SCIs are completely disaggregated; compute, storage and networking resources are separate so servers are composed exactly as needed. When they expand, SCIs can add only those resources they need.
- Performance. SCIs create bare-metal server instances, eliminating the software-defined storage stack and the hypervisor, if desired. They can also be configured with virtually any resource combination, including GPUs and FPGAs, supporting the most performance-intensive workloads.
- Agility. The composing software creates compute systems from available resources, essentially at runtime. This allows for on-demand infrastructure deployment and integration with external management platforms and supports automation.
Disadvantages of Composable
The composable infrastructure also carries some potential disadvantages, depending on the environment.
- Cost. As a rack-scale solution, software composable infrastructure has a higher upfront cost and potentially greater cost when incremental growth is required, especially for SCI solutions with proprietary, modular architectures.
- Expertise. Where HCI is a plug-and-play solution, designed for IT generalists, SCI requires a high level of IT expertise and enough staff to set up and maintain what can be a relatively complex environment.
- New technology. SCI is an immature technology in a nascent market. For use cases on the leading edge, such as HPC and AI, these systems can be attractive. But this technology and vendor base needs to mature before SCI is ready to replace primary data center infrastructure.
In a lot of ways, composable infrastructures borrow from both hyperconverged and converged. They disaggregate resources and combine them at the physical layer to create compute systems, like converged infrastructure. They're also software-defined and can be hardware-agnostic, like HCI. While they're not the same as what the hyperscale companies developed, software composable infrastructure may be the best alternative for enterprises with hyperscale envy, those looking for an agile, software-based architecture that's very efficient at scale.