What if I need more compute, but not more storage (or vice versa)?
[dropcaps type=’square’ color=’#ffffff’ background_color=’#e04646′ border_color=”]T[/dropcaps]his question is possibly the most common question newcomers ask when considering the prospect of hyperconverged infrastructure. And it’s certainly a valid question. One notices that compute resources and storage are in the same building block and realizes that the two are now inextricably linked and scaling one must mean scaling the other.
First of all, that’s a reasonable assumption to make based on the way things appear. But it’s a false assumption across almost all of the hyperconverged industry. Most vendors know this would be a major challenge and provide a method to cope with it. There are three possible ways of handling this issue:
- Allow the addition of “compute only” nodes which do not contain storage, but are still managed by the platform and access the storage shared amongst other hosts.
- Offer broad node configurations so that although storage and compute always scale together, the amount of each can be tuned such that the desired capacity for both resources is attainable. (For example, nodes with powerful compute but minimal storage, or vice versa).
- Provide a software-only hyperconverged infrastructure solution supported by “bringing your own hardware” that is sized to your needs.
Second, there’s the question of whether scaling the resources independently is actually desirable. I posted in a previous post that in many cases it may be the best decision to scale compute and storage in tandem, even if it’s not necessary for capacity’s sake. Two reasons I mentioned in the article are increased I/O performance potential due to extra storage controllers and spindles, and narrowed failure domains due to expanding the breadth of the deployment. By the latter, I mean that data is spread across more nodes, resulting in the failure of a given node having less impact.
In the end, the answer to the question “what if I only need more [storage or compute]?” is: you can do that. You are not bound to scaling both resources at once by most hyperconverged platforms. But my question in response would be: “Are you sure it wouldn’t be better to scale them together?”