Ressourcen zonenübergreifend verwalten

In einem multizonalen Universum müssen Sie Ihre zonalen und globalen Ressourcen für hohe Verfügbarkeit verwalten. Jede Oberfläche, sei es die GDC-Konsole, die gdcloud CLI, APIs oder Terraform, bietet Mechanismen zum angemessenen Verwalten Ihrer Ressourcen in einer bestimmten Zone für zonale Ressourcen oder global für Ressourcen, die für die globale Bereitstellung unterstützt werden.

In diesem Dokument wird beschrieben, wie Sie Ressourcen in mehreren Zonen verwalten können.

Zum globalen Kontext wechseln

Sie können Ihre Ressourcen global verwalten, indem Sie zum globalen Kontext wechseln.

GDC-Konsole

Der globale Kontext wird durch Aufrufen der globalen URL festgelegt, die dieser Syntax folgt:

  https://console.ORG_NAME.SUFFIX

Rufen Sie die globale URL auf, um einen globalen Überblick über Ihre Ressourcen in allen Zonen zu erhalten.

gdcloud

Die globale URL wird beim Initialisieren der Standardkonfiguration der gcloud CLI mit dem Parameter organization_console_url festgelegt. Der globale Kontext wird angenommen, sofern Sie nicht explizit einen zonalen Kontext festgelegt haben.

So stellen Sie die globale URL wieder her:

  1. Legen Sie die globale URL als Standard-Organisationskonsolen-URL fest:

    gdcloud config set core/organization_console_url GLOBAL_URL
    
  2. Melden Sie sich im globalen Kontext an:

    gdcloud auth login --login-config-cert=CA_CERT
    

    Ersetzen Sie CA_CERT durch das Zertifikat der Zertifizierungsstelle, das im Speicher für vertrauenswürdige Zertifikate des Systems installiert ist. Weitere Informationen finden Sie unter Web-TLS-Zertifikatskonfiguration.

API

Sie müssen die kubeconfig-Datei für den globalen Management API-Server in Ihren kubectl-Befehlen explizit definieren, wenn Sie globale benutzerdefinierte KRM API-Ressourcen verwalten oder bereitstellen. Beispiel:

  kubectl apply -f resource.yaml --kubeconfig GLOBAL_API_SERVER

Sie können den globalen Kontext für Ihre API-Aufrufe automatisch festlegen, indem Sie den kubectl-Kontext auf den globalen API-Server setzen. Weitere Informationen finden Sie unter Anmelden.

Terraform

Sie müssen den globalen Management-API-Server explizit in Ihrem Terraform-Modul definieren und initialisieren:

  1. Definieren Sie die kubeconfig-Datei für den globalen Management-API-Server in einer Terraform-Datei in Ihrem Modul, z. B. in der Datei main.tf:

    provider "kubernetes" {
      config_path = "GLOBAL_API_SERVER"
    }
    

    Weitere Informationen zum Abrufen der kubeconfig-Datei des globalen Management-API-Servers finden Sie unter Anmelden.

  2. Wenden Sie den neuen globalen Kontext für Ihr Terraform-Modul an:

    terraform apply
    

Alle nachfolgenden Terraform-Aktionen werden im globalen Kontext aufgerufen.

Zu einem zonalen Kontext wechseln

Sie können die Ressourcen einer bestimmten Zone verwalten, indem Sie in einen zonalen Kontext wechseln.

GDC-Konsole

Der zonale Kontext wird festgelegt, indem Sie die zonale URL aufrufen, die dieser Syntax folgt:

  https://console.ORG_NAME.ZONE.SUFFIX

Rufen Sie die zonale URL auf, um die Ressourcen anzusehen, die in der einzelnen Zone gehostet werden.

Viele Ressourcenseiten bieten auch Auswahlfelder für den Zonenbereich, mit denen Sie auf der GDC Console-Seite zwischen zonalen Kontexten wechseln können.

Wählen Sie eine Zone aus, um die Ressourcen in dieser Zone aufzurufen.

Wählen Sie Ihren zonalen Kontext über die bereitgestellten Mechanismen aus, um Ihre zonalen Ressourcen anzusehen und zu verwalten.

gdcloud

Da der globale Kontext standardmäßig konfiguriert ist, wenn Sie die gcloud CLI verwenden, müssen Sie den zonalen Kontext explizit festlegen, um zonale Ressourcen zu bearbeiten. Je nach bevorzugtem Workflow haben Sie dazu drei Möglichkeiten:

Gehen Sie so vor, um eine dieser Methoden anzuwenden:

Standardkonfiguration für Zonen festlegen

  • Legen Sie die Zonenkonfiguration für Ihre gcloud CLI-Instanz fest:

    gdcloud config set core/zone ZONE_NAME
    

    Ersetzen Sie ZONE_NAME durch den Namen der Zone, die für den Kontext festgelegt werden soll. Eine Anleitung zum Suchen eines Zonennamens finden Sie unter Zonen in einem Universum auflisten.

Zonale URL-Konfiguration festlegen

  1. Legen Sie die zonale URL als Standard-Organisationskonsolen-URL fest:

      gdcloud config set core/organization_console_url ZONAL_URL
    
  2. Melden Sie sich in der Zone an:

      gdcloud auth login --login-config-cert=CA_CERT
    

    Ersetzen Sie CA_CERT durch das Zertifikat der Zertifizierungsstelle, das im Speicher für vertrauenswürdige Zertifikate des Systems installiert ist. Weitere Informationen finden Sie unter Web-TLS-Zertifikat konfigurieren.

Das Flag --zone anwenden

  • Führen Sie den gcloud CLI-Befehl mit dem Flag --zone aus. Beispiel:

    gdcloud auth print-identity-token --zone=ZONE_NAME
    

    Sie können das Flag --zone für jeden Befehl festlegen, der es unterstützt. Sehen Sie in der gcloud CLI-Referenzdokumentation für Ihren spezifischen Befehl nach, ob das Flag --zone verfügbar ist.

    Sie können das Flag --zone in jedem globalen oder zonalen Kontext verwenden.

API

Sie müssen die kubeconfig-Datei für den zonalen Management-API-Server in Ihren kubectl-Befehlen explizit definieren, wenn Sie zonale benutzerdefinierte KRM-API-Ressourcen verwalten oder bereitstellen. Beispiel:

  kubectl apply -f resource.yaml --kubeconfig ZONAL_API_SERVER

Sie können den zonalen Kontext für Ihre API-Aufrufe automatisch festlegen, indem Sie den kubectl-Kontext auf den Management-API-Server der Zone festlegen. Weitere Informationen finden Sie unter Anmelden.

Terraform

Sie müssen den zonalen Management-API-Server explizit in Ihrem Terraform-Modul definieren und initialisieren:

  1. Definieren Sie die kubeconfig-Datei für den zonalen Management-API-Server in einer Terraform-Datei in Ihrem Modul, z. B. in der Datei main.tf:

    provider "kubernetes" {
      config_path = "ZONAL_API_SERVER"
    }
    

    Weitere Informationen zum Abrufen der kubeconfig-Datei des zonalen Management-API-Servers finden Sie unter Anmelden.

  2. Wenden Sie den neuen globalen Kontext für Ihr Terraform-Modul an:

    terraform apply
    

Alle nachfolgenden Terraform-Aktionen werden im Kontext der von Ihnen konfigurierten Zone aufgerufen.

Zonen in einem Universum auflisten

Führen Sie folgenden Befehl aus, um alle Zonen in Ihrem Universum aufzulisten:

  gdcloud zones list

Die Ausgabe sieht dann ungefähr so aus:

  METADATA.NAME
  us-east1-a
  us-east1-b
  us-east1-c

Nächste Schritte