Zum Hauptinhalt springen
Version: Weekly Build

Architektur

Host-Topologie​

Die Jumpbox ist der einzige administrative Zugangspunkt. Von dort aus installiert und konfiguriert OMS PostgreSQL, Ceph, Kubernetes und die Codesphere-Plattform. Siehe Anforderungen und Dimensionierung für Maschinenanzahl und Dimensionierung.

Infrastrukturkomponenten​

  • Kubernetes: Von Codesphere verwaltete Cluster laufen mit k0s (festgelegt auf eine unterstützte 1.31.x-Version) mit Calico als CNI. Alternativ kann ein bestehender Kubernetes-Cluster verwendet werden; siehe Einen bestehenden Kubernetes-Cluster verwenden.
  • Storage: Ceph, installiert und verwaltet über cephadm auf dedizierten Hosts — nicht von Rook verwaltetes Ceph. Innerhalb des Clusters verbindet sich Rook mit diesem Ceph-Cluster als externer Cluster, um die CSI-Treiber bereitzustellen, die Workloads für persistenten Storage verwenden.
  • PostgreSQL: entweder vom Installer installiert und verwaltet (postgres.mode: install) oder eine externe Datenbank, die selbst betrieben wird (postgres.mode: external).
  • Ingress und Gateways: Zwei Kubernetes-Services stellen Codesphere bereit — das Platform-Gateway (gateway-controller) und das Workspace-Gateway (public-gateway-controller) — geroutet über Envoy Gateway (die Implementierung der Kubernetes Gateway API) zusammen mit ingress-nginx. Siehe Gateway und Lastverteilung.
  • Zertifikate: cert-manager und trust-manager stellen die TLS-Zertifikate des Clusters aus und verteilen sie; siehe Optionen für die Cluster-Ingress-CA.
  • Lastverteilung: die Kubernetes-Load-Balancer-Integration eines Cloud-Anbieters oder MetalLB, falls keine vorhanden ist; siehe Gateway und Lastverteilung.
  • Monitoring: Prometheus, Grafana, Loki und Grafana Alloy, bereitgestellt in einem monitoring-Namespace und konfiguriert wie beschrieben in Cluster-Monitoring.

Codesphere-Plattformdienste​

Die Codesphere-Plattform selbst besteht aus einer Reihe von Diensten, die im codesphere-Namespace bereitgestellt werden: frontend-gateway (die Edge, die eingehende Anfragen routet), ide-frontend (die Web-IDE-Benutzeroberfläche), ide-service (IDE-Backend), auth-service (Authentifizierung und Autorisierung), team-service (Resource Groups und Organisationen), workspace-service (Workspace-Lebenszyklus), workspace-proxy (leitet Datenverkehr an einen laufenden Workspace weiter), deployment-service (Deployments und CI/CD), public-api-service (die öffentliche REST-API), marketplace, payment-service, error-page-server und otel-collector.

Workspaces selbst laufen in einem separaten workspaces-Namespace als workspace-agent-Container, die von workspace-service verwaltet werden.

SSH-Zugriff auf Workspaces​

ssh-workspace-proxy ist ein separater Dienst, der SSH-Verbindungen in laufende Workspaces authentifiziert und routet. Er ist unter der Workspace-SSH-Proxy-Adresse erreichbar, die in Anforderungen und Dimensionierung beschrieben ist.

Bereitstellung​

Das Installationspaket (heruntergeladen über oms download package) enthält die Abhängigkeiten, die OMS direkt installiert, sowie ein Argo CD-Bootstrap, das zusätzliche Clusterkomponenten (einschließlich ssh-workspace-proxy) als Argo CD Applications installiert. Siehe Installer ausführen für den Installationsablauf und Installationsschritte und Profile für die beteiligten Phasen.