Hyperconverged infrastructure brings with it a need to make some critical initial decisions. Software only vs. hardware and VSA vs. In-kernel storage management. It is this second question that we’ll ponder in this blog post.
There are various ways by which local per-node storage can be managed, and it’s important to understand the overall operating paradigm by which storage in these systems works. As mentioned earlier, storage is abstracted on each node, and management for that storage is assigned to a local software-based controller (Figure 1), which runs as either a virtual machine or as a kernel module.
Each node-based controller coordinates its activities with all of the other controllers on the other nodes and the cluster, with each contributing their local storage capacity to the cluster-based storage pool. The resulting storage then becomes available cluster-wide, while the individual controllers are simply responsible for managing their own resources.
The choice of whether to choose a hyperconverged solution that uses a virtual storage appliance (VSA) versus one that manages storage using an operating system or hypervisor-based kernel module is one that many pixels have been spent discussing. There are people that feel passionately on both sides of the debate. So, here’s a bit of guidance.
Click here to download our free ebook on What’s Next for Enterprise IT Architectures and Solutions
The VSA Route
A VSA typically enables a bit more flexibility, particularly when it comes to hypervisor choice. After all, it’s just a virtual machine that happens to be running a storage controller. Virtual machines can be easily migrated from hypervisor to hypervisor, making it easier for VSA-centric solutions to support multiple hypervisors. On the downside, is the concern that forcing all host storage I/O through a virtual machine imposes a significant performance challenge. While it’s true to a point that a VSA will have a bit more latency than in-kernel options, the performance results are far from poor. Also bear in mind that there is a VSA on every host, so the overall I/O load is distributed.
Many solutions on the market today take the VSA route. Just about any solution that supports multiple hypervisors has to use this storage management method.
In-Kernel Storage Management
In-kernel storage management constructs may perform a very little bit better than VSAs, but even that’s debatable as there are a lot of variables that come into play. In arguments favoring in-kernel over VSA storage management, many point to the fact that a VSA uses significant host resources — RAM and CPU — to accomplish its management goals. However, in-kernel management systems also have similar resource requirements, so this argument becomes a moot point.
There are also a lot of solutions on the market that go in-kernel. VMware vSAN, for instance, is one such product.
Frankly, most customers don’t care about VSA vs. in-kernel, but it’s one that hyperconverged infrastructure vendors use in their marketing, so it’s important to understand the differences. The key item to remember is that an in-kernel system effectively locks a customer into that hypervisor. However, while “lock in” is generally considered as something to avoid in IT, you’re really locked in only for the duration of your replacement cycle.
Want to know more about Hyperconverged Infrastructure?