GKE-Cluster mit Unterstützung von Duet-KI erstellen und ändern

In dieser Anleitung erfahren Sie, wie Sie mit Duet-KI, einem KI-gestützten Mitbearbeiter in Google Cloud, einen GKE-Cluster (Google Kubernetes Engine) in Autopilot erstellen, testen und ändern. Sie erfahren, wie Sie mit Duet-KI eine einfache Anwendung im Cluster bereitstellen und ein tägliches Wartungsfenster für die Anwendung erstellen können. Diese Anleitung richtet sich an Entwickler jeder Erfahrungsstufe.

Lernziele

  • Lernen Sie verschiedene Google-Dienste kennen, mit denen Sie eine Anwendung in GKE bereitstellen können. Stellen Sie dazu kontextbasierte Fragen zu Duet-KI.
  • Fordern Sie Duet-KI zur Bereitstellung von Befehlen auf, mit denen Sie eine einfache Anwendung in einem GKE-Cluster bereitstellen können.
  • Erstellen, untersuchen und ändern Sie den GKE-Cluster mithilfe von Duet-KI, um die Shell-Befehle zu erklären und zu generieren.

Verwendete Google Cloud-Produkte

In dieser Anleitung werden die folgenden kostenpflichtigen Google Cloud-Produkte verwendet. Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung erstellen.

  • GKE. GKE ist ein verwalteter Kubernetes-Dienst, mit dem Sie Containeranwendungen in großem Maßstab bereitstellen und verwalten können. Preisinformationen finden Sie unter GKE-Preise.

  • Duet-KI Duet-KI ist ein ständiger Mitbearbeiter in Google Cloud, der einer Vielzahl von Nutzern, einschließlich Entwicklern und Data Scientists, generative KI-gestützte Unterstützung bietet. Für eine integrierte Unterstützung ist Duet-KI in viele Google Cloud-Produkte eingebettet.

Hinweise

  1. Aktivieren Sie die GKE API.
  2. Prüfen Sie, ob Duet-KI für Ihr Google Cloud-Nutzerkonto und Ihr Projekt eingerichtet ist.

Kubernetes in Google Cloud kennenlernen

Nehmen wir für das folgende Beispiel an, dass Sie ein Infrastrukturadministrator sind, der für die Einrichtung der Infrastruktur für ein Team verantwortlich ist, das eine Webanwendung entwickelt. Die Organisation hat im Allgemeinen mithilfe von Containern und Kubernetes standardisiert. Daher möchte das Team wissen, wie es seine Webanwendung auf Kubernetes in Google Cloud ausführen kann. Außerdem wünscht sich das Team so wenig Aufwand für die Infrastrukturverwaltung wie möglich.

In der Google Cloud Console können Sie mit Duet-KI chatten, um Hilfe zu erhalten. Im Bereich Duet-KI geben Sie Aufforderungen ein. Dies sind Fragen oder Aussagen, die die gewünschte Hilfe beschreiben. Duet-KI gibt Antworten zurück. Duet-KI verwendet Ihre Prompts oder deren Antworten nicht als Daten, um sein Modell zu trainieren. Weitere Informationen finden Sie unter So verwendet Duet-KI in Google Cloud Ihre Daten.

Weitere Informationen zum Schreiben von Prompts zum Generieren guter Antworten finden Sie unter Bessere Prompts für Duet-KI schreiben.

Führen Sie die folgenden Schritte aus, um Duet-KI bei der Entscheidung zu unterstützen, wie Kubernetes in Google Cloud ausgeführt wird:

  1. Klicken Sie in der Symbolleiste der Google Cloud Console auf chat_spark Duet-KI öffnen.

  2. Geben Sie im Bereich Duet-KI entsprechend Ihren Anforderungen und Einstellungen die folgende Eingabeaufforderung ein und klicken Sie dann auf Senden:

    How can I run Kubernetes on Google Cloud without having to own
    management of nodes and the control plane?
    

    Die Antwort von Duet-KI könnte so aussehen:

    To run Kubernetes on Google Cloud without having to own management of
    nodes and the control plane, you can use Google Kubernetes Engine
    (Google Kubernetes Engine (GKE)) in Autopilot. In Autopilot mode, Google manages the
    control plane and system components for you, and also manages your
    worker nodes.
    
  3. Geben Sie eine Folgefrage ein. Wenn Sie beispielsweise das Erstellen von GKE-Clustern im Autopilot-Modus mit Terraform standardisieren möchten, geben Sie die folgende Eingabeaufforderung ein:

    Can you use Terraform to provision GKE clusters in Autopilot mode?
    

    Die Antwort von Duet-KI könnte so aussehen:

    Yes, you can use Terraform to provision GKE clusters in Autopilot
    mode. Terraform is a tool that can be used to create and manage
    infrastructure on Google Cloud Platform. Find more information
    for your question here:
    https://cloud.google.com/blog/products/containers-kubernetes/partner-devops-and-security-solutions-for-gke-autopilot
    
  4. Optional: Wenn der Chatverlauf für die nächste Frage nicht relevant ist, setzen Sie ihn zurück. Klicken Sie dazu im Bereich Duet-KI auf das Symbol Löschen und wählen Sie Chat zurücksetzen aus.

GKE-Cluster im Autopilot-Modus erstellen

Beachten Sie, dass Sie mit dem Ausführen von Kubernetes mit GKE im Autopilot-Modus nicht vertraut sind. Bevor Sie einen Cluster für Ihre Entwickler bereitstellen, sollten Sie GKE zuerst im Autopilot-Modus testen. In diesem Abschnitt fordern Sie Duet-KI auf, Sie beim Erstellen und Ausführen einer Test-Webanwendung in einem GKE-Cluster im Autopilot-Modus zu unterstützen.

  1. Geben Sie im Bereich Duet-KI die folgende Eingabeaufforderung ein und klicken Sie dann auf Senden:

    How do I create a GKE Autopilot cluster?
    

    Duet-KI antwortet mit der Anleitung zum Erstellen eines Clusters mit der Google Cloud Console und der Google Cloud CLI.

  2. Wenn Sie eine Antwort sehen, die Platzhalterwerte wie CLUSTER_NAME, REGION und PROJECT_ID enthält, kann das Hinzufügen dieser Informationen in die Aufforderung zu noch nützlicheren Antworten führen. Verfeinern Sie den Prompt noch einmal mit weiteren Details:

    What is the command to create a GKE Autopilot cluster in my current
    project named duet-ai-demo in the us-central region using the gcloud CLI?
    

    Duet-KI gibt eine Antwort wie diese zurück:

    gcloud container clusters create-auto duet-ai-demo --region us-central1
    

    Öffnen Sie Cloud Shell und führen Sie in der Antwort den vorherigen gcloud-Befehl aus, um den von Duet-KI bereitgestellten Befehl zu verwenden.

    Nach einigen Minuten ist der GKE Autopilot-Cluster einsatzbereit.

Beispiel-Webanwendung bereitstellen

Da Sie nun einen GKE-Cluster im Autopilot-Modus erstellt haben, möchten Sie die Ausführung einer Beispielwebanwendung testen, die der Anwendung ähnelt, die Ihr Team in dieser Infrastruktur ausführen wird. Intern sehen Sie das folgende Container-Image von Google, das zum Testen einer Container-Webanwendung als Lesezeichen gespeichert wurde: us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0.

  1. Geben Sie im Bereich Duet-KI die folgende Eingabeaufforderung ein und klicken Sie dann auf Senden:

    What is the kubectl command to create a deployment called
    hello-server for the image us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0?
    

    Duet-KI gibt eine Antwort ähnlich der folgenden zurück:

    To create a deployment called hello-server for the image
    us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0, you
    can use the following kubectl command:
    
    kubectl create deployment hello-server --image=us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0
    

    Führen Sie den vorherigen kubectl-Befehl in Cloud Shell aus.

  2. Nachdem der Webserver jetzt erstellt ist, beschließen Sie, die Bereitstellung eines Load-Balancers vor dem Webserver zu testen, um ihn im Internet freizugeben.

    Geben Sie im Bereich Duet-KI die folgende Eingabeaufforderung ein und klicken Sie dann auf Senden:

    What is the kubectl command to expose this deployment on port 80 with
    a load balancer?
    

    Duet-KI gibt eine Antwort wie diese zurück:

    To expose the hello-server deployment on port 80 with a load
    balancer, you can use the following kubectl expose command:
    
    kubectl expose deployment hello-server \
      --type LoadBalancer \
      --port 80 \
      --target-port 8080
    

    Mit diesem Befehl wird ein Compute Engine-Load-Balancer für Ihren Container erstellt.

    Es ist zwar immer hilfreich, mehr Kontext bereitzustellen. Beachten Sie jedoch, wie Duet-KI den Bereitstellungsnamen hello-server aus dem Unterhaltungsverlauf abrufen konnte, ohne dass er in die Eingabeaufforderung eingefügt wurde.

  3. Jetzt möchten Sie wissen, ob der Webserver ausgeführt wird und Anfragen ordnungsgemäß verarbeitet. Zum Ansehen der bereitgestellten Anwendung müssen Sie die externe IP-Adresse aus dem von Ihnen erstellten Kubernetes-Dienst abrufen.

    Geben Sie die folgende Eingabeaufforderung ein:

    What is the kubectl command to see the external IP address
    associated with this load balancer?
    

    Duet-KI gibt eine Antwort wie diese zurück:

    To see the external IP associated with a load balancer, you can use
    the following kubectl command:
    
    kubectl get service hello-server -w
    
    This will output the name of the service, the type of service, the
    cluster IP address, the external IP address, and the ports that the
    service is listening on.
    

    Nach einigen Minuten wird mit dem vorherigen kubectl-Befehl ein Ergebnis wie das folgende Ergebnis generiert:

    NAME           TYPE           CLUSTER-IP      EXTERNAL-IP     PORT(S)        AGE
    hello-server   LoadBalancer   34.118.227.57   35.225.15.112   80:31473/TCP   6m18s
    

    Sie können jetzt mit dem für EXTERNAL-IP zurückgegebenen Wert auf Ihre in GKE ausgeführte Webanwendung zugreifen.

Strategie für Clusterupgrades planen

Sie haben jetzt den primären Anwendungsfall Ihres Teams in einem GKE-Cluster im Autopilot-Modus getestet. Bevor Sie das Team jedoch GKE Autopilot verwenden lassen, möchten Sie eine Zeit für die Clusterwartung oder -upgrades konfigurieren.

Sie wissen, dass die Traffic-Muster der Nutzer für die Webanwendung Ihres Teams täglich sind. Da Duet-KI Ihnen mitgeteilt hat, dass GKE Autopilot die Wartung des Clusters für Sie übernimmt, möchten Sie festlegen, dass diese Wartung außerhalb der Zeiten mit den meisten Zugriffen erfolgt.

  1. Geben Sie die folgende Eingabeaufforderung ein:

    How can I configure periods of time where GKE Autopilot won't
    perform maintenance or upgrades on my cluster nodes?
    

    Duet-KI gibt eine Antwort wie diese zurück:

    To configure periods of time where GKE Autopilot won't perform
    maintenance or upgrades on your cluster nodes, you can use
    maintenance windows and exclusions.
    
    Maintenance windows are periods of time when GKE Autopilot is allowed
    to perform maintenance and upgrades on your cluster nodes. You can
    specify a maintenance window for your cluster when you create it, or
    you can update an existing cluster to specify a maintenance
    window.
    
    Maintenance exclusions are periods of time when GKE Autopilot is not
    allowed to perform maintenance or upgrades on your cluster nodes. You
    can create a maintenance exclusion for your cluster when you create
    it, or you can update an existing cluster to create a maintenance
    exclusion.
    
    To create a maintenance window or a maintenance exclusion, you can
    use the Google Cloud console, the gcloud CLI, or the Kubernetes
    API.
    
  2. Sie beschließen, mit gcloud ein tägliches Wartungsfenster außerhalb der Geschäftszeiten Ihrer Webanwendung zu erstellen. Geben Sie die folgende Eingabeaufforderung ein:

    How can I create a daily maintenance window from 22:00 to 02:00 using
    `gcloud` for my GKE Autopilot cluster named duet-ai-demo?
    

    Duet-KI gibt eine Antwort wie diese zurück:

    To create a daily maintenance window using gcloud CLI for your
    duet-ai-demo GKE Autopilot cluster that goes from 22:00 to 02:00, you
    can use the following command:
    
    gcloud container clusters update duet-ai-demo \
      --maintenance-window-start 22:00 \
      --maintenance-window-end 02:00 \
      --maintenance-window-recurrence "FREQ=DAILY"
    
    This command will create a daily maintenance window that runs from
    22:00 to 02:00 UTC time zone.
    

    Mit diesem Befehl können Sie dafür sorgen, dass die Infrastruktur, die Sie für Ihr Team bereitstellen, zu den Zeiten mit der geringsten Auslastung Ihrer Nutzer gewartet wird. Jetzt können Sie Ihrem Webanwendungsteam GKE Autopilot empfehlen.

Bereinigen

Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, können Sie das Google Cloud-Projekt löschen, das Sie für diese Anleitung erstellt haben. Alternativ können Sie die einzelnen Ressourcen löschen.

  1. Wechseln Sie in der Google Cloud Console zur Seite Ressourcen verwalten.

    Zur Seite „Ressourcen verwalten“

  2. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen.
  3. Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Shut down (Beenden), um das Projekt zu löschen.

Nächste Schritte