VPC mit Terraform bereitstellen
Hier erfahren Sie, wie Sie mit Infrastructure Manager eine Virtual Private Cloud (VPC) bereitstellen.
In dieser Kurzanleitung wird eine Terraform-Konfiguration verwendet, die in einem öffentlichen GitHub-Repository gespeichert ist. Die Konfiguration definiert die bereitzustellende VPC.
Hinweis
-
Melden Sie sich in Ihrem Google-Konto an.
Wenn Sie noch kein Konto haben, melden Sie sich hier für ein neues Konto an.
-
Installieren Sie die Google Cloud CLI.
-
Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.
-
Führen Sie den folgenden Befehl aus, um die gcloud CLI zu initialisieren:
gcloud init -
Erstellen Sie ein Google Cloud Projekt oder wählen Sie eines aus.
Rollen, die zum Auswählen oder Erstellen eines Projekts erforderlich sind
- Projekt auswählen: Für die Auswahl eines Projekts ist keine bestimmte IAM-Rolle erforderlich. Sie können jedes Projekt auswählen, für das Ihnen eine Rolle zugewiesen wurde.
-
Projekt erstellen: Zum Erstellen eines Projekts benötigen Sie die Rolle „Projektersteller“ (
roles/resourcemanager.projectCreator), die die Berechtigungresourcemanager.projects.createenthält. Weitere Informationen zum Zuweisen von Rollen
-
So erstellen Sie ein Google Cloud -Projekt:
gcloud projects create PROJECT_ID
Ersetzen Sie
PROJECT_IDdurch einen Namen für das Google Cloud -Projekt, das Sie erstellen. -
Wählen Sie das von Ihnen erstellte Google Cloud Projekt aus:
gcloud config set project PROJECT_ID
Ersetzen Sie
PROJECT_IDdurch den Namen Ihres Projekts in Google Cloud .
-
Prüfen Sie, ob für Ihr Google Cloud Projekt die Abrechnung aktiviert ist.
Aktivieren Sie die Infrastructure Manager API:
Rollen, die zum Aktivieren von APIs erforderlich sind
Zum Aktivieren von APIs benötigen Sie die IAM-Rolle „Service Usage-Administrator“ (
roles/serviceusage.serviceUsageAdmin), die die Berechtigungserviceusage.services.enableenthält. Weitere Informationen zum Zuweisen von Rollengcloud services enable config.googleapis.com
-
Richten Sie die Authentifizierung ein:
-
Sie benötigen die IAM-Rolle „Dienstkonten erstellen“ (
roles/iam.serviceAccountCreator) und die IAM-Rolle „Projekt-IAM-Administrator“ (roles/resourcemanager.projectIamAdmin). Informationen zum Zuweisen von Rollen -
Erstellen Sie das Dienstkonto:
gcloud iam service-accounts create SERVICE_ACCOUNT_NAME
Ersetzen Sie
SERVICE_ACCOUNT_NAMEmit einem Namen für das Dienstkonto. -
Weisen Sie dem Dienstkonto die IAM-Rolle
roles/config.agentzu.gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" --role=roles/config.agent
Dabei gilt:
SERVICE_ACCOUNT_NAME: der Name des DienstkontosPROJECT_ID: die Projekt-ID, unter der Sie das Dienstkonto erstellt haben
-
Sie benötigen die IAM-Rolle „Dienstkonten erstellen“ (
-
Installieren Sie die Google Cloud CLI.
-
Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.
-
Führen Sie den folgenden Befehl aus, um die gcloud CLI zu initialisieren:
gcloud init -
Erstellen Sie ein Google Cloud Projekt oder wählen Sie eines aus.
Rollen, die zum Auswählen oder Erstellen eines Projekts erforderlich sind
- Projekt auswählen: Für die Auswahl eines Projekts ist keine bestimmte IAM-Rolle erforderlich. Sie können jedes Projekt auswählen, für das Ihnen eine Rolle zugewiesen wurde.
-
Projekt erstellen: Zum Erstellen eines Projekts benötigen Sie die Rolle „Projektersteller“ (
roles/resourcemanager.projectCreator), die die Berechtigungresourcemanager.projects.createenthält. Weitere Informationen zum Zuweisen von Rollen
-
So erstellen Sie ein Google Cloud -Projekt:
gcloud projects create PROJECT_ID
Ersetzen Sie
PROJECT_IDdurch einen Namen für das Google Cloud -Projekt, das Sie erstellen. -
Wählen Sie das von Ihnen erstellte Google Cloud Projekt aus:
gcloud config set project PROJECT_ID
Ersetzen Sie
PROJECT_IDdurch den Namen Ihres Projekts in Google Cloud .
-
Prüfen Sie, ob für Ihr Google Cloud Projekt die Abrechnung aktiviert ist.
Aktivieren Sie die Infrastructure Manager API:
Rollen, die zum Aktivieren von APIs erforderlich sind
Zum Aktivieren von APIs benötigen Sie die IAM-Rolle „Service Usage-Administrator“ (
roles/serviceusage.serviceUsageAdmin), die die Berechtigungserviceusage.services.enableenthält. Weitere Informationen zum Zuweisen von Rollengcloud services enable config.googleapis.com
-
Richten Sie die Authentifizierung ein:
-
Sie benötigen die IAM-Rolle „Dienstkonten erstellen“ (
roles/iam.serviceAccountCreator) und die IAM-Rolle „Projekt-IAM-Administrator“ (roles/resourcemanager.projectIamAdmin). Informationen zum Zuweisen von Rollen -
Erstellen Sie das Dienstkonto:
gcloud iam service-accounts create SERVICE_ACCOUNT_NAME
Ersetzen Sie
SERVICE_ACCOUNT_NAMEmit einem Namen für das Dienstkonto. -
Weisen Sie dem Dienstkonto die IAM-Rolle
roles/config.agentzu.gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" --role=roles/config.agent
Dabei gilt:
SERVICE_ACCOUNT_NAME: der Name des DienstkontosPROJECT_ID: die Projekt-ID, unter der Sie das Dienstkonto erstellt haben
-
Sie benötigen die IAM-Rolle „Dienstkonten erstellen“ (
Berechtigungen für Ressourcen in der Konfiguration erteilen
Sie haben die zum Ausführen von Infra Manager erforderlichen Berechtigungen erteilt. Sie müssen aber auch Berechtigungen erteilen, die für die Ressourcen spezifisch sind, die in der Konfiguration beschrieben sind, die Sie bereitstellen.
Erteilen Sie Berechtigungen für die VPC, die in der Terraform-Konfiguration als Ressource definiert ist.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \
--role=roles/compute.networkAdmin
Ersetzen Sie Folgendes:
- SERVICE_ACCOUNT_NAME ist der Name des Dienstkontos.
- PROJECT_ID: Ihre Projekt-ID.
Vorschau der Bereitstellung ansehen
Bevor Sie eine Bereitstellung erstellen, können Sie eine Vorschau der Bereitstellung erstellen. Mithilfe dieser Vorschau können Sie die Ressourcen überprüfen, die bereitgestellt werden sollen.
Im folgenden Befehl sind vier Werte angegeben, für die kein Standardwert festgelegt ist.
Diese Werte sind: Ihre Projekt-ID, der Name des Dienstkontos, der Standort us-central1 und der Name quickstart-vpc für das Netzwerk, das Sie erstellen.
Verwenden Sie den folgenden Befehl, um eine Vorschau zu erstellen:
gcloud infra-manager previews create projects/PROJECT_ID/locations/us-central1/previews/quickstart-preview \
--service-account projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \
--git-source-repo=https://github.com/terraform-google-modules/terraform-google-network \
--git-source-directory=modules/vpc \
--git-source-ref=main \
--input-values=project_id=PROJECT_ID,network_name=quickstart-vpc
Nachdem Sie eine Vorschau erstellt haben, können Sie die Vorschauergebnisse überprüfen. In dieser Kurzanleitung wird dieser Schritt übersprungen. Weitere Informationen finden Sie unter Vorschauergebnisse exportieren und ansehen.
Deployment erstellen
Erstellen Sie ein Deployment mit Infrastructure Manager. Das bedeutet, dass Infra Manager die Ressourcen bereitstellt, die in der Terraform-Konfiguration definiert sind.
Die Konfiguration für diese Kurzanleitung hat vier Werte, die keinen Standardwert haben. Mit dem folgenden Befehl werden diese Werte hinzugefügt: Ihre Projekt-ID, der Name des Dienstkontos, der Standort us-central1 und der Name quickstart-vpc für das Netzwerk, das Sie erstellen.
gcloud infra-manager deployments apply projects/PROJECT_ID/locations/us-central1/deployments/quickstart-deployment \
--service-account=projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \
--git-source-repo=https://github.com/terraform-google-modules/terraform-google-network \
--git-source-directory=modules/vpc \
--git-source-ref=main \
--input-values=project_id=PROJECT_ID,network_name=quickstart-vpc
Nach der Bereitstellung sehen Sie Folgendes:
Creating the deployment...done
Die VPC wurde jetzt wie in der Konfiguration beschrieben erstellt und konfiguriert.
Build-Ergebnisse in Cloud Build ansehen
Wenn Sie den Cloud Build-Job aufrufen möchten, mit dem Infra Manager die Bereitstellung erstellt hat, öffnen Sie in der Google Cloud Console die Seite Build-Verlauf:
Status der Bereitstellung ansehen
Nachdem die Bereitstellung abgeschlossen ist, können Sie sich die Beschreibung ansehen, um Informationen dazu zu erhalten, einschließlich des Status.
Beschreibung der Bereitstellung ansehen:
gcloud infra-manager deployments describe projects/PROJECT_ID/locations/us-central1/deployments/quickstart-deployment
Die Ausgabe enthält Details zum Deployment, einschließlich des Zeitstempels des Deployments, des Namens der letzten Version und des Status.
Der Status ist ACTIVE.
Details zur bereitgestellten VPC ansehen
Details zur bereitgestellten VPC ansehen:
gcloud infra-manager resources list --revision=projects/PROJECT_ID/locations/us-central1/deployments/quickstart-deployment/revisions/REVISION_ID
Ersetzen Sie REVISION_ID durch die ID der letzten Überarbeitung. Diese ID ist r-0, sofern Sie die App nicht mehrmals bereitgestellt haben. Die ID der letzten Revision finden Sie in der Deployment-Beschreibung im vorherigen Abschnitt.
VPC in der Konsole ansehen
So rufen Sie die VPC in der Console auf:
Sie sehen die VPC mit dem Namen quickstart-vpc. Dies ist die VPC, die von Infra Manager bereitgestellt wurde.
Bereinigen
Damit Ihrem Google Cloud -Konto die auf dieser Seite verwendeten Ressourcen nicht in Rechnung gestellt werden, müssen Sie Ressourcen löschen, die Sie nicht mehr benötigen.
VPC löschen
Löschen Sie die VPC und die Metadaten zur Bereitstellung:
gcloud infra-manager deployments delete projects/PROJECT_ID/locations/us-central1/deployments/quickstart-deployment
Optional: Projekt löschen
Wenn Sie die Lösung in einem neuen Google Cloud -Projekt bereitgestellt haben und das Projekt nicht mehr benötigen, löschen Sie es mit den folgenden Schritten:
- Wechseln Sie in der Google Cloud -Console zur Seite Ressourcen verwalten.
- Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie auf Löschen.
- Geben Sie an der Eingabeaufforderung die Projekt-ID ein und klicken Sie auf Beenden.
Nächste Schritte
- Weitere Informationen zu Infra Manager finden Sie unter Funktionsweise von Infra Manager.
- Weitere Informationen zu Infra Manager und Terraform
- Deployment aktualisieren
- Bereitstellungen automatisieren:
- Eine Reihe von Konfigurationen und Modulen, die für Google Cloudverwendet werden können, finden Sie unter Terraform-Blueprints und -Module für Google Cloud.