GKE-Dienste mit Gemini-Unterstützung optimieren

Auf dieser Seite wird beschrieben, wie Sie Ihre Google Kubernetes Engine-Bereitstellungen (GKE) mit Gemini Cloud Assist, einem KI-gestützten Assistenten für Google Cloudoptimieren können, um Leistung und Zuverlässigkeit zu verbessern. Die Unterstützung durch Gemini kann Empfehlungen, Codeerstellung und Fehlerbehebung umfassen.

Gemini Cloud Assist bietet viele Vorteile, darunter:

  • Kosten senken: Identifizieren Sie inaktive Ressourcen, passen Sie Ihre Bereitstellungen an und optimieren Sie die Autoscaling-Konfigurationen, um unnötige Ausgaben zu minimieren.
  • Zuverlässigkeit und Stabilität verbessern: Erkennen Sie proaktiv potenzielle Probleme, wie Versionsabweichungen oder fehlende Budgets für Pod-Störungen, um Ausfallzeiten zu vermeiden und die Anwendungsresilienz zu gewährleisten.
  • KI-/ML-Arbeitslasten optimieren: Erhalten Sie Unterstützung bei der Bereitstellung, Verwaltung und Optimierung von KI-/ML-Arbeitslasten in GKE.
  • Fehlerbehebung vereinfachen: Analysieren Sie Logs schnell und ermitteln Sie die Ursache von Fehlern, um Zeit und Aufwand zu sparen.

Diese Seite richtet sich an bestehende GKE-Nutzer sowie an Betreiber und Entwickler, die Cloud-Ressourcen bereitstellen und konfigurieren sowie Apps und Dienste bereitstellen. Weitere Informationen zu gängigen Rollen und Beispielaufgaben, auf die wir in Inhalten Google Cloud verweisen, finden Sie unter Häufig verwendete GKE-Nutzerrollen und -Aufgaben.

Weitere Informationen dazu, wie und wann Gemini forIhre Daten verwendet. Google Cloud

Kosten

  • Gemini: In der Vorabversion fallen keine Kosten für die Nutzung von Gemini Cloud Assist an.

  • GKE: Für die Nutzung von Gemini Cloud Assist in GKE fallen keine zusätzlichen Kosten an.

Hinweis

Bevor Sie Gemini mit GKE verwenden können, müssen Sie die folgenden Voraussetzungen erfüllen.

In dieser Anleitung wird davon ausgegangen, dass Sie einen GKE-Cluster und idealerweise einige Bereitstellungen haben.

Gemini Cloud Assist fragen

Sie können Gemini Cloud Assist über die Google Cloud Console aufrufen. Mit Gemini Cloud Assist können Sie Prompts in natürlicher Sprache verwenden, um schnell und effizient Hilfe bei Aufgaben zu erhalten.

So öffnen Sie Cloud Assist auf einer GKE-Seite:

  1. Wählen Sie in der Google Cloud Console auf der Seite für die Projektauswahl ein Google Cloud Projekt aus, in dem Sie Gemini Cloud Assist aktiviert haben.

    Zur Projektauswahl

  2. Rufen Sie in der Google Cloud Console eine bestimmte Seite in der Kubernetes Engine-Console auf.

    Rufen Sie beispielsweise die Seite Kubernetes Engine-Übersicht auf.

    Zur Seite „Kubernetes Engine-Übersicht“

    Wenn Sie eine Frage zu einer bestimmten Ressource haben, rufen Sie zuerst die entsprechende Seite auf. Auf der Seite Cluster kann Gemini Cloud Assist Sie beispielsweise bei der Verwaltung Ihrer Cluster, der Überwachung des Clusterzustands und der Fehlerbehebung bei Clusterproblemen unterstützen. Wenn Sie Gemini auf einer bestimmten Google Cloud Console-Seite verwenden, wird Kontext für Ihre Fragen bereitgestellt. Gemini kann diesen Kontext dann zusammen mit dem Gesamtprojekt, in dem Sie sich befinden, verwenden, um genauere und präzisere Unterstützung zu bieten.

  3. Klicken Sie in der Symbolleiste auf spark Gemini-KI-Chat öffnen oder schließen, um den Bereich „Gemini Cloud Assist“ zu öffnen.

  4. Wenn Sie dazu aufgefordert werden und mit den Nutzungsbedingungen einverstanden sind, klicken Sie auf Akzeptieren.

  5. Geben Sie im Gemini-Bereich einen Prompt ein. Im folgenden Abschnitt finden Sie ein Beispiel für einen Workflow zur Fehlerbehebung mit Gemini.

Weitere Informationen zur Verwendung von Gemini in der Google Cloud Console finden Sie unter Gemini Cloud Assist verwenden.

Beispiel für die Fehlerbehebung mit Gemini

Gemini kann Sie bei der Fehlerbehebung in Ihren GKE-Diensten unterstützen.

  1. Rufen Sie in der Google Cloud Console die Seite Arbeitslasten auf.

    Zu Arbeitslasten

  2. Wählen Sie die Arbeitslast aus, für die Sie eine Fehlerbehebung durchführen möchten.

  3. Klicken Sie auf den Tab Logs.

  4. Klicken Sie in der Symbolleiste auf spark Gemini-KI-Chat öffnen oder schließen.

  5. Geben Sie einen Prompt ein, um das Problem zu beschreiben. Beispiel: „Bei meiner Datenbankanwendung accounts-db tritt eine hohe Latenz auf.“ Gemini fordert möglicherweise mehr Kontext an, z. B. den Datenbanktyp und den Umfang der Auswirkungen, z. B. die Vorgänge und Nutzer, die von der Latenz betroffen sind.

  6. Gemini kann Ihnen dann eine Anleitung zur Analyse der Logs geben und Vorschläge zur Fehlerbehebung machen.

  7. Prüfen Sie die Vorschläge und folgen Sie ihnen, um das Problem zu beheben.

Beispiel-Prompts für Gemini Cloud Assist

In diesem Abschnitt werden einige Anwendungsfälle aus der Praxis beschrieben und Prompts vorgeschlagen, die Sie Gemini stellen können. Die tatsächlichen Antworten, die Sie erhalten, können allgemein sein, oder sie können basierend auf dem eindeutigen Zustand Ihrer Google Cloud Umgebung personalisiert und umsetzbar sein. Die Antworten können Google Cloud Console-Links zum Prüfen und Verwalten Ihrer Cloud-Ressourcen sowie Links zur relevanten Dokumentation für weitere Informationen enthalten.

Kosten senken

In der folgenden Tabelle werden die Prompts beschrieben, mit denen Sie Kosten senken können.

Eingabeaufforderung Art der Antwort
„Wie kann ich bei meinen GKE-Clustern Kosten sparen, ohne die Leistung zu beeinträchtigen?“
  • Empfehlungen, in denen unterausgelastete Ressourcen wie inaktive Cluster identifiziert und deren Entfernung vorgeschlagen wird.
  • Ratschläge zum Aktivieren oder Anpassen von Autoscaling-Mechanismen.
  • Vorschläge, die potenzielle Einsparungen durch Konfigurationsprüfungen hervorheben, z. B. Aufbewahrungsrichtlinien für Logs.
„Ich möchte meinen GKE-Cluster my-docker-cluster upgraden. Empfehlungen?“ Vorschläge zur Implementierung bestimmter Kubernetes-Konfigurationen und Best Practices, z. B.:
  • Ressourcenanfragen und -limits für Pods definieren, um eine vorhersehbare Ressourcenzuweisung zu gewährleisten.
  • Dedizierte Namespaces verwenden, um Arbeitslasten zu isolieren.
  • Budgets für Pod-Störungen implementieren, um sicherzustellen, dass während freiwilliger Unterbrechungen wie der Knotenwartung oder Upgrades eine Mindestanzahl von Pod-Replikaten verfügbar ist.
  • Wartungsfenster planen, um geplante Unterbrechungen zu verwalten und unerwartete Ausfallzeiten zu minimieren.
  • Cluster in Release-Versionen registrieren, um GKE-Versionsupgrades zu verwalten.
„In ein paar Wochen wird es auf dem Cluster my-docker-cluster zu einem starken Traffic-Anstieg kommen. Empfehlungen?“
  • Strategien zum Skalieren der Anzahl der Anwendungs-Pods mit dem horizontalen Pod-Autoscaler.
  • Strategien zum Erhöhen der Ressourcen (CPU, Arbeitsspeicher) pro Pod mit dem vertikalen Pod-Autoscaler.
„Für welche meiner GKE-Arbeitslasten ist HPA nicht aktiviert?“ Die Liste der Arbeitslasten, für die der horizontale Pod-Autoscaler nicht aktiviert ist.

Zuverlässigkeit und Stabilität verbessern

In der folgenden Tabelle werden die Prompts beschrieben, mit denen Sie die Zuverlässigkeit und Stabilität Ihrer GKE-Arbeitslasten verbessern können.

Eingabeaufforderung Art der Antwort
„Wie kann ich meine GKE-Cluster zuverlässiger machen und Ausfallzeiten vermeiden?“
  • Identifiziert Versionsabweichungen in den Clustern und schlägt Maßnahmen vor, um die Kompatibilität der Kubernetes-Versionen aufrechtzuerhalten.
  • Empfehlungen zur Implementierung der Ressourcenisolation.
  • Empfehlungen zum Konfigurieren von Budgets für Pod-Störungen, um während geplanter Wartungsarbeiten oder Upgrades eine Mindestanzahl von ausgeführten Pod-Replikaten aufrechtzuerhalten.
„Zeige mir, wie ich meine Arbeitslasten aus dem Namespace Default in my-cluster verschieben kann.“ Schritte für Folgendes:
  • Zielcluster vorbereiten.
  • Apps und Daten zum Zielcluster migrieren.
  • Dienste mit minimalen Ausfallzeiten umstellen.
„Wie kann ich Hochverfügbarkeit für meine ausgeführten Pods gewährleisten?“
  • Eine detaillierte Anleitung, in der eine Bereitstellung angegeben wird, die podAntiAffinity und mehrere Replikate für die Redundanz verwendet.
  • Vorschläge zum Festlegen von Ressourcenanfragen und ‑limits sowie zur Verwendung des horizontalen Pod-Autoscalings.

GKE für KI-/ML-Arbeitslasten optimieren

In der folgenden Tabelle werden die Prompts beschrieben, mit denen Sie Unterstützung bei der Bereitstellung, Verwaltung und Optimierung von KI-/ML-Arbeitslasten in GKE erhalten.

Eingabeaufforderung Art der Antwort
„Welche Knotenpoolkonfigurationen werden für das Ausführen von umfangreichem verteiltem TensorFlow-Training in GKE mit GPUs empfohlen?“ Empfehlungen zur Optimierung des verteilten TensorFlow-ML-Trainings in GKE können Folgendes umfassen:
  • Die richtigen GPU- und Maschinentypen auswählen.
  • Autoscaling aktivieren.
  • Netzwerkverbindung optimieren.
  • Frameworks für verteiltes Training nutzen.
  • Kostensparmaßnahmen implementieren.
„Wie verwende ich GPUs in GKE für das Training?“ Übersicht über die Schritte und Überlegungen zum Konfigurieren eines Clusters und von Arbeitslasten für die Verwendung von GPUs.
„Gib mir ein Beispiel für die Bereitstellung eines Containers für die Modellbereitstellung in GKE.“ Ein Beispiel mit Beispielcode zum Bereitstellen eines Containers für die Modellbereitstellung in GKE. Das Beispiel kann Best Practices enthalten und trägt zur Skalierbarkeit bei.
„Welche Messwerte sollte ich verfolgen, um die Effektivität meiner Load-Balancing-Einrichtung für die Inferenz zu bewerten?“ Die Liste der Messwerte wie Traffic-Verteilung, Latenz, Fehlerraten, CPU- und Arbeitsspeicherauslastung, um Einblicke in die Leistung und den Zustand der Load-Balancing-Einrichtung zu erhalten.

Fehlerbehebung vereinfachen

In der folgenden Tabelle werden die Prompts beschrieben, mit denen Sie Logs schnell analysieren und die Ursache von Fehlern ermitteln können, um Zeit und Aufwand zu sparen.

Eingabeaufforderung Art der Antwort
„Was bedeutet dieser Fehler?
Readiness probe failed: Get "https://10…./abcd": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
Erklärt, dass das Kubelet die Bereitschaftsprüfung für den Container nicht innerhalb des definierten Zeitlimits ausführen konnte, und schlägt mögliche Ursachen und Maßnahmen zur Fehlerbehebung vor.
„Warum stürzt meine Bereitstellung nettools mit dem Fehler ping: socket: Operation not permitted ab?“ Erklärt, dass der Befehl ping die Funktion CAP_NET_RAW des Sicherheitskontexts erfordert und dass Container in Kubernetes aus Sicherheitsgründen standardmäßig mit einer eingeschränkten Anzahl von Funktionen ausgeführt werden.
„Was bedeutet es, wenn mein Pod aufgrund des Fehlers Cannot schedule pods: No preemption victims found for incoming pod. nicht geplant werden kann?“ Erklärt, wie die Pod-Planung und -Vorabnutzung in Kubernetes funktioniert. Listet Schritte zur Fehlerbehebung auf, wenn kein Vorabnutzungsopfer gefunden wurde.

Nächste Schritte