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: Codesphere-verwaltete Cluster laufen auf k0s (fixiert auf eine unterstützte 1.31.x-Version) mit Calico als CNI. Es kann stattdessen auch ein bestehender Kubernetes-Cluster verwendet werden; siehe Einen bestehenden Kubernetes-Cluster verwenden.
  • Storage: Ceph, installiert und verwaltet über cephadm auf dedizierten Hosts — nicht 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 nutzen.
  • PostgreSQL: entweder vom Installer installiert und verwaltet (postgres.mode: install) oder eine externe Datenbank, die du selbst betreibst (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 Kubernetes-Gateway-API-Implementierung) neben ingress-nginx. Siehe Gateway und Lastverteilung.
  • Zertifikate: cert-manager und trust-manager stellen die TLS-Zertifikate des Clusters aus und verteilen sie; siehe Cluster-Ingress-CA-Optionen.
  • Lastverteilung: die Kubernetes-Lastverteilungs-Integration eines Cloud-Anbieters oder MetalLB, wo keine existiert; siehe Gateway und Lastverteilung.
  • Monitoring: Prometheus, Grafana, Loki und Grafana Alloy, bereitgestellt und konfiguriert wie in Cluster-Monitoring beschrieben.

Codesphere-Plattformdienste

Die Codesphere-Plattform selbst besteht aus einer Reihe von Diensten, die im Namespace codesphere bereitgestellt werden: frontend-gateway (der Eingangspunkt, der eingehende Anfragen routet), ide-frontend (die Web-IDE-Oberfläche), ide-service (IDE-Backend), auth-service (Authentifizierung und Autorisierung), team-service (Teams und Organisationen), workspace-service (Workspace-Lebenszyklus), workspace-proxy (leitet Traffic in 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 Namespace workspaces als Workspace-Agent-Container, verwaltet von workspace-service.

SSH-Zugriff auf Workspaces

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

Bereitstellung

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