In GKE Enterprise-Nutzerclustern bereitstellen

In diesem Dokument wird beschrieben, wie Sie Ihre Anwendungen in GKE Enterprise-Clustern bereitstellen. Durch die Unterstützung von GKE Enterprise-Zielen ist die Bereitstellung in AWS-, Azure- und lokalen Clustern möglich.

Mit Cloud Deploy können Sie Ihre containerbasierten Arbeitslasten in jedem GKE Enterprise-Nutzercluster bereitstellen, auf den Sie über das Connect-Gateway zugreifen können.

Hinweise

  • Sie haben einen GKE Enterprise-Nutzercluster, in dem Sie die Bereitstellung vornehmen möchten.

    Dieser Cluster kann ein Cluster sein, den Sie als GKE Enterprise-Nutzercluster erstellt haben. Sie können auch einen vorhandenen Kubernetes-Cluster registrieren. Cluster, die Sie für GKE Enterprise erstellen, erhalten automatisch Mitgliedschaften. Bei vorhandenen Clustern, die Sie bei einer Flotte registrieren, geben Sie bei der Registrierung einen Namen für die Mitgliedschaft an. Sie benötigen diesen Mitgliedschaftsnamen für die Zielkonfiguration.

    Wenn Sie die Google Cloud CLI-Version 407.0.0 oder höher verwenden, müssen Sie beim Registrieren eines Google Kubernetes Engine-Clusters das Flag --install-connect-agent in den Befehl gcloud container fleet memberships register aufnehmen. Der Connect-Agent wird nicht mehr standardmäßig installiert.

  • Richten Sie das Connect-Gateway ein, um den oder die registrierten Cluster mit Google Cloud zu verbinden.

    Richten Sie das Gateway mit demselben Dienstkonto ein, das auch als Google Cloud Deploy-Dienstkonto verwendet wird. Andernfalls hat das Konto des Ausführungsdienstes nicht die erforderlichen Berechtigungen für die Bereitstellung im GKE Enterprise-Cluster.

Cloud Deploy für die Bereitstellung in GKE Enterprise einrichten

  1. Erstellen Sie die Zielkonfiguration.

    Das Ziel kann in der YAML-Datei der Bereitstellungspipeline oder in einer separaten Datei konfiguriert werden. Sie können auch mehrere Ziele in derselben Datei konfigurieren. Sie müssen sich jedoch in verschiedenen kind: Target-Strophen befinden.

  2. Weisen Sie dem Ausführungsdienstkonto die erforderlichen Rollen zu, damit es über das Gateway mit verbundenen Clustern interagieren kann.

    Diese Berechtigung ist unabhängig davon erforderlich, ob Sie das Standarddienstkonto von Cloud Deploy oder ein benutzerdefiniertes Dienstkonto verwenden.

  3. Richten Sie die RBAC für das Ausführungsdienstkonto im Kubernetes-Cluster ein, der dem Anthos-Cluster zugrunde liegt.

  4. Optional: Wenn der zugrunde liegende Cluster kein GKE-Cluster ist, müssen Sie möglicherweise ein ImagePullSecret konfigurieren, damit Ihr Cluster aus Artifact Registry abrufen kann.

  5. Erstellen Sie in der Zieldefinition einen anthosCluster-Abschnitt, der auf den GKE Enterprise-Cluster verweist:

    Die Syntax für die Angabe eines GKE Enterprise-Clusters lautet:

    anthosCluster:
     membership: projects/[project_name]/locations/global/memberships/[membership_name]
    

    Diese GKE Enterprise-Ressourcen-ID verwendet die folgenden Elemente:

    • [project_name] ist der Name des Google Cloud-Projekts, in dem Sie diesen Cluster ausführen.

      Der Cluster, in dem Sie die Bereitstellung durchführen, einschließlich GKE Enterprise-Clustern, muss sich nicht im selben Projekt wie Ihre Bereitstellungspipeline befinden.

    • [membership_name] ist der Name, den Sie bei der Registrierung des Clusters für eine Flotte ausgewählt haben.

    Für location ist global die Mitgliedschaft in allen GKE Enterprise-Clustern. Sie müssen /locations/global/ in dieser Ressourcen-ID also nicht ändern.

Im Folgenden finden Sie ein Beispiel für eine Zielkonfiguration, die auf einen GKE Enterprise-Nutzercluster verweist:

      apiVersion: deploy.cloud.google.com/v1
      kind: Target
      metadata:
       name: qsdev
      description: development cluster
      anthosCluster:
       membership: projects/my-app/locations/global/memberships/my-app-dev-cluster

Nächste Schritte