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
- Infra Manager aktivieren.
- Prüfen Sie, ob Sie die IAM-Berechtigungen (Identity and Access Management) haben, die zum Erstellen von Vorschauen erforderlich sind:
roles/config.admin
. - Achten Sie darauf, dass Sie ein Dienstkonto mit den erforderlichen Berechtigungen haben. Weitere Informationen finden Sie unter Dienstkonto konfigurieren.
- 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.
Wenn Sie die Terraform-Konfiguration in einem Speicher-Bucket speichern möchten, muss sie in einen Cloud Storage-Bucket hochgeladen werden. 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.
Vorschau eines neuen Deployments
Die Terraform-Konfiguration, die Sie in der Vorschau ansehen, kann sich in einem Speicher-Bucket oder in einem Git-Repository befinden.
Vorschau mit einer in einem Cloud Storage-Bucket gespeicherten Terraform-Konfiguration
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.
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 \ --gcs-source gs://BUCKET_NAME/OBJECT_NAME \ --input-values=INPUT_1_NAME=VALUE,INPUT_2_NAME=VALUE \ --tf-version-constraint=TERRAFORM_VERSION \ --annotations="ANNOTATION_KEY=ANNOTATION_VALUE" --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.
- 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: ANNOTATION_KEY und ANNOTATION_VALUE stellen ein Schlüssel/Wert-Paar mit Freiformtext dar, das an Ihre Infra Manager-Bereitstellungen angehängt werden kann. Weitere Informationen zur Verwendung und zu den Einschränkungen von Annotationen und Labels finden Sie unter Annotationen und Labels.
- 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.
So aktualisieren Sie eine Bereitstellung, die in einem Git-Repository gespeichert ist:
Wenn Sie ein privates Git-Repository verwenden, müssen Sie Ihren GitHub-Host und das GitHub-Repository mit Cloud Build verbinden, damit Infra Manager auf Ihr Repository zugreifen kann.
So sehen Sie sich eine Vorschau der Bereitstellung an:
gcloud infra-manager previews create projects/PROJECT_ID/locations/LOCATION/previews/PREVIEW_ID \ --service-account projects/SERVICE_ACCOUNT_PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT \ --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 \ --annotations="ANNOTATION_KEY=ANNOTATION_VALUE" --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.
- 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: ANNOTATION_KEY und ANNOTATION_VALUE stellen ein Schlüssel/Wert-Paar mit Freiformtext dar, das an Ihre Infra Manager-Bereitstellungen angehängt werden kann. Weitere Informationen zur Verwendung und zu den Einschränkungen von Annotationen und Labels finden Sie unter Annotationen und Labels.
- 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.
Nachdem Sie sich eine Vorschau einer Bereitstellung angesehen haben, können Sie die Bereitstellung erstellen, um die Ressourcen bereitzustellen. Weitere Informationen finden Sie unter Ressourcen bereitstellen.
Nächste Schritte
- Vorschauergebnisse exportieren und ansehen
- Mit Infra Manager können Sie Ressourcen bereitstellen.
- Bereitstellungen automatisieren:
- Weitere Informationen zu Terraform mit Infra Manager