Canonical has released the MicroCloud 2.1 cloud infrastructure management toolkit, which allows for quick deployment of cloud systems and computational clusters with shared distributed data storage and a secure virtual network on your own hardware. MicroCloud 2.1 is announced as the first LTS release that will ensure a long support cycle. MicroCloud is packaged as a snap package, including the components necessary for managing the operations of cluster nodes. The toolkit is written in Go and is distributed under the AGPL 3.0 license.
MicroClouds allow for the creation of clusters ranging from 3 to 50 hosts with fault tolerance and from 1 host if fault tolerance is not required. The software stack for managing the cluster is based on the LXD toolkit, the OVN (Open Virtual Network) platform for building virtual networks, and the distributed fault-tolerant storage Ceph. The setup of LXD, Ceph, and OVN on all cluster nodes is done automatically. The primary platform considered is the Ubuntu Server distribution, but the toolkit is not tied to Ubuntu and can be used with any distributions that support the installation of snap tools (such as Arch Linux, CentOS, Fedora, Debian, openSUSE, RHEL, etc.).
To determine new servers nodes on the network that can be connected to the cluster, mDNS is used, allowing the entire cluster to be configured by simply running the command "microcloud init" on one of the nodes and the command "sudo microcloud join" on the remaining nodes after installing the snap packages lxd, microceph, microcloud, and microovn. After executing the command "microcloud init", the toolkit will identify other servers in the local network, prompt to add disks to the Ceph shared storage, and offer to configure virtual network settings. To add additional nodes after initialization, the command "microcloud add" can be used. The cluster configuration can be saved in YAML format for the subsequent deployment of similar systems.
The general file storage is created with replication and fault tolerance enabled, allowing data not to be lost in case of failure of individual nodes by storing multiple data instances on different nodes. To deploy storage based on Ceph in the cluster, in addition to local disks, at least three separate disks dedicated to distributed data storage must be present on three different computers.
Once the cluster is ready, users are granted the ability to run their applications using containers or virtual machines, as well as access to the shared Ceph storage and the centralized management tools based on LXD. Flexible management of the provided CPU, memory, and I/O resources, USB device passthrough, GPU, and drives is possible. Isolated and virtual environments can be migrated between nodes in live migration mode and saved using snapshots. Metrics on cluster performance and logs of events can be exported for monitoring using Prometheus and Grafana.
In the new version:
- It is now possible to deploy MicroCloud on a single node without fault tolerance, which can be useful for experiments and testing on a local system before deployment in a production environment.
- New cluster initialization features have been added, allowing nodes to initiate the trust setup process in advance without waiting for the join procedure to begin.
- It is now possible to specify additional settings at the initialization stage, for example, selecting specific network interfaces for Ceph traffic (to route data requiring low latency and high bandwidth through different interfaces), enabling disk encryption, and defining parameters for the distributed Ceph filesystem.
- Updates have been made to the versions of components used: LXD 5.21, MicroCeph Squid (Ceph 19.2.0), and MicroOVN 24.04 (Open vSwitch 3.3). The user interface for LXD is enabled by default.


Source: opennet.ru

