Canonical hat MicroCloud vorgestellt, ein Werkzeug zur schnellen Bereitstellung von Clustern

Das Unternehmen Canonical hat die Verfügbarkeit des MicroCloud-Tools angekündigt, das es ermöglicht, schnell Rechencluster und Cloud-Systeme mit gemeinsam genutztem, verteiltem Datenspeicher und einem geschützten virtuellen Netzwerk auf eigener Hardware bereitzustellen. Das Tool wird in Form eines Snap-Pakets bereitgestellt, das die notwendigen Komponenten zur Verwaltung der Clusterknoten enthält. Der kommerzielle technische Support für auf MicroCloud basierende Lösungen wird im Rahmen des Ubuntu Pro-Dienstes angeboten, aber diejenigen, die ohne Unterstützung auskommen können, können das Tool ohne Einschränkungen nutzen. Die Arbeiten am Projekt sind in der Programmiersprache Go verfasst und stehen unter der Lizenz AGPL 3.0.

MicroCloud verwendet standardmäßig Mittel zur Gewährleistung der Fehlertoleranz, sodass Cluster mit mindestens drei Knoten erstellt werden können (als obere Grenze werden Cluster mit bis zu 50 Knoten erwähnt). Der zur Verwaltung des Clusters verwendete Software-Stack basiert auf einem zentralisierten Management-System für Container und virtuelle Maschinen namens LXD, einer Plattform für den Aufbau virtueller Netzwerke namens OVN (Open Virtual Network) und einem verteilten, fehlertoleranten Speicher namens Ceph. MicroCloud bietet Werkzeuge zur automatischen Konfiguration von LXD, Ceph und OVN auf allen Knoten des Clusters.

Um neuer Server im Netzwerk, das mit dem Cluster verbunden werden kann, zu identifizieren, wird mDNS verwendet, was es ermöglicht, das gesamte Cluster mit nur einem Befehl „microcloud init“ auf einem der Knoten zu konfigurieren, nachdem zuvor die Snap-Pakete lxd, microceph, microcloud und microovn installiert wurden. Als Hauptplattform wird die Distribution Ubuntu Server betrachtet, aber das Tool ist nicht an Ubuntu gebunden und kann in allen Distributionen verwendet werden, die die Installation von Snap-Paketen unterstützen (Arch, CentOS, Fedora, Debian, openSUSE, RHEL usw.). Auch die Erstellung von Clustern auf Basis von Systemen, die ein atomar aktualisierbares Betriebssystem namens Ubuntu Core verwenden, ist möglich.

Nach dem Start des Befehls „microcloud init“ erkennt das Tool andere Server im lokalen Netzwerk, fordert die Hinzufügung von Festplatten zum gemeinsamen Ceph-Speicher an und schlägt vor, die Parameter des virtuellen Netzwerks zu konfigurieren. Damit die Server Teil des Clusters werden können, müssen zuvor die genannten Snap-Pakete installiert sein. Die Cluster-Konfiguration kann im YAML-Format gespeichert werden, um ähnliche Systeme später einfacher bereitzustellen. Um zusätzliche Knoten nach Abschluss der Initialisierung hinzuzufügen, kann der Befehl „microcloud add“ verwendet werden.

Ein allgemeiner Dateispeicher wird mit aktivierter Replikation und Ausfallsicherheit erstellt, die es ermöglichen, bei Ausfall einzelner Knoten keine Daten zu verlieren, da mehrere Datensätze auf verschiedenen Knoten gespeichert werden. Für die Bereitstellung des Speichers auf Basis von Ceph im Cluster müssen neben lokalen Festplatten auf drei verschiedenen Computern mindestens drei separate Festplatten vorhanden sein, die für die verteilte Datenspeicherung vorgesehen sind.

Sobald das Cluster bereit ist, haben die Benutzer die Möglichkeit, ihre Anwendungen mithilfe von Systemcontainern oder virtuellen Maschinen zu starten sowie auf den gemeinsamen Ceph-Speicher und das zentrale Management-Tool auf Basis von LXD zuzugreifen. Eine Kubernetes-Plattform (Microk8s-Edition) kann zur Verwaltung der Container-Infrastruktur über dem Cluster gestartet werden. Zur Authentifizierung von Benutzern virtuelle Maschinen oder Containern im Cluster kann OpenID Connect (OIDC) und die Autorisierung auf Basis von OpenFGA verwendet werden.

Canonical hat MicroCloud vorgestellt, ein Werkzeug zur schnellen Bereitstellung von Clustern

Eine flexible Verwaltung der bereitgestellten Ressourcen für CPU, Arbeitsspeicher und Eingabe/Ausgabe ist möglich, sowie das Durchleiten von USB-Geräten, GPUs und Speichermedien in die Umgebungen. Isolierte und virtuelle Umgebungen können im Live-Migrationsmodus zwischen Knoten verschoben und mithilfe von Snapshots gespeichert werden. Metriken zur Leistung des Clusters und Ereignisprotokolle können zur Überwachung mit Prometheus und Grafana exportiert werden.

Neben der Erstellung von Arbeitsclustern und privaten Cloud-Systemen ist das Tool auch für schnelle Experimente auf Entwicklersystemen geeignet. Beispielsweise kann MicroCloud verwendet werden, um einen Cluster auf dem Laptop des Entwicklers zu simulieren, um entwickelte Cloud-Anwendungen zu testen, mit neuen Technologien zu experimentieren oder komplexe Infrastrukturen zu simulieren.

Quelle: opennet.ru

60GB SSD 8Gb DDR4