Vorlage erstellen und prüfen
In dieser Kurzanleitung erfahren Sie, wie Sie eine dreistufige Webanwendungsvorlage erstellen und bereitstellen, die Frontend-, Backend- und Datenbankkomponenten enthält. Das folgende Bild zeigt den Designbereich mit den Anwendungskomponenten und ‑verbindungen.
Sie können die Vorlage mit einer der folgenden Optionen erstellen:
- Der Design-Canvas in Application Design Center.
- Prompts in natürlicher Sprache in Gemini Cloud Assist.
- App Design Center Google Cloud CLI.
Nachdem Sie das Design fertiggestellt haben, können Sie die Vorlage überprüfen, indem Sie eine Testanwendung in App Design Center bereitstellen.
Eine detaillierte Anleitung dazu finden Sie direkt in der Google Cloud Console. Klicken Sie dazu einfach auf Anleitung:
Hinweise
Erstellen Sie ein Nachfolgerprojekt in Ihrem für die App aktivierten Ordner.
Sie stellen Google Cloud -Ressourcen in diesem Projekt bereit, wenn Sie Ihre Anwendung bereitstellen.
Die Abrechnung für Ihr Nachfolgerprojekt muss aktiviert sein.
Tools einrichten
Sie können diese Kurzanleitung mit einer der folgenden Optionen durchführen.
Verwenden Sie den Designbereich in der Google Cloud Console.
Informationen zum Erstellen eines Designs mit Gemini Cloud Assist finden Sie unter Gemini Cloud Assist einrichten.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
Install the 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 -
Install the 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 Zum Erstellen von Vorlagen benötigen Sie eine der folgenden Rollen für das Verwaltungsprojekt:
- App Design Center Admin (
roles/designcenter.admin). - App Design Center User (
roles/designcenter.user).
- App Design Center Admin (
Zum Bereitstellen von Anwendungen benötigen Sie eine der folgenden Rollen für das Verwaltungsprojekt:
- Anwendungs-Admin
(
roles/designcenter.applicationAdmin). - Application Editor (
roles/designcenter.applicationEditor).
- Anwendungs-Admin
(
Wenn Sie ein Dienstkonto während der Bereitstellung erstellen möchten, müssen Sie folgende Rollen haben:
Zum Erstellen von Dienstkonten benötigen Sie die Rolle Dienstkonten erstellen (
roles/iam.serviceAccountCreator) für das Verwaltungsprojekt.Wenn Sie einem Dienstkonto Zugriff auf Ihr untergeordnetes Projekt gewähren möchten, benötigen Sie die Rolle Project IAM Admin (
roles/resourcemanager.projectIamAdmin) für das untergeordnete Projekt.
Rufen Sie in der Google Cloud Console die Seite Vorlagen auf.
Klicken Sie auf Vorlage erstellen und geben Sie die folgenden Details ein:
Geben Sie in das Feld Template ID den String
quickstart-three-tier-web-appein.Geben Sie im Feld Vorlagenname
Quickstart three-tier web appein.Geben Sie im Feld Beschreibung den Text
A template to generate a three-tier web applicationein.Klicken Sie auf Vorlage erstellen.
Die Vorlage wird erstellt und der Designbereich wird angezeigt.
Klicken Sie im Bereich Komponenten auf die folgenden Komponenten, um sie dem Designbereich hinzuzufügen:
- Cloud Run (zwei Komponenten hinzufügen)
- Cloud SQL (PostgreSQL)
So erstellen Sie Verbindungen zwischen Komponenten:
Ziehen Sie eine Linie vom blauen Punkt unten in cloud-run-1 zum blauen Punkt oben in cloud-run-2.
Ziehen Sie eine Linie vom blauen Punkt unten in cloud-run-2 zum blauen Punkt oben in sql-postgresql-1.
Ihre Vorlage enthält drei Komponenten. Es werden Linien zwischen den Komponenten angezeigt, um Verbindungen darzustellen.
Klicken Sie in der Google Cloud -Console-Symbolleiste auf spark Gemini Cloud Assist-Chat öffnen oder schließen.
Der Cloud Assist-Bereich wird geöffnet.
Geben Sie im Gemini Cloud Assist-Chat den folgenden Prompt ein:
I want to create a three-tier web application.Gemini Cloud Assist generiert ein grundlegendes Design für eine dreistufige Webanwendung.
Geben Sie den folgenden Prompt ein, um die Load Balancer- und Secret Manager-Komponenten zu entfernen:
I don't need load balancers or Secret Manager.Gemini Cloud Assist aktualisiert den Entwurf, um die Komponenten zu entfernen.
Sehen Sie sich das aktualisierte Design an, das die folgenden Komponenten umfasst:
- Cloud Run (zwei Komponenten)
- Cloud SQL for PostgreSQL
Klicken Sie auf App-Design bearbeiten.
Die Seite Neue Vorlage erstellen wird angezeigt.
Geben Sie die folgenden Vorlagendetails ein:
Geben Sie in das Feld Template ID den String
quickstart-three-tier-web-appein.Geben Sie im Feld Vorlagenname
Quickstart three-tier web appein.Geben Sie im Feld Beschreibung den Text
A template to generate a three-tier web applicationein.
Klicken Sie auf Vorlage erstellen.
Das System erstellt eine neue Vorlage und zeigt den Designbereich an.
Erstellen Sie eine Anwendungsvorlage.
gcloud design-center spaces application-templates create quickstart-three-tier-web-app \ --display-name="Quickstart three-tier web app" \ --description="A template to generate a three-tier web application" \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_IDFreigegebene Vorlagen im Google-Katalog auflisten
gcloud design-center spaces shared-templates list \ --google-catalog \ --location=us-central1- Suchen Sie die freigegebenen Vorlagen-IDs für Cloud Run und Cloud SQL.
Fügen Sie eine Cloud Run-Komponente hinzu, die als Frontend verwendet werden soll.
gcloud design-center spaces application-templates components create cloud-run-1 \ --application-template=quickstart-three-tier-web-app \ --shared-template-revision-uri=google/1b5e09c8-780f-484e-b8ed-c7178f4e4342 \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_IDFügen Sie eine zweite Cloud Run-Komponente hinzu, die als Backend verwendet werden soll.
gcloud design-center spaces application-templates components create cloud-run-2 \ --application-template=quickstart-three-tier-web-app \ --shared-template-revision-uri=google/1b5e09c8-780f-484e-b8ed-c7178f4e4342 \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_IDCloud SQL-Komponente hinzufügen
gcloud design-center spaces application-templates components create sql-postgresql-1 \ --application-template=quickstart-three-tier-web-app \ --shared-template-revision-uri=google/45be1bc2-89bc-477b-9b5d-64c41ff3b146 \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_IDVerbinden Sie „cloud-run-1“ mit „cloud-run-2“.
gcloud design-center spaces application-templates components connections create frontend-to-backend \ --application-template=quickstart-three-tier-web-app \ --component=cloud-run-1 \ --destination-component-uri=cloud-run-2 \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_IDVerbinden Sie „cloud-run-2“ mit „sql-postgresql-1“.
gcloud design-center spaces application-templates components connections create backend-to-database \ --application-template=quickstart-three-tier-web-app \ --component=cloud-run-2 \ --destination-component-uri=sql-postgresql-1 \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_IDÜbernehmen Sie Ihre Änderungen, um eine Version der Anwendungsvorlage zu erstellen.
gcloud design-center spaces application-templates commit quickstart-three-tier-web-app \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_IDKlicken Sie im Designbereich auf
App konfigurieren .Klicken Sie auf
Neue Anwendung erstellen und gehen Sie folgendermaßen vor:Geben Sie im Feld Name
quickstart-three-tier-testein.Geben Sie im Feld Anzeigename den Wert
Quickstart three-tier testein.Wählen Sie in der Liste Region die Option
us-central1 (Iowa)aus.Wählen Sie in der Liste Umgebung die Option
Testaus.Wählen Sie in der Liste Schweregrad die Option
Lowaus.Wählen Sie unter Bereich in der Liste Anwendungsbereich die Option
Regionalaus.
Klicken Sie auf Anwendung erstellen.
Das System erstellt den Anwendungsentwurf.
Suchen Sie den URI der neuesten Version Ihrer Anwendungsvorlage.
gcloud design-center spaces application-templates describe quickstart-three-tier-web-app \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID \ --format='yaml(name,latestRevision)'Erstellen Sie einen Anwendungsentwurf auf Grundlage Ihrer Vorlage.
gcloud design-center spaces applications create quickstart-three-tier-test \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID \ --source-application-template-revision=projects/MANAGEMENT_PROJECT_ID/locations/us-central1/spaces/SPACE/applicationTemplates/quickstart-three-tier-web-app/revisions/TEMPLATE_REVISION \ --display-name="Quickstart three-tier test" \ --environment-type=test \ --criticality-type=low \ --scope-type=regional \ --deployment-region=us-central1Klicken Sie im Designbereich auf cloud-run-1 und führen Sie im Bereich Konfiguration die folgenden Schritte aus:
Wählen Sie in der Liste Projekt-ID das Nachfolgerprojekt aus, das Sie unter Vorbereitung erstellt haben. Die Ressource wird in diesem Projekt bereitgestellt.
Geben Sie im Feld Name des Service
frontend-serviceein.Klicken Sie auf Speichern.
Klicken Sie im Designbereich auf cloud-run-2 und führen Sie im Bereich Konfiguration die folgenden Schritte aus:
Wählen Sie in der Liste Projekt-ID das Nachfolgerprojekt aus, das Sie unter Vorbereitung erstellt haben. Die Ressource wird in diesem Projekt bereitgestellt.
Geben Sie im Feld Name des Service
backend-serviceein.Klicken Sie auf Speichern.
Klicken Sie im Designbereich auf sql-postgresql-1 und führen Sie im Bereich Konfiguration die folgenden Schritte aus:
Wählen Sie in der Liste Projekt-ID das Nachfolgerprojekt aus, das Sie unter Vorbereitung erstellt haben. Die Ressource wird in diesem Projekt bereitgestellt.
Geben Sie im Feld Name
database-postgresqlein.Wählen Sie in der Liste Datenbankversion die Option
POSTGRES_15aus.Wählen Sie in der Drop-down-Liste Zone die Option
us-central1-aaus.Klicken Sie auf Speichern.
Im Arbeitsbereich werden neben den Komponenten grüne Häkchen angezeigt, um darzustellen, dass Sie die erforderlichen Parameter angegeben haben. Sie können den Anwendungsentwurf jetzt zur Prüfung in der
Test-Umgebung bereitstellen.Beschreiben Sie die Anwendung, um die erforderlichen Konfigurationsparameter zu ermitteln.
gcloud design-center spaces applications describe quickstart-three-tier-test \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID \ --format='yaml(name,componentParameters)'Erstellen Sie für jede Komponente in Ihrem Basisverzeichnis eine JSON-Datei mit den erforderlichen Parameterwerten.
Erstellen Sie
frontend-service.json.{ "component": "projects/MANAGEMENT_PROJECT_ID/locations/us-central1/spaces/SPACE/applicationTemplates/quickstart-three-tier-web-app/components/cloud-run-1", "parameters": [ { "key": "service_name", "value": "frontend-service" }, { "key": "project_id", "value": "DEPLOYMENT_PROJECT_ID" } ] }Erstellen Sie
backend-service.json.{ "component": "projects/MANAGEMENT_PROJECT_ID/locations/us-central1/spaces/SPACE/applicationTemplates/quickstart-three-tier-web-app/components/cloud-run-2", "parameters": [ { "key": "service_name", "value": "backend-service" }, { "key": "project_id", "value": "DEPLOYMENT_PROJECT_ID" } ] }Erstellen Sie
database-postgresql.json.{ "component": "projects/MANAGEMENT_PROJECT_ID/locations/us-central1/spaces/SPACE/applicationTemplates/quickstart-three-tier-web-app/components/sql-postgresql-1", "parameters": [ { "key": "name", "value": "database-postgresql" }, { "key": "project_id", "value": "DEPLOYMENT_PROJECT_ID" }, { "key": "database_version", "value": "POSTGRES_15" }, { "key": "region", "value": "us-central1" }, { "key": "zone", "value": "us-central1-a" } ] }
Aktualisieren Sie die Anwendung, um die erforderlichen Parameter zu konfigurieren.
gcloud design-center spaces applications update quickstart-three-tier-test \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID \ --component-parameters=./frontend-service.json \ --component-parameters=./backend-service.json \ --component-parameters=./database-postgresql.jsonKlicken Sie auf
Bereitstellen .Gehen Sie im Bereich Dienstkonto auswählen so vor:
Klicken Sie auf Neues Dienstkonto erstellen.
Klicken Sie auf Fortfahren.
Klicken Sie auf Bereitstellen.
Nach einigen Minuten wird die Anwendung bereitgestellt und Ressourcen in Ihrem Projekt erzeugt. Das System zeigt die folgenden Details an:
- Einen Link zu App Hub, wo Sie Details zu bereitgestellten Ressourcen aufrufen können, darunter Links zu Monitoring-Dashboards.
- Links zu Cloud Build-Logs, mit denen Sie Bereitstellungsfehler beheben können.
- Es werden Ausgaben wie Dienst-URIs angezeigt, über die Sie mit bereitgestellten Ressourcen interagieren können.
Über diese Kurzanleitung hinausgehende Informationen finden sich unter Anwendungsvorlage aktualisieren und neu bereitstellen.
Beschreiben Sie die Anwendung, um die erforderlichen IAM-Rollen für Ihr Dienstkonto für die Bereitstellung zu ermitteln.
gcloud design-center spaces applications describe quickstart-three-tier-test \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID \ --format='yaml(name,projectParameters)'Erstellen Sie ein neues Dienstkonto, um die Anwendung bereitzustellen.
gcloud iam service-accounts create quickstart-service-account \ --project=MANAGEMENT_PROJECT_ID \ --display-name="Quickstart service account" \ --description="A service account to deploy the ADC quickstart"Fügen Sie dem Dienstkonto die erforderlichen Rollen für das Bereitstellungsprojekt hinzu.
#!/bin/bash PROJECT_ID="DEPLOYMENT_PROJECT_ID" SERVICE_ACCOUNT="quickstart-service-account@MANAGEMENT_PROJECT_ID.iam.gserviceaccount.com" ROLES=( "roles/iap.admin" "roles/compute.networkAdmin" "roles/compute.viewer" "roles/run.admin" "roles/iam.serviceAccountAdmin" "roles/serviceusage.serviceUsageAdmin" "roles/cloudkms.admin" "roles/logging.logWriter" "roles/iam.serviceAccountUser" "roles/cloudsql.admin" "roles/cloudkms.autokeyAdmin" "roles/storage.admin" "roles/serviceusage.serviceUsageViewer" "roles/resourcemanager.projectIamAdmin" "roles/cloudkms.cryptoKeyEncrypterDecrypter" ) for role in "${ROLES[@]}"; do echo "Adding role: ${role}" gcloud projects add-iam-policy-binding "${PROJECT_ID}" \ --member="serviceAccount:${SERVICE_ACCOUNT}" \ --role="${role}" echo "---" done echo "Finished adding roles."Fügen Sie dem Dienstkonto die erforderlichen Rollen für das Verwaltungsprojekt hinzu.
#!/bin/bash PROJECT_ID="MANAGEMENT_PROJECT_ID" SERVICE_ACCOUNT="quickstart-service-account@MANAGEMENT_PROJECT_ID.iam.gserviceaccount.com" ROLES=( "roles/config.agent" "roles/apphub.editor" ) for role in "${ROLES[@]}"; do echo "Adding role: ${role}" gcloud projects add-iam-policy-binding "${PROJECT_ID}" \ --member="serviceAccount:${SERVICE_ACCOUNT}" \ --role="${role}" echo "---" done echo "Finished adding roles."Ermitteln Sie die Nummer Ihres Verwaltungsprojekts.
gcloud projects describe MANAGEMENT_PROJECT_ID \ --format="value(projectNumber)"Fügen Sie Ihrem Verwaltungsprojekt eine IAM-Richtlinienbindung für die Rolle
roles/iam.serviceAccountUserhinzu.gcloud iam service-accounts add-iam-policy-binding projects/MANAGEMENT_PROJECT_ID/serviceAccounts/quickstart-service-account@MANAGEMENT_PROJECT_ID.iam.gserviceaccount.com \ --project=MANAGEMENT_PROJECT_ID \ --member="serviceAccount:service-MANAGEMENT_PROJECT_NUMBER@gcp-sa-designcenter.iam.gserviceaccount.com" \ --role="roles/iam.serviceAccountUser"Aktualisieren Sie die Anwendung, damit sie Ihr Dienstkonto verwendet.
gcloud design-center spaces applications update quickstart-three-tier-test \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID \ --service-account=projects/MANAGEMENT_PROJECT_ID/serviceAccounts/quickstart-service-account@MANAGEMENT_PROJECT_ID.iam.gserviceaccount.comErteilen Sie Ihrem Nutzer die Berechtigung „actAs“ für Ihr Dienstkonto.
gcloud iam service-accounts add-iam-policy-binding quickstart-service-account@MANAGEMENT_PROJECT_ID.iam.gserviceaccount.com \ --project=MANAGEMENT_PROJECT_ID \ --member="user:USER" \ --role="roles/iam.serviceAccountUser"USER ist Ihr Google Cloud Nutzer. Beispiel:
dana@example.com.Anwendung als Vorschau anzeigen lassen:
Das Erstellen der Vorschau dauert einige Minuten.
gcloud design-center spaces applications preview quickstart-three-tier-test \ --location=us-central1 \ --space=SPACE \ --project=MANAGEMENT_PROJECT_IDStellen Sie die Anwendung bereit.
gcloud design-center spaces applications deploy quickstart-three-tier-test \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID \ --asyncVorgangs-ID ermitteln
Die Bereitstellung kann einige Minuten dauern. Verfolgen Sie den Bereitstellungsstatus.
gcloud design-center operations describe operation-OPERATION_ID \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_IDWenn die Bereitstellung abgeschlossen ist, identifizieren Sie die Ausgabeparameter der Anwendung.
gcloud design-center spaces applications describe quickstart-three-tier-test \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID \ --format='yaml(name,appParameters,componentParameters,deploymentMetadata,deploymentRevision,previewReference)'-
Rufen Sie in der Google Cloud Console die Seite Anwendungsmonitoring auf:
Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.
Wählen Sie in der Projektauswahl der Google Cloud Console das Verwaltungsprojekt aus.
Eine detaillierte Anleitung zur Verwendung der vordefinierten Dashboards und zum Analysieren Ihrer Telemetriedaten finden Sie unter Anwendungstelemetriedaten ansehen.
Klicken Sie im Navigationsmenü auf Anwendungen.
Klicken Sie in der Tabelle auf Kurzanleitung: Dreistufige Web-App.
Klicken Sie auf Aktionen und wählen Sie Anwendung löschen aus.
Geben Sie im Feld Löschen den Wert
Quickstart three-tier web appein.Klicken Sie auf Löschen.
- Die Anwendungsdetails werden aus dem App Design Center entfernt.
- Die zugrunde liegende App Hub-Anwendung wird gelöscht.
- Die zugrunde liegenden Ressourcen werden gelöscht.
- 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.
Besitz erforderlicher Rollen prüfen
Neue Vorlage erstellen und Details hinzufügen
Design-Canvas
Gemini Cloud Assist
gcloud-CLI
Einen Anwendungsentwurf erstellen
Design-Canvas
gcloud-CLI
Komponenten konfigurieren
Design-Canvas
gcloud-CLI
Anwendung bereitstellen
Design-Canvas
gcloud-CLI
Optional: Bereitstellung überwachen
Nachdem Sie eine Anwendung bereitgestellt haben, können Sie Application Monitoring verwenden, um die Telemetrie der Anwendung aufzurufen und den Zustand und die Leistung zu überwachen:
Im Cloud Hub finden Sie außerdem zusätzliche Informationen zu Zustand und Leistung, darunter Bereitstellungsfehler und Bereitstellungen, die aktualisiert werden können, Informationen zu Google Cloud Vorfällen, die sich auf Ihre Anwendungen auswirken, und Dienste, die sich ihren Kontingentlimits nähern.
Bereinigen
Löschen Sie das Projekt von Google Cloud zusammen mit den Ressourcen, damit Ihrem Konto von Google Cloud die auf dieser Seite verwendeten Ressourcen nicht in Rechnung gestellt werden.
Bereitgestellte Anwendung löschen
Das System löscht die Anwendung, einschließlich der folgenden Elemente:
Optional: Projekt löschen
So löschen Sie das von Ihnen erstellte Nachfolgerprojekt im Abschnitt Vorbereitung: