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 Angaben zu Maschinenanzahl und Dimensionierung.

Infrastrukturkomponenten

  • Kubernetes: Von Codesphere verwaltete Cluster laufen mit k0s (fixiert 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 über 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 selbst betrieben wird (postgres.mode: external).
  • Ingress und Gateways: Zwei Kubernetes-Services stellen Codesphere bereit — das Plattform-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, sofern keine vorhanden ist, MetalLB; 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-Komponente, die 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 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, verwaltet von workspace-service.

SSH-Zugriff auf Workspaces

ssh-workspace-proxy ist ein separater Dienst, der SSH-Verbindungen zu laufenden Workspaces authentifiziert und routet. Er wird über die Workspace-SSH-Proxy-Adresse bereitgestellt, die in Anforderungen und Dimensionierung beschrieben ist.

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 die Installationsreihenfolge und Installationsschritte und Profile für die beteiligten Phasen.