Auf dieser Seite wird beschrieben, wie Sie eine Bereitstellung mit Infrastructure Manager aktualisieren. In folgenden Fällen können Sie eine Bereitstellung aktualisieren:
Ihre Infrastruktur in einen bestimmten Zustand zurückversetzen.
Wenn Sie eine Bereitstellung erstellen, haben sich die Ressourcen möglicherweise nach einiger Zeit geändert. Beispielsweise wurden einige der Ressourcen möglicherweise von einer Person geändert, die in der Konsole arbeitet. Sie können die Bereitstellung mit der ursprünglichen Terraform-Konfiguration aktualisieren, um sie in den gewünschten Zustand zurückzuversetzen.
Änderungen an der Infrastruktur implementieren
Nachdem Sie eine Bereitstellung erstellt haben, können Sie die Infrastruktur ändern. Beispielsweise können Sie neue Ressourcen hinzufügen oder die Konfiguration ändern. Sie können die Bereitstellung mit einer Terraform-Konfiguration aktualisieren, die die neue Infrastruktur beschreibt.
Auf dieser Seite wird davon ausgegangen, dass Sie mit Terraform vertraut sind. Weitere Informationen finden Sie unter Terraform und Infra Manager.
Hinweise
- Prüfen Sie, ob Infrastrukturmanager aktiviert ist.
- Prüfen Sie, ob Sie die erforderlichen IAM-Berechtigungen zum Erstellen von Bereitstellungen haben:
roles/config.admin
- Sie benötigen ein Dienstkonto mit den erforderlichen Berechtigungen. Weitere Informationen finden Sie unter Dienstkonto konfigurieren.
- Geben Sie die Infra Manager-Bereitstellung an, die Sie aktualisieren möchten.
Geben Sie die Terraform-Konfiguration an, die für das Update bereitgestellt werden soll. Für eine Überarbeitung kann jede Konfiguration verwendet werden. Diese Konfiguration ist oft eine identische oder aktualisierte Version der bereits bereitgestellten Konfiguration.
Achten Sie darauf, dass diese Terraform-Konfiguration die Einschränkungen erfüllt, insbesondere, dass sie keine sensiblen Daten enthält.
Prüfen Sie das Kontingent Ihrer Organisation für Produkte, die mit Ihrer geplanten Infrastruktur verknüpft sind. Es kann zu Bereitstellungsfehlern kommen, wenn die geplante Infrastruktur das Kontingent Ihrer Organisation für die Produkte überschreitet, die für die Bereitstellung verwendet werden. Weitere Informationen finden Sie unter Kontingente und Limits.
Führen Sie alle erforderlichen Schritte für die Datenmigration oder Dienstkontinuität für die Ressourcen aus, die Sie ändern.
Wenn Sie sich eine Vorschau der Aktualisierung ansehen möchten, bevor Sie Ressourcen konfigurieren, lesen Sie den Hilfeartikel Vorschau einer Aktualisierung einer Bereitstellung ansehen.
Konfigurationsspezifische Berechtigungen erteilen
Wenn Sie in der Terraform-Konfiguration angegebene Google Cloud -Ressourcen bereitstellen möchten, benötigt das Dienstkonto, mit dem Sie Infra Manager aufrufen, Berechtigungen für Folgendes:
Google Cloud -Ressourcen, die in der Konfiguration definiert sind, die Sie für die Version verwenden.
Wenn in der Konfiguration, die Sie für die Version verwenden, andere Ressourcen definiert sind als in der Konfiguration, die für die Bereitstellung verwendet wird, benötigen Sie Berechtigungen für die in beiden Konfigurationen definierten Ressourcen.
Die Berechtigungen für die in der Konfiguration definierten Ressourcen kommen zu den Berechtigungen hinzu, die das Dienstkonto für die Verwendung des Infra Manager-Dienstes benötigt.
Weitere Informationen zum Gewähren von Berechtigungen für die Google Cloud -Ressourcen und zum Gewährleisten des Zugriffs auf die erforderlichen Projekte finden Sie unter Dienstkonto konfigurieren.
Privates Git-Repository und Host mit Cloud Build verbinden
Wenn Sie eine Terraform-Konfiguration aus einem privaten Git-Repository bereitstellen, müssen Sie Ihren Git-Host und Ihr Repository mit Cloud Build verbinden.
GitHub
GitHub Enterprise
GitLab
GitLab Enterprise
Deployment aktualisieren
Wenn Sie eine Bereitstellung aktualisieren möchten, stellen Sie eine Konfiguration mit demselben Bereitstellungsnamen bereit. Dadurch wird eine Überarbeitung erstellt. Weitere Informationen finden Sie unter Bereitstellungen und Versionen – Übersicht.
Wenn Sie noch keine Bereitstellung haben, lesen Sie den Hilfeartikel Infrastruktur mit Infra Manager bereitstellen.
Informationen zum Ansehen einer Vorschau eines Updates ohne Bereitstellung von Ressourcen finden Sie unter Bereitstellung einer Vorschau.
Wählen Sie den Tab mit dem ausgewählten Workflow aus, um weitere Informationen zum Aktualisieren einer Bereitstellung zu erhalten.
Konsole
In diesem Abschnitt wird beschrieben, wie Sie eine Terraform-Konfiguration mit Infra Manager in der Google Cloud Console aktualisieren.
Konfiguration bereitstellen und eine Überarbeitung erstellen:
- Rufen Sie in der Google Cloud Console die Seite Infra Manager auf.
- Klicken Sie auf der Seite Bereitstellungen in der Spalte ID auf die Bereitstellung, die Sie aktualisieren möchten.
- Klicken Sie auf der Seite mit der ID Ihrer Bereitstellung auf Bearbeiten.
- Auf der Seite Bereitstellungsdetails können Sie die Felder Terraform-Version, Dienstkonto und Quelle der Terraform-Konfiguration ändern. Wenn Sie ein privates Git-Repository angeben, müssen Sie Ihren Host und Ihr Repository mit Cloud Build verbunden haben.
Klicken Sie auf Weiter.
- Auf der Seite Terraform-Details können Sie die Eingabewerte für die Terraform-Konfiguration ändern. Klicken Sie auf Weiter.
- Auf der Seite Erweiterte Details können Sie die Felder Labels und Anmerkungen, Worker-Pools und Artifact Cloud Storage-Bucket ändern.
- Klicken Sie auf Aktualisieren, wenn Sie mit den Änderungen an Ihrer Bereitstellung zufrieden sind, um den Aktualisierungsprozess zu starten.
Weitere Informationen zu Bereitstellungsparametern und ihren Formaten finden Sie in der Dokumentation zum Bereitstellen von Ressourcen.
gcloud-CLI
In diesem Abschnitt wird beschrieben, wie eine Terraform-Konfiguration bereitgestellt wird, die in einem Cloud Storage-Bucket gespeichert ist. Mit einem Storage-Bucket können Sie den Zugriff auf die Konfiguration steuern.
- Die Terraform-Konfiguration muss sich in einem Cloud Storage-Bucket befinden. Weitere Informationen finden Sie unter Konfiguration in einen Speicher-Bucket hochladen.
Wenn sich der Speicher-Bucket in einem anderen Projekt als dem Projekt befindet, in dem Sie Infra Manager ausführen, muss das Dienstkonto von Infra Manager Leseberechtigungen für den Bucket haben. Weitere Informationen finden Sie unter Dienstkonto konfigurieren.
Wenn sich der Speicher-Bucket im selben Projekt wie Infra Manager befindet, ist die Leseberechtigung für den Bucket bereits aktiviert.
Konfiguration bereitstellen und eine Überarbeitung erstellen:
gcloud infra-manager deployments apply projects/PROJECT_ID/locations/LOCATION/deployments/DEPLOYMENT_ID \ --service-account projects/SERVICE_ACCOUNT_PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT \ --gcs-source gs://BUCKET_NAME/OBJECT_NAME \ --quota-validation=QUOTA_VALIDATION \ --input-values=INPUT_1_NAME=VALUE,INPUT_2_NAME=VALUE \ --tf-version-constraint=TERRAFORM_VERSION \ --annotation="ANNOTATION_KEY=ANNOTATION_VALUE"
- PROJECT_ID: die Projekt-ID, unter der Infra Manager ausgeführt wird.
- LOCATION: Der Speicherort, an dem Infra Manager ausgeführt wird. Eine Liste der gültigen Standorte finden Sie unter Infra Manager-Standorte.
- DEPLOYMENT_ID: die von Ihnen angegebene Bereitstellungs-ID. Weitere Informationen zu Einschränkungen für die Bereitstellungs-ID finden Sie unter Bereitstellungsname.
- SERVICE_ACCOUNT_PROJECT_ID ist die Projekt-ID des Dienstkontos. In der Regel ist dies dasselbe Projekt, in dem Infra Manager ausgeführt wird.
- SERVICE_ACCOUNT: Der Name des Dienstkontos, mit dem Sie Infra Manager aufrufen.
- BUCKET_NAME: Der Name des Storage-Buckets, in dem die Konfiguration gespeichert ist.
- OBJECT_NAME: der Objektname der Konfigurationsdatei. Dieses Objekt kann ein Verzeichnis oder eine ZIP-Datei sein, aber keine Terraform-Datei. Wenn Sie die Objektversionsverwaltung verwenden, können Sie auch die Generierungsnummer 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.
- Optional: QUOTA_VALIDATION: Der Wert, der festlegt, ob die Kontingentprüfung für Ressourcen in Ihren Terraform-Konfigurationsdateien beim Erstellen einer Bereitstellung aktiviert oder erzwungen wird. Mögliche Werte:
ENABLED
: Validierung des Rechenkontingents für Ressourcen in Terraform-Konfigurationsdateien aktivieren. Bietet Informationen zu Ressourcen mit unzureichenden Kontingenten.ENFORCED
: Kontingentprüfung erzwingen, damit die Bereitstellung fehlschlägt, wenn für die in Ihrer Terraform-Konfigurationsdatei definierte Infrastruktur nicht genügend Kontingent verfügbar ist.
Wenn QUOTA_VALIDATION nicht definiert ist, wird die Kontingentprüfung für Terraform-Konfigurationsdateien deaktiviert. Dies ist der Standardwert. Die Kontingentbestätigung gilt für eine begrenzte Anzahl von Google Cloud -Ressourcen. Weitere Informationen finden Sie unter Kontingente und Limits.
INPUT_1_NAME und INPUT_2_NAME: Alle Eingabewerte in der Terraform-Konfiguration, einschließlich derer, die nicht standardmäßig definiert sind. Sie können beispielsweise
project_id=my-project
als Projekt angeben, in dem Sie die Ressourcen bereitstellen.Wenn alle Eingabewerte in der Konfiguration standardmäßig definiert sind, ist dieses Flag optional.
- Optional:TERRAFORM_VERSION: Die Version von Terraform für Infra Manager, die zum Erstellen der Bereitstellung verwendet werden 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 sind Schlüssel/Wert-Paare im freien Format, die an Ihre Infra Manager-Bereitstellungen angehängt werden können. Weitere Informationen zur Verwendung und zu den Einschränkungen von Anmerkungen und Labels finden Sie unter Anmerkungen und Labels.
gcloud-CLI
In diesem Abschnitt wird beschrieben, wie Sie mit einer Terraform-Konfiguration arbeiten, die in einem Git-Repository gespeichert ist.
- Sie müssen Git installiert haben.
- Wenn Ihre Terraform-Konfiguration in einem
privaten Git-Repository gespeichert ist, müssen Ihr Git-Host und Ihr Repository mit Cloud Build verbunden sein. Konfiguration bereitstellen und eine Überarbeitung erstellen:
gcloud infra-manager deployments apply projects/PROJECT_ID/locations/LOCATION/deployments/DEPLOYMENT_ID \ --service-account projects/SERVICE_ACCOUNT_PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT \ --git-source-repo="GIT_REPO" \ --git-source-directory="DIRECTORY" \ --git-source-ref="REF" \ --quota-validation=QUOTA_VALIDATION \ --input-values=INPUT_1_NAME=VALUE,INPUT_2_NAME=VALUE \ --tf-version-constraint=TERRAFORM_VERSION \ --annotation="ANNOTATION_KEY=ANNOTATION_VALUE"
- PROJECT_ID: die Projekt-ID, unter der Infra Manager ausgeführt wird.
- LOCATION: Der Speicherort, an dem Infra Manager ausgeführt wird. Eine Liste der gültigen Standorte finden Sie unter Infrastrukturmanager-Standorte.
- DEPLOYMENT_ID: die von Ihnen angegebene Bereitstellungs-ID. Weitere Informationen zu Einschränkungen für die Bereitstellungs-ID finden Sie unter Bereitstellungsname.
- SERVICE_ACCOUNT_PROJECT_ID ist die Projekt-ID des Dienstkontos. In der Regel ist dies dasselbe Projekt, in dem Infra Manager ausgeführt wird.
- SERVICE_ACCOUNT: Der Name des Dienstkontos, mit dem Sie Infra Manager aufrufen.
- GIT_REPO: das Git-Repository.
- DIRECTORY: das Verzeichnis mit der Terraform-Konfiguration
- Optional: REF: die Git-Referenz der Konfiguration. Die Referenz ist optional. Wenn Sie keine Referenz angeben, wird der standardmäßig konfigurierte Branch des Git-Repositorys verwendet.
- Optional: QUOTA_VALIDATION: Der Wert, der festlegt, ob die Kontingentprüfung für Ressourcen in Ihren Terraform-Konfigurationsdateien beim Erstellen einer Bereitstellung aktiviert oder erzwungen wird. Mögliche Werte:
ENABLED
: Validierung des Rechenkontingents für Ressourcen in Terraform-Konfigurationsdateien aktivieren. Bietet Informationen zu Ressourcen mit unzureichenden Kontingenten.ENFORCED
: Kontingentprüfung erzwingen, damit die Bereitstellung fehlschlägt, wenn für die in Ihrer Terraform-Konfigurationsdatei definierte Infrastruktur nicht genügend Kontingent verfügbar ist.
Wenn QUOTA_VALIDATION nicht definiert ist, wird die Kontingentprüfung für Terraform-Konfigurationsdateien deaktiviert. Dies ist der Standardwert. Die Kontingentbestätigung gilt für eine begrenzte Anzahl von Google Cloud -Ressourcen. Weitere Informationen finden Sie unter Kontingente und Limits.
INPUT_1_NAME und INPUT_2_NAME: Alle Eingabewerte in der Terraform-Konfiguration, einschließlich derjenigen, die nicht standardmäßig definiert sind. Sie können beispielsweise
project_id=my-project
als Projekt angeben, in dem Sie die Ressourcen bereitstellen.Wenn alle Eingabewerte in der Konfiguration standardmäßig definiert sind, ist dieses Flag optional.
- Optional:TERRAFORM_VERSION: Die Version von Terraform für Infra Manager, die zum Erstellen der Bereitstellung verwendet werden 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 sind Schlüssel/Wert-Paare im freien Format, die an Ihre Infra Manager-Bereitstellungen angehängt werden können. Weitere Informationen zur Verwendung und zu den Einschränkungen von Anmerkungen und Labels finden Sie unter Anmerkungen und Labels.
gcloud-CLI
In diesem Abschnitt wird beschrieben, wie Sie mit einer Terraform-Konfiguration arbeiten, die auf Ihrem lokalen Computer gespeichert ist.
- Wenn Sie Cloud Shell verwenden, müssen Sie die Konfiguration in Cloud Shell hochladen. Weitere Informationen finden Sie unter Dateien mit Cloud Shell verwalten.
Konfiguration bereitstellen und eine Überarbeitung erstellen:
gcloud infra-manager deployments apply projects/PROJECT_ID/locations/LOCATION/deployments/DEPLOYMENT_ID \ --service-account projects/SERVICE_ACCOUNT_PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT \ --local-source="LOCAL_DIRECTORY" \ --quota-validation=QUOTA_VALIDATION \ --input-values=INPUT_1_NAME=VALUE,INPUT_2_NAME=VALUE \ --tf-version-constraint=TERRAFORM_VERSION \ --annotation="ANNOTATION_KEY=ANNOTATION_VALUE"
- PROJECT_ID: die Projekt-ID, unter der Infra Manager ausgeführt wird.
- LOCATION: Der Speicherort, an dem Infra Manager ausgeführt wird. Eine Liste der gültigen Standorte finden Sie unter Infrastrukturmanager-Standorte.
- DEPLOYMENT_ID: die von Ihnen angegebene Bereitstellungs-ID. Weitere Informationen zu Einschränkungen für die Bereitstellungs-ID finden Sie unter Bereitstellungsname.
- SERVICE_ACCOUNT_PROJECT_ID ist die Projekt-ID des Dienstkontos. In der Regel ist dies dasselbe Projekt, in dem Infra Manager ausgeführt wird.
- SERVICE_ACCOUNT: Der Name des Dienstkontos, mit dem Sie Infra Manager aufrufen.
- LOCAL_DIRECTORY: das lokale Verzeichnis, in dem die Terraform-Konfiguration gespeichert ist. Wenn Sie Cloud Shell verwenden, ist dies das Verzeichnis in Cloud Shell, in dem die Konfiguration gespeichert ist.
- Optional: QUOTA_VALIDATION: Der Wert, der festlegt, ob die Kontingentprüfung für Ressourcen in Ihren Terraform-Konfigurationsdateien beim Erstellen einer Bereitstellung aktiviert oder erzwungen wird. Mögliche Werte:
ENABLED
: Validierung des Rechenkontingents für Ressourcen in Terraform-Konfigurationsdateien aktivieren. Bietet Informationen zu Ressourcen mit unzureichenden Kontingenten.ENFORCED
: Kontingentprüfung erzwingen, damit die Bereitstellung fehlschlägt, wenn für die in Ihrer Terraform-Konfigurationsdatei definierte Infrastruktur nicht genügend Kontingent verfügbar ist.
Wenn QUOTA_VALIDATION nicht definiert ist, wird die Kontingentprüfung für Terraform-Konfigurationsdateien deaktiviert. Dies ist der Standardwert. Die Kontingentbestätigung gilt für eine begrenzte Anzahl von Google Cloud -Ressourcen. Weitere Informationen finden Sie unter Kontingente und Limits.
INPUT_1_NAME und INPUT_2_NAME: Alle Eingabewerte in der Terraform-Konfiguration, einschließlich derer, die nicht standardmäßig definiert sind. Sie können beispielsweise
project_id=my-project
als Projekt angeben, in dem Sie die Ressourcen bereitstellen.Wenn alle Eingabewerte in der Konfiguration standardmäßig definiert sind, ist dieses Flag optional.
- Optional:TERRAFORM_VERSION: Die Version von Terraform für Infra Manager, die zum Erstellen der Bereitstellung verwendet werden 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 sind Schlüssel/Wert-Paare im freien Format, die an Ihre Infra Manager-Bereitstellungen angehängt werden können. Weitere Informationen zur Verwendung und zu den Einschränkungen von Anmerkungen und Labels finden Sie unter Anmerkungen und Labels.
Nächste Schritte
- Weitere Informationen zu Terraform mit Google Cloud
- Bereitstellungen automatisieren
- Status einer Bereitstellung ansehen
- Bereitgestellte Ressourcen ansehen
- Deployment löschen