Die Version 0.20.0 der kostenlosen PaaS-Plattform Cozystack, die auf Kubernetes basiert, wurde veröffentlicht. Das Projekt zielt darauf ab, Anbietern von Hosting-Diensten eine einsatzbereite Plattform sowie ein Framework zum Aufbau privater und öffentlicher Clouds bereitzustellen. Die Plattform wird direkt auf Servern installiert und deckt alle Aspekte der Infrastrukturvorbereitung für die Bereitstellung verwalteter Dienste 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 wird unter der Lizenz Apache-2.0 verbreitet.
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.
Hauptänderungen:
- Kube-OVN wurde auf Version 0.13.0 aktualisiert.
- Die Logik von KubeVirt CCM (Cloud Controller Manager) wurde verbessert, nun bietet die Plattform stabilere Load Balancer für tenant-Kubernetes.
- Benutzerrechteprobleme in OIDC wurden behoben.
- Eine Gruppe für den Cluster-Administrator wurde hinzugefügt.
- Alerts und Dashboards in Grafana wurden korrigiert.
- NATS hat die Möglichkeit erhalten, Jetstream zu aktivieren und die Konfiguration zu übertragen.
- Es wurde die Möglichkeit hinzugefügt, Terraform für die Interaktion mit der API der Plattform zu verwenden.
In der vorherigen Version Cozystack 0.19 wurde die Unterstützung für OIDC (OpenID Connect) implementiert, aber aufgrund von Stabilitätsarbeiten an der Codebasis wurde diese Version nicht separat angekündigt. Nun wird zusammen mit Cozystack Keycloak ausgeliefert, in dem automatisch das Realm Cozy eingerichtet wird, in dem lokale Benutzer erstellt und Verbindungen zu externen OIDC-Anbietern konfiguriert werden können. Für jeden tenant werden standardmäßig 4 Gruppen bereitgestellt, und in der tenant-Anwendung kann automatisch die generierte kubeconfig-Datei heruntergeladen werden, die für die Authentifizierung über Keycloak konfiguriert ist. Es gibt die Möglichkeit, „Keycloak as Code“ durch die Implementierung des Keycloak Operators zu konfigurieren. Die Integration von Keycloak mit dem K8s-Cluster und Dashboard wird automatisch konfiguriert.
Quelle: opennet.ru
