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

  1. Melden Sie sich bei Ihrem Google-Konto an.

    Wenn Sie noch kein Konto haben, melden Sie sich hier für ein neues Konto an.

  2. Installieren Sie die Google Cloud CLI.

  3. Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.

  4. Führen Sie den folgenden Befehl aus, um die gcloud CLI zu initialisieren:

    gcloud init
  5. Erstellen oder wählen Sie ein Google Cloud Projekt aus.

    Rollen, die zum Auswählen oder Erstellen eines Projekts erforderlich sind

    • Projekt auswählen: Zum Auswählen eines Projekts ist keine bestimmte IAM-Rolle erforderlich. Sie können ein beliebiges 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 resourcemanager.projects.create Berechtigung enthält. Rollen zuweisen.
    • Erstellen Sie ein Google Cloud Projekt:

      gcloud projects create PROJECT_ID

      Ersetzen Sie PROJECT_ID durch einen Namen für das Google Cloud Projekt, das Sie erstellen.

    • Wählen Sie das Google Cloud Projekt aus, das Sie erstellt haben:

      gcloud config set project PROJECT_ID

      Ersetzen Sie PROJECT_ID durch Ihren Google Cloud Projektnamen.

  6. Prüfen Sie, ob für Ihr Google Cloud Projekt die Abrechnung aktiviert ist.

  7. Aktivieren Sie die Infrastructure Manager API:

    Rollen, die zum Aktivieren von APIs erforderlich sind

    Zum Aktivieren von APIs benötigen Sie die Berechtigung serviceusage.services.enable. Wenn Sie das Projekt erstellt haben, haben Sie diese Berechtigung wahrscheinlich bereits über die Rolle „Inhaber“ (roles/owner). Andernfalls können Sie diese Berechtigung über die Rolle „Service Usage-Administrator“ (roles/serviceusage.serviceUsageAdmin) erhalten. Rollen zuweisen.

    gcloud services enable config.googleapis.com
  8. Richten Sie die Authentifizierung ein:

    1. Sie benötigen die IAM-Rolle „Dienstkonten erstellen“ (roles/iam.serviceAccountCreator) und die Rolle „Projekt-IAM-Administrator“ (roles/resourcemanager.projectIamAdmin). Rollen zuweisen.
    2. Erstellen Sie das Dienstkonto:

      gcloud iam service-accounts create SERVICE_ACCOUNT_NAME

      Ersetzen Sie SERVICE_ACCOUNT_NAME durch einen Namen für das Dienstkonto.

    3. Weisen Sie dem Dienstkonto die IAM Rolle zu:roles/config.agent

      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 Dienstkontos
      • PROJECT_ID: die Projekt-ID, unter der Sie das Dienstkonto erstellt haben
  9. Installieren Sie die Google Cloud CLI.

  10. Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.

  11. Führen Sie den folgenden Befehl aus, um die gcloud CLI zu initialisieren:

    gcloud init
  12. Erstellen oder wählen Sie ein Google Cloud Projekt aus.

    Rollen, die zum Auswählen oder Erstellen eines Projekts erforderlich sind

    • Projekt auswählen: Zum Auswählen eines Projekts ist keine bestimmte IAM-Rolle erforderlich. Sie können ein beliebiges 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 resourcemanager.projects.create Berechtigung enthält. Rollen zuweisen.
    • Erstellen Sie ein Google Cloud Projekt:

      gcloud projects create PROJECT_ID

      Ersetzen Sie PROJECT_ID durch einen Namen für das Google Cloud Projekt, das Sie erstellen.

    • Wählen Sie das Google Cloud Projekt aus, das Sie erstellt haben:

      gcloud config set project PROJECT_ID

      Ersetzen Sie PROJECT_ID durch Ihren Google Cloud Projektnamen.

  13. Prüfen Sie, ob für Ihr Google Cloud Projekt die Abrechnung aktiviert ist.

  14. Aktivieren Sie die Infrastructure Manager API:

    Rollen, die zum Aktivieren von APIs erforderlich sind

    Zum Aktivieren von APIs benötigen Sie die Berechtigung serviceusage.services.enable. Wenn Sie das Projekt erstellt haben, haben Sie diese Berechtigung wahrscheinlich bereits über die Rolle „Inhaber“ (roles/owner). Andernfalls können Sie diese Berechtigung über die Rolle „Service Usage-Administrator“ (roles/serviceusage.serviceUsageAdmin) erhalten. Rollen zuweisen.

    gcloud services enable config.googleapis.com
  15. Richten Sie die Authentifizierung ein:

    1. Sie benötigen die IAM-Rolle „Dienstkonten erstellen“ (roles/iam.serviceAccountCreator) und die Rolle „Projekt-IAM-Administrator“ (roles/resourcemanager.projectIamAdmin). Rollen zuweisen.
    2. Erstellen Sie das Dienstkonto:

      gcloud iam service-accounts create SERVICE_ACCOUNT_NAME

      Ersetzen Sie SERVICE_ACCOUNT_NAME durch einen Namen für das Dienstkonto.

    3. Weisen Sie dem Dienstkonto die IAM Rolle zu:roles/config.agent

      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 Dienstkontos
      • PROJECT_ID: die Projekt-ID, unter der Sie das Dienstkonto erstellt haben

Berechtigungen für Ressourcen in der Konfiguration erteilen

Sie haben die Berechtigungen erteilt, die zum Ausführen von Infra Manager erforderlich sind. Sie müssen aber auch Berechtigungen erteilen, die speziell für die Ressourcen gelten, die in der Konfiguration beschrieben sind, die Sie bereitstellen.

Erteilen Sie Berechtigungen für die VPC, die in der Terraform-Konfiguration definiert ist.

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member=serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \
    --role=roles/compute.networkAdmin

Dabei gilt:

  • SERVICE_ACCOUNT_NAME: 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. Mit dieser Vorschau können Sie die Ressourcen überprüfen, die bereitgestellt werden sollen.

Der folgende Befehl enthält vier Werte, 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 Vorschau der Bereitstellung exportieren und ansehen .

Deployment erstellen

Erstellen Sie mit Infra Manager ein Deployment. Das bedeutet, dass Infra Manager die Ressourcen bereitstellt, die in der Terraform-Konfiguration definiert sind.

Die Konfiguration für diese Kurzanleitung enthält vier Werte, für die kein Standardwert festgelegt ist. 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

Wenn die Bereitstellung abgeschlossen ist, 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

Öffnen Sie in der Google Cloud Console die Seite Build-Verlauf , um den Cloud Build-Job aufzurufen, mit dem Infra Manager das Deployment erstellt hat:

Zur Seite "Build-Verlauf"

Status der Bereitstellung ansehen

Nachdem die Bereitstellung abgeschlossen ist, können Sie die Beschreibung aufrufen, um Informationen dazu zu sehen, 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 zur Bereitstellung, einschließlich des Zeitstempels der Bereitstellung, des Namens der letzten Überarbeitung und des Status.

Für den Status sehen Sie 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, es sei denn, Sie haben die Bereitstellung mehrmals durchgeführt. Die ID der letzten Überarbeitung finden Sie in der Bereitstellungsbeschreibung im vorherigen Abschnitt.

VPC in der Console ansehen

VPC in der Console ansehen:

Zur Seite VPC-Netzwerke

Sie sehen die VPC mit dem Namen quickstart-vpc. Das 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, löschen Sie alle Ressourcen, 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:

  1. Wechseln Sie in der Google Cloud Console zur Seite Ressourcen verwalten.

    Zu „Ressourcen verwalten“

  2. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie auf Löschen.
  3. Geben Sie an der Eingabeaufforderung die Projekt-ID ein und klicken Sie auf Herunterfahren.

Nächste Schritte