Vorschau eines Updates für eine Bereitstellung ansehen

Auf dieser Seite wird beschrieben, wie Sie mit Infrastructure Manager eine Vorschau der Bereitstellung von Ressourcen anzeigen lassen, die in einer Terraform-Konfiguration definiert sind.

Eine Vorschau beschreibt die Aktionen, die zum Ausführen einer bestimmten Terraform-Konfiguration erforderlich sind. Bevor Sie eine neue Bereitstellung erstellen oder eine Bereitstellung aktualisieren, können Sie sich eine Vorschau der Bereitstellung ansehen, um die Ressourcen zu prüfen, die bereitgestellt werden sollen.

Bei einer Vorschau wird der Befehl Terraform plan ausgeführt. Auf dieser Seite wird davon ausgegangen, dass Sie mit Terraform vertraut sind. Weitere Informationen finden Sie unter Terraform und Infrastructure Manager.

Damit eine Vorschau erstellt werden kann, muss die Terraform-Konfiguration mit einer der unterstützten Terraform-Versionen kompatibel sein.

Hinweise

  1. Infra Manager aktivieren.
  2. Prüfen Sie, ob Sie die IAM-Berechtigungen zum Erstellen von Vorschauen haben: roles/config.admin.
  3. Achten Sie darauf, dass Sie ein Dienstkonto mit den erforderlichen Berechtigungen haben. Weitere Informationen finden Sie unter Dienstkonto konfigurieren.
  4. Wählen Sie die Terraform-Konfiguration aus, für die Sie eine Vorschau anzeigen möchten. Achten Sie darauf, dass diese Terraform-Konfiguration den Einschränkungen entspricht, einschließlich der Einschränkung, dass die Konfiguration keine vertraulichen Daten enthält.

Vorschau eines Updates für eine Bereitstellung ansehen

Die Terraform-Konfiguration, mit der Sie eine Bereitstellung aktualisieren, kann sich in einem Speicher-Bucket oder in einem Git-Repository befinden.

Sie verwenden diese Terraform-Konfiguration auch, um eine Vorschau des Updates zu sehen.

Vorschau mit einer in einem Cloud Storage-Bucket gespeicherten Terraform-Konfiguration

Wenn Sie ein Deployment aktualisieren, ändern sich einige der vorhandenen Ressourcen möglicherweise nicht. In der Vorschau eines Updates sehen Sie, welche Ressourcen bereitgestellt oder gelöscht werden sollen und welche Ressourcen nicht geändert werden sollen.

  1. Suchen Sie die Bereitstellung, die Sie aktualisieren möchten.

  2. Achten Sie darauf, dass die Terraform-Konfiguration in einen Cloud Storage-Bucket hochgeladen wird. Weitere Informationen finden Sie unter Konfiguration in einen Speicher-Bucket hochladen.

    Mit einem Storage-Bucket können Sie den Zugriff auf die Konfiguration steuern. Sie können auch eine Terraform-Konfiguration bereitstellen, die in einem Git-Repository oder auf Ihrem lokalen Computer gespeichert ist.

  3. So rufen Sie eine Vorschau des Updates auf:

    gcloud infra-manager previews create projects/PROJECT_ID/locations/LOCATION/previews/PREVIEW_ID \
        --service-account projects/SERVICE_ACCOUNT_PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT \
        --deployment=projects/PROJECT_ID/locations/LOCATION/deployments/DEPLOYMENT_ID \
        --gcs-source gs://BUCKET_NAME/OBJECT_NAME \
        --input-values=INPUT_1_NAME=VALUE,INPUT_2_NAME=VALUE \
        --tf-version-constraint=TERRAFORM_VERSION
        --provider-source=SERVICE_MAINTAINED
    

    Ersetzen Sie:

    • PROJECT_ID ist die Projekt-ID, unter der Infrastructure Manager ausgeführt wird.
    • LOCATION ist der Standort, an dem Infra Manager ausgeführt wird. Eine Liste der gültigen Standorte finden Sie unter Infrastructure Manager-Standorte.
    • PREVIEW_ID ist die von Ihnen angegebene Vorschaukennung. Weitere Informationen zu Einschränkungen für die Vorschau-ID finden Sie unter Vorschauname.
    • SERVICE_ACCOUNT ist der Name des Dienstkontos, das Sie zum Aufrufen von Infra Manager verwenden.
    • SERVICE_ACCOUNT_PROJECT_ID ist die Projekt-ID des Dienstkontos. In der Regel ist das dasselbe Projekt, in dem Infra Manager ausgeführt wird.
    • DEPLOYMENT_ID ist die Bereitstellungs-ID der Bereitstellung, die Sie aktualisieren möchten.
    • BUCKET_NAME ist der Name des Storage-Buckets, in dem die Konfiguration gespeichert ist.
    • OBJECT_NAME ist der Objektname der Konfigurationsdatei. Dieses Objekt kann ein Verzeichnis oder eine ZIP-Datei, aber keine Terraform-Datei sein. Wenn Sie die Objektversionsverwaltung verwenden, können Sie auch die Generationsnummer des Objekts angeben. Weitere Informationen finden Sie unter Versionierte Objekte verwenden.

      Wenn der Speicher-Bucket der Stammpfad der Terraform-Konfiguration ist, ist OBJECT_NAME optional.

    • INPUT_1_NAME=VALUE und INPUT_2_NAME=VALUE: Alle Eingabewerte in der Terraform-Konfiguration, einschließlich derer, die nicht standardmäßig definiert sind. Beispielsweise können Sie das Projekt, in dem Sie die Ressourcen bereitstellen, als project_id=my-project angeben.

      Wenn alle Eingabewerte standardmäßig in der Konfiguration definiert sind, ist dieses Flag optional.

    • Optional: TERRAFORM_VERSION: Die Version von Terraform, die Infra Manager zum Erstellen der Bereitstellung verwenden soll. Eine Liste der unterstützten Versionen finden Sie unter Unterstützte Terraform-Version. Wenn Sie dieses optionale Flag entfernen, wird die neueste unterstützte Version von Terraform verwendet.

    • Optional: PROVIDER_SOURCE: Bestimmt, welcher Terraform-Provider für die Bereitstellung verwendet wird. Google Cloud Auf SERVICE_MAINTAINED setzen, um den von Infra Manager verwalteten Terraform-Anbieter zu verwenden. Lassen Sie dieses Feld weg, um den von HashiCorp verwalteten Terraform-Provider zu verwenden. Weitere Informationen finden Sie unter Terraform-Anbieter für Google Cloudverwenden.

    Felder aus der Bereitstellung wie die Terraform-Konfiguration, Variablen und das Dienstkonto werden automatisch in die Vorschau eingefügt, sofern Sie im Vorschau-Befehl keine neuen Werte angeben.

Nachdem Sie eine Vorschau erstellt haben, können Sie die Ergebnisse exportieren und ansehen, um den Plan für die Bereitstellung zu prüfen.

Vorschau mit einer in einem Git-Repository gespeicherten Terraform-Konfiguration

Wenn Sie ein Deployment aktualisieren, ändern sich einige der vorhandenen Ressourcen möglicherweise nicht. In der Vorschau eines Updates sehen Sie, welche Ressourcen bereitgestellt oder gelöscht werden sollen und welche Ressourcen nicht geändert werden sollen.

  1. Wenn Ihre Terraform-Konfiguration in einem privaten Git-Repository gespeichert ist und Sie dies noch nicht getan haben, stellen Sie sicher, dass Sie eine Verbindung zu Ihrem GitHub-Host und GitHub-Repository mit Cloud Build hergestellt haben, um Infra Manager Zugriff auf Ihr Repository zu gewähren.
  2. So aktualisieren Sie ein Deployment:

    gcloud infra-manager previews create projects/PROJECT_ID/locations/LOCATION/previews/PREVIEW_ID \
        --service-account projects/SERVICE_ACCOUNT_PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT \
        --deployment=projects/PROJECT_ID/locations/LOCATION/deployments/DEPLOYMENT_ID \
        --git-source-repo="GIT_REPO" \
        --git-source-directory="DIRECTORY" \
        --git-source-ref="REF" \
        --input-values=INPUT_1_NAME=VALUE,INPUT_2_NAME=VALUE \
        --tf-version-constraint=TERRAFORM_VERSION
        --provider-source=SERVICE_MAINTAINED
    

    Ersetzen Sie:

    • PROJECT_ID ist die Projekt-ID, unter der Infrastructure Manager ausgeführt wird.
    • LOCATION ist der Standort, an dem Infra Manager ausgeführt wird. Eine Liste der gültigen Standorte finden Sie unter Infrastructure Manager-Standorte.
    • PREVIEW_ID ist die von Ihnen angegebene Vorschaukennung. Weitere Informationen zu Einschränkungen für die Vorschau-ID finden Sie unter Vorschauname.
    • SERVICE_ACCOUNT ist der Name des Dienstkontos, das Sie zum Aufrufen von Infra Manager verwenden.
    • SERVICE_ACCOUNT_PROJECT_ID ist die Projekt-ID des Dienstkontos. In der Regel ist das dasselbe Projekt, in dem Infra Manager ausgeführt wird.
    • DEPLOYMENT_ID ist die Bereitstellungs-ID der Bereitstellung, die Sie aktualisieren möchten.
    • GIT_REPO: Das Git-Repository.
    • DIRECTORY: Das Verzeichnis mit der Terraform-Konfiguration.
    • REF: die Git-Referenz der Konfiguration. Die Referenz ist optional. Wenn Sie die Referenz nicht angeben, wird der standardmäßig konfigurierte Zweig des Git-Repositorys verwendet.
    • INPUT_1_NAME=VALUE und INPUT_2_NAME=VALUE: Alle Eingabewerte in der Terraform-Konfiguration, einschließlich derer, die nicht standardmäßig definiert sind. Beispielsweise können Sie das Projekt, in dem Sie die Ressourcen bereitstellen, als project_id=my-project angeben.

      Wenn alle Eingabewerte standardmäßig in der Konfiguration definiert sind, ist dieses Flag optional.

    • Optional: TERRAFORM_VERSION: Die Version von Terraform, die Infra Manager zum Erstellen der Bereitstellung verwenden soll. Eine Liste der unterstützten Versionen finden Sie unter Unterstützte Terraform-Version. Wenn Sie dieses optionale Flag entfernen, wird die neueste unterstützte Version von Terraform verwendet.

    • Optional: PROVIDER_SOURCE: Bestimmt, welcher Terraform-Provider für die Bereitstellung verwendet wird. Google Cloud Auf SERVICE_MAINTAINED setzen, um den von Infra Manager verwalteten Terraform-Anbieter zu verwenden. Lassen Sie dieses Feld weg, um den von HashiCorp verwalteten Terraform-Provider zu verwenden. Weitere Informationen finden Sie unter Terraform-Anbieter für Google Cloudverwenden.

Felder aus der Bereitstellung wie die Terraform-Konfiguration, Variablen und das Dienstkonto werden automatisch in die Vorschau eingefügt, sofern Sie im Vorschau-Befehl keine neuen Werte angeben.

Nachdem Sie eine Vorschau erstellt haben, können Sie die Ergebnisse exportieren und ansehen, um den Plan für die Bereitstellung zu prüfen.

Nächste Schritte