Hyper-converged infrastructure “HCI”
Software-defined, virtualizes all elements of systems.
Hypervisor
Software defined storage
Software defined networking
COTS commercial off –the-shelf servers
The primary difference between converged infrastructure and hyperconverged infrastructure is that in HCI both the storage area network and the underlying storage abstractions[clarification needed] are implemented virtually in software (at or via the hypervisor) rather than physically in hardware
Because software-defined elements are implemented in the context of the hypervisor, management of all resources can be federated (shared) across all instances of a hyper-converged infrastructure.
Converged Infrastructure
IT organizations use converged infrastructure to centralize the management of IT resources, to consolidate systems, to increase resource-utilization rates, and to lower costs. Converged infrastructures foster these objectives by implementing pools of computers, storage and networking resources that can be shared by multiple applications and managed in a collective manner using policy-driven processes.
IT vendors and IT industry analysts use various terms to describe the concept of a converged infrastructure. These include "converged system", "unified computing", "fabric-based computing", and "dynamic infrastructure".
A converged infrastructure addresses the problem of siloed architectures and IT sprawl by pooling and sharing IT resources. Rather than dedicating a set of resources to a particular computing technology, application or line of business, converged infrastructure creates a pool of virtualized servers, storage and networking capacity that is shared by multiple applications and lines of business.
Proxmox
is an open-source virtualization platform, allowing deployment and managment of vm’s and containers
The kernel-mode component of KVM is a part of the Linux kernel, itself licensed under GNU General Public License, version 2.
Based on Ubuntu LTS kernel
Two types
Container-based with LXC
Full virtualization with KVM
KVM
(Kernel-based VM) Is a virtualization module in the Linux kernel allowing the kernel to function as a hypervisor.
It requires a CPU with hardware virtualization extensions (intel vt, amd-v)
It exposes the /dev/kvm interface, which a user mode host can then use to:
Set up the guest VM's address space. The host must also supply a firmware image (usually a custom BIOS when emulating PCs) that the guest can use to bootstrap into its main OS.
Feed the guest simulated I/O.
Map the guest's video display back onto the system host.
There are numerous Virtual Machine Monitors (VMMs) which can utilise the KVM interface including kvmtool, crosvm and Firecracker and numerous specialised VMMs built with frameworks such as rust-vmm.
Internally, KVM uses SeaBIOS as an open source implementation of a 16-bit x86 BIOS.
KVM itself emulates very little hardware, instead deferring to a higher level client application such as QEMU, crosvm, or Firecracker for device emulation.
KVM provides the following (2) emulated devices:
--Virtual CPU and memory
--VirtIO
wikipedia.org/wiki/Hyper-converged_infrastructure
wikipedia.org/wiki/Proxmox_Virtual_Environment