Are convergence and hyper-converged infrastructure (HCI) just a hype or are they something really useful, which will give you numerous benefits? As the discussions on this topic are evolving day by day, in this article we sum-up our latest expertise: when is HCI right for you?
What is the difference between hyper-converged and converged systems?
As most buzzwords, converged and Hyper-converged systems are sometimes misused and over-used. So let’s define both in simple terms:
- Converged infrastructure systems take the simple idea of unifying some or all of the 3 basic hardware components of the IT stack – compute, storage and networking.
- Hyper-converged infrastructure solutions combine the above-mentioned hardware components, plus the software stack – operating system, hypervisor, virtual networking functions, etc. to deliver a simple total solution out of the box.
On the HCI side, all of the components are tightly integrated. Some vendors deliver solutions, which are built on custom proprietary hardware and software stacks. Others simply provide reference architectures, leveraging commodity hardware. Both approaches have pros and cons.
In a nutshell – buying out-of-the-box HCI system is simpler and faster, but comes at a higher price. Building an HCI system, based on reference architecture and using standard hardware, plus best-of-breed software consumes more time but also lowers the total solution cost. Its approach also reduces vendor lock-in and gives flexibility to the deployment. So it is the old “buy vs. build” dilemma.
The advantages of HCI
The main advantages of HCI are simplicity, ease of deployment & operations and cost savings – for smaller set-ups. By using HCI you have fewer systems to manage. The hyper-converged clouds reduce the time required to deploy many applications. They also reduce solution design time and integration complexity.
Compared to the traditional way of doing things, a hyper-converged cloud requires fewer steps and less time to set-up. Also, it can usually be installed by companies with less headcount or technical skills. The environments are designed to be automated from the outset and focus on running applications and workloads, versus tweaking the IT infrastructure hardware and software layers.
The main goal, which companies try to achieve by deploying an HCI cloud is usually to gain simplicity and performance, without sacrificing features or reliability, while reducing time spent on building and maintaining IT systems.
The benefits of hyperconverged solutions are:
- Optimized infrastructure costs, especially at small scale – by merging compute and storage in one, an HCI solution can reduce initial footprint and investment of your new private or public cloud. The hyperconverged cloud reduces the need for expensive, specialized staff, because it is relatively easier to run, compared to managing many different IT components.
- Simplified management – HCI solutions usually provide a simple interface to run workloads on VM/application level, so it is easier for your staff to manage. Especially if you do not have a sizable team of dedicated system administrators or infrastructure engineers.
- Simplified hardware selection and upgrades – hyperconverged solutions come in pre-defined packages, so you simply buy and run them. By using identical building blocks, HCI solutions are usually quite straight-forward to scale too.
- Simple Scalability – scale compute and storage together. Capacity and performance can be scaled by adding a new server/node to the cluster. Each VM can be scaled up to very large CPU, RAM and storage size and performance. The disadvantage here is that in most cases all components scale together, thus you cannot scale storage apart from compute or vice-versa.
- Good overall performance – A well-designed hyper-converged infrastructure has a lot of performance available to be shared by all applications. As a relatively new concept, HCI solutions utilize fast CPUs and SSD/NVMe storage devices, which are just fast. In the hyperconverged concept, there is usually a fast tier of storage, assisting computing, so all applications benefit.
Is HCI solution only with advantages?
As any technology, hyper-converged systems have limitations and disadvantages.
Disadvantages of HCI:
- HCI makes sense at a smaller scale – the cost savings of HCI are good for smaller sized deployments. For larger deployments – tens of compute servers and tens of terabytes of storage – it may be better to have compute and storage sub-systems segregated, as they can be sub-optimized independently to unlock saving from the economy of scale, to simplify deployment or to allow for better fit to a given situation/limiting factors.
- Out-of-the-box HCI solutions are a black-box – this means increased vendor lock-in and lack of transparency of what is in the box. For the prime use cases of HCI this is not an issue, but may become a limiting factor for larger deployments or more sophisticated IT users, which require control over what building blocks are being used.
Obviously, there are many benefits out of the hyper-converged infrastructure. However is it suitable design for every use case?
The simple answer is – it is not. Hyper-Convergence is a concept of IT design – not a solution by itself. Many people think that they need an HCI solution. However, HCI is one of several ways to build IT.
Whether it will be beneficial for your case depends mostly on the size of your deployment, the IT knowledge of your team and the time you can spare.
Hyperconvergence and its use cases
Hyper-convergence makes more sense in some specific situations/use cases:
- Small size IT, Remote office/Branch offices (ROBO) – smaller branch offices are a great use case for HCI – they are geographically dispersed, often lack dedicated IT staff and usually have limited resources and IT budgets. If you need to replicate identical software stations, at multiple locations – then HCI can be a solution to save you time, costs and grey hairs. By being built and supported by an expert IT vendor, an HCI solution will run more smoothly and your IT staff will have to make fewer trips to the remote locations.
- VDI (Virtual Desktop Infrastructure) – yet another use case for the introduction of hyper-converged infrastructure into a company. When the focus is on the Desktop infrastructure and the applications running in it – then it makes sense to get a pre-built infrastructure layer and get on with your core business and the applications running it.
- Tier-one applications – hyper-converged cloud and infrastructure are built to provide high availability (HA), which is a must-have feature for mission-critical workloads. While HA is a must for any tier-one IT system, be it HCI or not, it is usually built-in and well tested in an HCI This provides hassle-free redundancy, guarantees your application uptime and customer satisfaction.
- Testing and development environment – Test and dev environments should be similar to the production environment so that they simulate the way a piece of code will behave in real conditions. Best practice is for the primary and test/dev environments to be identical. However, in many cases this is not practical or possible. A hyper-converged infrastructure solution can be used to reduce the time spent on enabling test/dev teams to do their work. By providing all infrastructure as a simple, working package, your IT staff can get to their core task – which is software development and testing/QA.
- Simple backup and disaster recovery (DR) – Some businesses use hyper-converged solutions for disaster recovery. A trend over the last few years is the transition from traditional backups to virtualization-aware backups of a single VM/application. These backup/DR solutions work by replicating each VM to a backup server. If a virtual machine fails, an administrator can initiate an instant restore from backup, or to power up the VM directly in the DR site. HCI solutions usually have a built-in backup and DR functionality. This might be a bit expensive, yet simple way to implement backups & DR.
If you have any questions feel free to contact us at info@storpool.slm.dev