Kubernetes-Cluster in GDC

In diesem Dokument werden die Kubernetes-Clusteroptionen und -Funktionen beschrieben, die in Google Distributed Cloud (GDC) mit Air Gap verfügbar sind. Kubernetes-Cluster bieten einen verwalteten Kubernetes Dienst mit Google Kubernetes Engine (GKE) , mit dem Sie Containerarbeitslasten mithilfe von Kubernetes-Methoden nach Industriestandard bereitstellen und ausführen können.

Dieses Dokument richtet sich an Zielgruppen wie IT-Administratoren in der Gruppe der Plattformadministratoren und Anwendungsentwickler in der Gruppe der Anwendungsoperatoren, die für die Verwaltung von Containerarbeitslasten in ihrer Organisation verantwortlich sind. Weitere Informationen finden Sie unter Dokumentation zu Zielgruppen für GDC mit Air Gap.

GKE in einer Umgebung ohne Verbindung

GKE on GDC ist ein verwalteter Kubernetes-Dienst, der die wichtigsten Features und Funktionen von GKE in Ihre Umgebung ohne Verbindung bringt. Für die Zwecke der Dokumentation werden von GKE on GDC verwaltete Cluster als Kubernetes-Cluster bezeichnet. Weitere Informationen zu Kubernetes-Konzepten finden Sie unter Einführung in Kubernetes.

Mit GKE on GDC können Sie Containerarbeitslasten in Ihrer Umgebung ohne Verbindung ähnlich wie mit GKE in der öffentlichen Cloud Google Clouderstellen und verwalten.

In der folgenden Tabelle werden Cluster in GDC mit Google CloudFolgendem verglichen:

Feature Beschreibung GKE on GDC GKE on Google Cloud
Vollständig ohne Verbindung Kann in einer Umgebung ohne Internetverbindung verwendet werden. Ja Nein
Datensicherungslösung Dienst zum Erstellen von Kopien von Daten und Konfigurationen für einen Cluster, um den Datenschutz zu gewährleisten und die Wiederherstellung nach Ausfällen, Fehlern oder Cyberangriffen zu ermöglichen. Backup for GDC Sicherung für GKE
Integriertes Logging und Monitoring Dienst, der das Erfassen und Analysieren von Logs mit dem Monitoring wichtiger Leistungskennzahlen kombiniert, um eine umfassende Übersicht über das Clusterverhalten zu erhalten. Prometheus, Grafana und Loki Cloud Logging und Cloud Monitoring
Verwaltete Container Registry Dienst, der Container-Images hostet und organisiert und die Infrastruktur, Verfügbarkeit und Sicherheit der Images verwaltet. Managed Harbor Service Artifact Registry
Container-Isolation Möglichkeit, Containeranwendungen und ihre Abhängigkeiten voneinander und vom Hostsystem getrennt zu halten. Ja Ja
Unterstützung für GPU und TPU Hochleistungs-Recheneinheiten, die eine verbesserte Verarbeitung ermöglichen. Nur GPUs GPUs und TPUs
Horizontales Pod-Autoscaling Automatische Anpassung der Anzahl der Pod-Replikate in einer Bereitstellung oder einer anderen Arbeitslast basierend auf beobachteten Messwerten wie CPU- oder Arbeitsspeichernutzung. Ja Ja
Linux-Container Isolierte Umgebung zum Ausführen von Anwendungen auf einem Linux-Host. Ja Ja
UI für Cluster Grafische Benutzeroberfläche, die eine benutzerfreundliche, visuelle Möglichkeit zum Verwalten und Überwachen eines Clusters bietet. Nur freigegebener Cluster Ja
UI für Clusterressourcen Grafische Benutzeroberfläche, die eine benutzerfreundliche, visuelle Möglichkeit zum Verwalten und Überwachen der Containerarbeitslasten eines Clusters bietet. Schreibgeschützt Ja

Weitere Informationen zu GKE und den vollständigen Funktionen, die in der öffentlichen Cloud verfügbar sind, Google Cloudfinden Sie unter GKE-Dokumentation.

Vorteile von Kubernetes-Clustern

GKE on GDC bietet wichtige Vorteile für Ihre Kubernetes-Cluster, z. B.:

  • Lebenszyklusverwaltung für mehrere Cluster: Stellen Sie mehrere Cluster gleichzeitig in GDC für eine Vielzahl von gehosteten Instanzen für Ihre Containerarbeitslasten bereit.
  • Vollständig unterstützte Kubernetes-Distribution: Erstellen Sie Cluster mit aktuellen Kubernetes-Standardfunktionen.
  • Kostentransparenz: Überwachen Sie die Nutzung und Statistiken in Echtzeit, damit Sie Ihre Kubernetes-Kosten kontinuierlich im Blick behalten können.
  • Verwaltung mehrerer Teams: Gewähren Sie mehreren Nutzergruppen Zugriff auf Kubernetes Cluster, um flexible Verwaltungsgrenzen zu ermöglichen.
  • Automatisierte Kubernetes-Workflows: Verlassen Sie sich auf die automatische Knotenbereitstellung und das horizontale Pod-Autoscaling, um Ihre Containerarbeitslasten nahtlos zu verwalten.

Alle diese Funktionen sind standardmäßig in GKE on GDC enthalten und können mit Clustern verwendet werden, die vom verwalteten Kubernetes-Dienst erstellt wurden.

GDC-Clusterarchitektur

Kubernetes-Cluster sind logisch voneinander getrennt, um unterschiedliche Fehlerbereiche und Isolationsgarantien zu bieten. In einigen Fällen sind sie sogar physisch getrennt.

Sie konfigurieren einen Kubernetes-Cluster entweder als freigegebenen Cluster oder als Standardcluster. Ein freigegebener Cluster umfasst mehrere Projekte. Ein Standardcluster ist auf ein einzelnes Projekt beschränkt. Weitere Informationen finden Sie unter Kubernetes-Clusterkonfigurationen.

Ein Kubernetes-Cluster besteht aus einer Steuerungsebene und Worker-Maschinen, die Knoten genannt werden. Die Steuerungsebene und die Knoten bilden das Kubernetes-Cluster-Orchestrierungssystem. GKE on GDC verwaltet die gesamte zugrunde liegende Infrastruktur der Cluster, einschließlich der Steuerungsebene und aller Systemkomponenten. Sie sind für die Verwaltung der Worker-Knoten verantwortlich, auf denen Ihre containerisierten Arbeitslasten ausgeführt werden.

Das folgende Diagramm zeigt die Architektur eines Kubernetes-Clusters:

Ein Kubernetes-Cluster besteht aus einer Steuerungsebene, Knoten und Diensten.

Dieses Diagramm zeigt einen Kubernetes-Cluster mit den folgenden Komponenten:

  • Steuerungsebene mit einem API-Server und vordefinierten Diensten wie Speicher und Standard-Pod-Planung.
  • Worker-Knoten, auf denen Containerarbeitslasten ausgeführt werden.
  • GDC-Dienste wie VPC-Netzwerk und Load-Balancing, die vom verwalteten GKE on GDC-Dienst bereitgestellt werden.

Informationen zur Steuerungsebene

Die Steuerungsebene führt Prozesse wie den Kubernetes API-Server, den Planer und die Kernressourcen-Controller aus. GKE on GDC verwaltet den Lebenszyklus der Steuerungsebene von der Clustererstellung bis zum Löschen. Hierzu gehören Upgrades der Kubernetes-Version, die auf der Steuerungsebene ausgeführt wird. Diese Upgrades werden von GDC entweder automatisch durchgeführt oder von Ihnen manuell gesteuert, falls Sie Upgrades vor dem automatisch geplanten Termin ausführen möchten.

Steuerungsebene und die Kubernetes API

Die Steuerungsebene ist der einheitliche Endpunkt für Ihren Cluster. Sie interagieren mit der Steuerungsebene über Kubernetes API-Aufrufe. Die Steuerungsebene führt den Kubernetes API-Serverprozess oder kube-apiserver zur Verarbeitung von API-Anfragen aus. So können Sie Kubernetes API-Aufrufe ausführen:

  • Direkte Aufrufe: KRM
  • Indirekte Aufrufe: Kubernetes-Befehlszeilenclients wie die kubectl CLI oder die GDC Console.

Der API-Serverprozess ist der Hub für sämtliche Kommunikation, die sich an den Cluster richtet. Alle internen Clusterkomponenten wie Knoten, Systemprozesse und Anwendungscontroller fungieren als Clients des API-Servers.

Die API-Anfragen teilen Kubernetes mit, was Ihr gewählter Status für die Objekte in Ihrem Cluster ist. Kubernetes versucht, diesen Status ständig zu erhalten. Mit Kubernetes können Sie Objekte in der API entweder imperativ oder deklarativ konfigurieren.

Verwaltung von Worker-Knoten

Die Steuerungsebene verwaltet, was auf allen Knoten des Clusters ausgeführt wird. Auf der Steuerungsebene werden Arbeitslasten geplant und der Lebenszyklus, die Skalierung und Upgrades der Arbeitslasten verwaltet. Die Steuerungsebene verwaltet außerdem die Netzwerk- und Speicherressourcen für diese Arbeitslasten. Die Steuerungsebene und die Knoten kommunizieren über Kubernetes-APIs miteinander.

Informationen zu Knoten

Knoten sind die Worker-Maschinen, auf denen Ihre Containeranwendungen und andere Arbeitslasten ausgeführt werden. Die einzelnen Maschinen sind virtuelle Maschinen (VMs), die von GKE on GDC erstellt werden. Die Steuerungsebene verwaltet und empfängt Aktualisierungen für den selbst gemeldeten Status jedes Knotens.

Ein Knoten führt die Dienste aus, die zur Unterstützung der Container erforderlich sind, aus denen die Arbeitslasten Ihres Clusters bestehen. Hierzu gehören der Laufzeit- und der Kubernetes-Knoten-Agent oder kubelet, der mit der Steuerungsebene kommuniziert und dafür verantwortlich ist, die auf dem betreffenden Knoten geplanten Container zu starten und auszuführen.

GKE on GDC führt auch eine Reihe von Systemcontainern aus, die als Agenten pro Knoten ausgeführt werden, sogenannte DaemonSets, die Funktionen wie Logerfassung und Netzwerkverbindungen innerhalb des Clusters bereitstellen.

Knoten werden in einem Knotenpool gruppiert. Ein Knotenpool ist eine Gruppe von Knoten in einem Cluster, die dieselbe Konfiguration und dieselben Merkmale haben. Sie können keinen einzelnen Knoten in einem Knotenpool konfigurieren.

Benutzerdefinierte Knotenpools sind nützlich, wenn Sie Pods planen müssen, die mehr Ressourcen benötigen als andere, z. B. mehr Arbeitsspeicher oder lokalen Speicherplatz. Sie können Knotenmarkierungen verwenden, wenn Sie mehr Kontrolle über die Planung von Pods benötigen.

Weitere Informationen finden Sie unter Knotenpools verwalten.

Kubernetes-Clusterkonfigurationen

Die folgenden Clusterkonfigurationen sind mit dem GKE on GDC-Dienst verfügbar, um Ihre Containerarbeitslasten in einer Organisation zu verwalten:

  • Freigegebener Cluster: Ein Kubernetes-Cluster auf Organisationsebene, der mehrere Projekte umfasst und nicht von einem einzelnen Projekt verwaltet wird, sondern an diese angehängt ist.
  • Standardcluster: Ein Kubernetes-Cluster auf Projektebene, der Cluster ressourcen innerhalb eines Projekts verwaltet und nicht mehrere Projekte umfassen kann.

Sie können den Cluster auswählen, der Ihren Anforderungen an die Verwaltung von Containerarbeitslasten am besten entspricht. Weitere Informationen finden Sie unter Kubernetes-Clusterkonfigurationen.

GPU-Arbeitslasten in einem Cluster

GDC bietet NVIDIA-GPU-Unterstützung für Kubernetes-Cluster und führt Ihre GPU-Geräte als Nutzerarbeitslasten aus. Beispielsweise können Sie Notebooks für künstliche Intelligenz (KI) und maschinelles Lernen (ML) in einer GPU-Umgebung ausführen. Sie müssen Ihren Cluster so konfigurieren, dass er GPU-Geräte unterstützt, indem Sie GPU-Maschinen für sie bereitstellen. Eine Liste der unterstützten Maschinentypen für Kubernetes-Cluster in GDC finden Sie unter Clusterknotenmaschinen.

GPUs werden statisch zugewiesen. Die ersten vier GPUs sind immer für Arbeitslasten wie vortrainierte KI- und ML-APIs reserviert. Diese GPUs werden nicht auf einem Kubernetes-Cluster ausgeführt. Die übrigen GPUs sind für Kubernetes-Cluster verfügbar. KI- und ML-Notebooks werden auf Kubernetes-Clustern ausgeführt.

Weisen Sie GPU-Maschinen den richtigen Clustertypen zu, damit Komponenten wie KI- und ML-APIs in Ihrem Cluster ausgeführt werden können. Weitere Informationen finden Sie unter siehe Freigegebenen Cluster erstellen oder Standardcluster erstellen.

Beschränkungen für GKE on GDC

Die folgenden GKE-Funktionen sind für GKE on GDC nicht verfügbar:

Nächste Schritte