German company SUSE known in the Open Source community for its Linux distributions. But her activities are not limited to this. At the end of last year SUSE introduced new open source project – hyperconverged solution harvester. According to the company, Harvester is an alternative to existing enterprise-level hyperconverged platforms like VMware vSAN and Nutanix HCI, adapted to the cloud native environment, and also completely free.
In the article we will make a small overview of Harvester: let’s look at the components, capabilities, strengths and weaknesses.
But before we take a closer look at Harvester, let’s remember what hyperconvergence is.
Hyper-converged infrastructure (HCI), or hyper-converged infrastructure, is a software-defined IT infrastructure that combines computing, storage, virtualization, and network functions into a single system. HCI is built only on the basis of servers and does not require separate storage systems – unlike just converged platforms.
Thanks to special software – a hyperconverged platform – HCI is managed as a single modular system, from one control panel. At the same time, physical servers can be located in different, geographically distributed data centers and even on different continents (virtual data center). HCI provides flexibility and rapid scalability of the IT infrastructure.
Hyperconvergence market leaders, according to latest Gartner report, – Nutanix HCI and VMware vSAN. According to Market Study Report, LLC.by 2027 the capitalization of the industry should reach 44.2 billion USD.
Why SUSE has its own HCI platform
According to Sheng Yang, the lead developer of Harvester, there was a need in the open source community for an HCI solution that could be used to manage containers and virtual machines (VMs) inside Kubernetes. Although Kubernetes is already a fairly mature technology and standard for container orchestration, it has been ignored by major HCI vendors so far. The main reason, according to Sheng Yang, is that the market associated with Kubernetes and the HCI market, dominated by VMware and Nutanix, are different, including in terms of capitalization. Large vendors are still focused on users who prefer hardware virtualization. SUSE decided* that the development of an enterprise grade HCI platform based on K8s was a good opportunity to change the status quo.
The actual developer of Harvester is Rancher Labs, which became part of SUSE in 2020. The basis for Harvester was another development by Rancher Labs – the Kubernetes platform Rancher.
Harvester is a free product and is free to use. SUSE offers paid consultations and technical support.
The control layer of the platform is designed to be installed on “bare metal” (bare metal servers). At the same time, not only on-prem-installation resources can be available in it: Harvester can be used to work on a hybrid infrastructure and in edge computing networks (edge computing).
The main differences between Harvester and traditional HCI solutions, according to SUSE:
it is 100% Open Source;
the platform is built on the basis of Kubernetes, KubeVirt, Longhorn and other cloud native solutions and is focused on containerized and microservice infrastructure;
allows you to manage traditional (VM) and container loads in one panel;
is not tied to specific hardware – unlike, for example, Dell and NetApp solutions.
Harvester is positioned as a complete HCI platform that provides a single interface for managing computing resources, virtualization, storage and networking.
Operating system. The distribution kit is used as the OS openSUSE Leap 15.3modified for Harvester tasks using a set of utilities containerOS (cOS). cOS turns the original distribution into a container-oriented system that requires minimal maintenance to run containers.
Kubernetes. A distribution kit is provided to manage K8s clusters Rancher Kubernetes Engine 2 (RKE2), aka RKE Government. RKE2 is also suitable for companies with high security requirements.
Virtualization. Responsible for the VM layer KubeVirt – an addon that implements the usual virtualization functions in Kubernetes through the KVM hypervisor. With KubeVirt, you can run virtualized workloads alongside containerized ones. The project was included in the CNCF sandbox in 2019, and now it is at the next stage – “incubation».
Storage. The storage area network (SAN) function is performed by another CNCF incubation project – Longhorna highly available distributed block storage for Kubernetes (see our Longhorn review). Used to store VM images MinIO.
Network. plugin Multis CNI provides VM operation in several networks and VLAN support in a K8s cluster.
VM lifecycle management.
Longhorn block storage.
Virtual IP for the cluster.
Creation of Kubernetes clusters.
Focus on Kubernetes
For simplicity, Harvester can be considered a Kubernetes platform with which you can manage not only K8s clusters, but also virtual machines – through a single control panel. This is done thanks to the integration of RKE2 and KubeVirt.
Harvester uses the Kubernetes API, which makes it easier for DevOps teams to work with the platform, for which K8s is already the main container orchestration tool. The Kubernetes API acts as a unified language for automating both containerized and VM workloads.
As for the other components of HCI:
Storage. The platform provides storage for Kubernetes containers through the Harvester Cloud Provider internal tool, which in turn consists of a CSI driver and a cloud controller manager (CCM). CCM uses Longhorn to automatically balance storage resources between cluster nodes. Longhorn also accumulates local disk or network storage resources, from which it creates block volumes for the VM.
Network. Used in Harvester CNI provides an interface between network providers and the VM network within the cluster. VLAN implementation based on the bridge CNI plugin. To configure the network on the host where the cluster is deployed, use Harvester Network Controller (“under the hood” of the controller – the same bridge CNI and Multis-CNI).
You can administer Harvester through the web interface (GUI) and through the console, including using kubectl. At the same time, virtual machines for kubectl are equivalent to Pods in Kubernetes:
If the user is not familiar with kubectl, he can only work through the GUI; according to the developer, this is a complete tool for administration and debugging. Basic knowledge of Kubernetes should be enough to master Harvester – provided, of course, that the user is familiar with Linux and virtualization.
To serve a complex multi-cluster infrastructure, Harvester is integrated with the K8s platform Rancher (v2.6.1 and newer). The Harvester cluster in these installations can be administered through the Rancher control panel. In this case, Harvester acts as an additional cloud provider:
Clusters can be deployed both locally and in a hybrid environment (for example, some in their own data center, some in a public cloud) and managed as a single infrastructure using the authentication, access control and monitoring tools built into Rancher.
Of the more or less close in terms of technical capabilities, three solutions can be noted:
Proxmox Virtual Environment is an open source virtualization platform that offers a unified management environment for KVM-based virtual machines and Linux containers (LXC). Since the platform programmatically combines computing resources, storage and network into a single system, it can be used as a basis for building HCI.
A bunch of Kubernetes platforms openshift and addon Red Hat OpenShift Virtualization. The addon adds new objects to the OpenShift cluster using custom resources to support virtualization features. All basic features for working with VM are available. Multus-CNI is responsible for the network layer (as in Harvester), OpenShift Container Storage is responsible for storage, and the same KubeVirt is used for virtualization.
This is a free Open Source product.
Built on Kubernetes and other popular cloud native solutions.
It is not tied to the equipment of certain vendors and cloud-suppliers, you can use typical servers.
Offers all the basic features for managing VMs and containers.
The SUSE platform is focused on bare metal installations only. This is not suitable for all potential Harvester users.
Harvester is a young product. In terms of functionality, it still cannot fully compete with the VMware, Nutanix and Red Hat platforms. The project does not yet have serious use cases (at least publicly known ones) that would confirm its readiness for use in production.
Read also on our blog: