Veröffentlichung von Cozystack 0.21, einer offenen PaaS-Plattform auf Basis von Kubernetes.

Die neueste Version der freien PaaS-Plattform Cozystack 0.21.0, die auf Kubernetes basiert, ist verfügbar. Das Projekt zielt darauf ab, Hosting-Anbietern eine fertige Plattform und einen Rahmen für den Aufbau von privaten und öffentlichen Clouds bereitzustellen. Die Plattform wird direkt auf Servern installiert und deckt alle Aspekte der Infrastrukturvorbereitung für die Bereitstellung von verwalteten Diensten ab. Cozystack ermöglicht das Starten und Bereitstellen von Kubernetes-Clustern, Datenbanken und virtuellen Maschinen. Der Code der Plattform ist auf GitHub verfügbar und unter der Apache-2.0-Lizenz lizenziert.

Der zugrunde liegende Technologie-Stack verwendet Talos Linux und Flux CD. Die Images mit dem System, dem Kernel und den erforderlichen Modulen werden im Voraus erstellt und atomar aktualisiert, was die Verwendung von Komponenten wie dkms und Paketmanagern überflüssig macht und eine stabile Funktionsweise gewährleistet. Eine einfache Installationsmethode in einem leeren Rechenzentrum wird mit PXE und dem debian-ähnlichen Installer talos-bootstrap bereitgestellt.

Die Plattform umfasst eine freie Implementierung der Netzwerkinfrastruktur (fabric) auf Kube-OVN-Basis und verwendet Cilium für die Organisation des Dienstnetzwerks sowie MetalLB für die Ankündigung von Diensten nach außen. Der Speicher ist auf LINSTOR implementiert, wobei ZFS als Basisschicht für den Speicher und DRBD für die Replikation verwendet wird. Es gibt einen vorkonfigurierten Überwachungsstack auf VictoriaMetrics- und Grafana-Basis. Zum Starten virtuelle Maschinen wird die Technologie KubeVirt verwendet, die es ermöglicht, klassische virtuelle Maschinen direkt in Kubernetes-Containern auszuführen und bereits alle erforderlichen Integrationen mit der Cluster-API für das Starten verwalteter Kubernetes-Cluster innerhalb eines "eisenernen" Kubernetes-Clusters hat.

In der neuen Version wurde das Dashboard-Interface vollständig überarbeitet, das jetzt direkt mit der Cozystack-API arbeitet, anstatt mit den Ressourcen von FluxCD. Diese Änderung bietet Endbenutzern eine grafische Benutzeroberfläche und ermöglicht es ihnen, Berechtigungen für die Bereitstellung bestimmter Dienste unter Berücksichtigung des standardmäßigen RBAC-Modells in Kubernetes zuzuweisen. Für jeden Mandanten werden standardmäßig vier Gruppen erstellt:

  • view — für den Zugriff nur im Lesemodus;
  • use — für die Verbindung zu virtuellen Maschinen und die Nutzung von Diensten;
  • admin — für die Bestellung von grundlegenden Diensten (mysql, postgres, redis, kubernetes, virtual-machine usw.);
  • super-admin — zur Erstellung von Untermandanten und zum Starten von Dienstanwendungen (monitoring, etcd, ingress und seaweedfs).

Benutzer, die in die entsprechenden Gruppen aufgenommen wurden, können sowohl über Kubernetes als auch über das Dashboard auf die Dienste zugreifen. Obwohl Cozystack einen API-orientierten Ansatz verwendet, ist das Dashboard ein wichtiger Teil der Plattform, da es ermöglicht, die benötigten Dienste schnell über eine grafische Benutzeroberfläche zu erstellen, anschließend zu sehen, wie sie in der API angezeigt werden, und sie dann als Code (IaC) zu beschreiben.

Die Hauptmesswerte im Dashboard:

  • Es wird direkt mit der Cozystack-API gearbeitet.
  • Die Präfixe für Anwendungen wurden entfernt, da jede Anwendung nun ihren eigenen Kind verwendet.
  • Namespaces werden nach dem Präfix „tenant-„ gefiltert, was es ermöglicht, nur benutzerspezifische Namespaces anzuzeigen und systeminterne auszuschließen.
  • Die Anzeige der Icons wurde bei aktiviertem OIDC (OpenID Connect) korrigiert.
  • Kosmetische Verbesserungen wurden hinzugefügt, einschließlich korrekter Links zur Dokumentation.

Weitere Änderungen:

  • Die Autorisierung für Redis wurde hinzugefügt.
  • Die Rollen und Rollenzuweisungen für Mandanten wurden refaktoriert, alle Berechtigungen für die Ressourcen HelmRelease wurden entfernt, und die Gruppe kubeapps-admin wurde gelöscht.
  • Der Start von Grafana wurde korrigiert, die URL für das VictoriaLogs-Plugin wurde angepasst.
  • Die OpenAPI-Spezifikation für List-Ressourcen im Cozystack-API wurde korrigiert.
  • Talos Linux wurde auf Version 1.8.4 aktualisiert.
  • Der Linstor-ha-controller wurde auf Version 1.2.3 aktualisiert, wodurch das Problem mit der Ausfallsicherheit von virtuellen Maschinen behoben wurde.
  • Eine Größenanpassung für die Grafana-Datenbank wurde hinzugefügt.
  • Zusätzliche Funktionen zur Verwaltung von VMCluster-Ressourcen wurden hinzugefügt.

Quelle: opennet.ru

60GB SSD 8Gb DDR4