Sie können für Ihre Arbeitslasten in Google Kubernetes Engine (GKE) automatisierte Deployments konfigurieren.
Auf dieser Seite wird gezeigt, wie Sie eine einfache CI/CD-Pipeline (Continuous Integration/Continuous Delivery) für die Arbeitslast einrichten. Wenn Sie per Push eine Änderung an Ihr Repository übertragen, erstellt Cloud Build den Container automatisch und stellt ihn in Ihrem GKE-Cluster bereit.
Funktionsweise einer automatisierten Bereitstellung
Wenn Sie eine Arbeitslast haben, die auf ein einzelnes Container-Image in GKE verweist, können Sie eine automatisierte Bereitstellung konfigurieren, damit Ihre Anwendung jedes Mal neu erstellt und bereitgestellt wird, wenn eine Codeänderung in das Repository eingecheckt wird.
Bei dem automatisierten Deployment definieren Sie Ihre Arbeitslast als YAML-Datei und speichern diese in Ihrem Repository (gemäß den Best Practices). GKE generiert YAML-Dateien, die Sie für diesen Zweck verwenden können.
Bei der Verwendung von YAML-Dateien haben Sie zwei Möglichkeiten:
Wenn Sie noch keine YAML-Datei haben, mit der Ihre Arbeitslast definiert wird, können Sie die generierte YAML-Datei verwenden. Speichern Sie die YAML-Datei in Ihrem Repository. Cloud Build verwendet sie jedes Mal, um Ihre Arbeitslast bereitzustellen.
Wenn Sie bereits eine YAML-Datei haben, die Ihre Arbeitslast definiert, können Sie GKE auf ihren Speicherort in Ihrem Repository verweisen. Sie können die YAML-Datei im Repository mit der empfohlenen YAML-Datei vergleichen, damit die richtige Arbeitslast korrekt bereitgestellt wird.
Hinweis
Führen Sie die folgenden Schritte durch, bevor Sie beginnen:
- Aktivieren Sie die Google Kubernetes Engine API. Google Kubernetes Engine API aktivieren
- Wenn Sie die Google Cloud CLI für diese Aufgabe verwenden möchten, müssen Sie die gcloud CLI installieren und dann initialisieren. Wenn Sie die gcloud CLI bereits installiert haben, rufen Sie die neueste Version mit
gcloud components update
ab.
Aktivieren Sie die folgenden zusätzlichen APIs:
Cloud Build
Cloud Source Repositories
Aktivieren Sie die Cloud Source Repositories API.
Artifact Registry
Voraussetzungen
Für automatisierte Deployments gelten die folgenden Anforderungen:
Sie können ein automatisiertes Deployment nur mit Arbeitslasten vom Typ
Deployment
verwenden, die ein einzelnes Container-Image angeben. Multi-Container-Arbeitslasten und andere Arbeitslasttypen (z. B.ReplicaSet
) werden nicht unterstützt.Ihr Quellcode-Repository muss ein Dockerfile enthalten, um das Image zu erstellen.
Sie können dieses Repository in einem der folgenden Produkte hosten:
- Cloud Source Repositories
- GitHub
- Bitbucket
Wenn Sie GitHub oder Bitbucket verwenden, müssen Sie Google Cloud Zugriff auf Ihr Repository gewähren.
Speichern Sie das Container-Image in Artifact Registry im selben Google Cloud-Projekt wie Ihren GKE-Cluster. Das Image muss sich in Artifact Registry befinden und Sie müssen es mindestens einmal bereitgestellt haben, damit Sie eine Arbeitslast in GKE haben.
Automatisierte Bereitstellung erstellen
Gehen Sie folgendermaßen vor, um ein automatisiertes Deployment zu erstellen:
Rufen Sie in der Google Cloud Console die Seite Arbeitslasten auf.
Klicken Sie in der Liste der Arbeitslasten auf den Namen des Deployments, das Sie ändern möchten.
Klicken Sie auf list Aktionen > Automatisiertes Deployment.
Gehen Sie im Bereich Bereitstellung automatisieren so vor:
Wählen Sie unter Quell-Repository Ihr Quellcode-Repository aus:
Wählen Sie in der Drop-down-Liste Repository-Anbieter den Anbieter Ihres Repositorys aus.
Ein automatisiertes Deployment unterstützt die folgenden Hosts für die Versionsverwaltung:
- Cloud Quell-Repositories
- GitHub
Bitbucket
Wenn Sie GitHub oder Bitbucket verwenden, authentifizieren Sie sich mit Ihrem Nutzernamen und Passwort.
Wählen Sie in der Drop-down-Liste Repository den Namen des Repositorys aus, das den Quellcode für Ihr Deployment enthält.
Klicken Sie auf Weiter.
Geben Sie unter Build-Konfigurationen die Informationen der Build-Konfiguration an:
- Geben Sie den Namen des Zweigs ein, aus dem Sie erstellen möchten, oder einen regulären Ausdruck (RegExp2), der dem Zweig oder den Zweigen entspricht. Der Standardzweig ist
master
. Wenn Sie zu diesem Zweig per Push übertragen, erstellt Cloud Build Ihre Anwendung. - Geben Sie den relativen Pfad des Dockerfile-Verzeichnisses ein.
Geben Sie den Dockerfile-Namen ein.
Klicken Sie auf Weiter.
- Geben Sie den Namen des Zweigs ein, aus dem Sie erstellen möchten, oder einen regulären Ausdruck (RegExp2), der dem Zweig oder den Zweigen entspricht. Der Standardzweig ist
Geben Sie unter Automatisierte Deployment-Konfiguration den Speicherort der YAML-Konfigurationsdatei an.
Das System generiert automatisch eine YAML-Dateien, mit der Sie die YAML-Datei in Ihrem Repository befüllen können.
Klicken Sie auf Von Google empfohlene YAML-Datei ansehen, um die generierte YAML-Datei aufzurufen.
Vergleichen Sie sie mit Ihrer eigenen YAML-Datei, falls vorhanden, und aktualisieren Sie Ihre Datei entsprechend.
Erstellen Sie andernfalls eine neue Datei und befüllen Sie sie mit der generierten YAML-Datei. Dadurch wird sichergestellt, dass die bereitgestellte Arbeitslast mit der aktuellen Ausführung übereinstimmt. Die Datei kann einen beliebigen Namen haben, muss jedoch die Erweiterung
.yaml
oder.yml
haben.Geben Sie den relativen Pfad zu dem Verzeichnis an, das die YAML-Datei enthält.
Wenn sich im angegebenen Verzeichnis mehr als eine YAML-Datei befindet, verwendet GKE alle.
Klicken Sie auf Einrichten, um die Konfiguration Ihres automatisierten Deployments abzuschließen.
Sie werden möglicherweise aufgefordert, dem Cloud Build-Dienstkonto Berechtigungen zu erteilen. Diese Berechtigung ist erforderlich.
Nächste Schritte
Nach dem Einrichten der automatisierten Bereitstellung für die ausgewählte Arbeitslast haben Sie einen Cloud Build-Trigger, der nach einem Push in den ausgewählten Zweig des Repositorys ein Container-Image erstellt. Cloud Build stellt eine neue Überarbeitung Ihrer Arbeitslast in dem Cluster bereit, in dem das ursprüngliche Image bereitgestellt wurde.
Weitere Informationen zu Ihrer Arbeitslast finden Sie auf der Seite Details zum Deployment (Tab "Überarbeitungsverlauf").