Verbindung zu Cloud SQL for PostgreSQL über die flexible App Engine-Standardumgebung herstellen
Erfahren Sie, wie Sie eine Beispielanwendung in der flexiblen App Engine-Umgebung bereitstellen, die über die Google Cloud Console und eine Clientanwendung mit einer PostgreSQL-Instanz verbunden ist.
Angenommen, Sie führen alle Schritte zeitnah aus. Die in dieser Kurzanleitung erstellten Ressourcen kosten in der Regel weniger als einen Dollar (US-Dollar).
Vorbereitung
- 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Aktivieren Sie die Cloud APIs, die zum Ausführen einer Cloud SQL-Beispielanwendung in der flexiblen App Engine-Umgebung erforderlich sind.
Console
Klicken Sie auf die Schaltfläche unten, um die für diese Kurzanleitung erforderlichen APIs zu aktivieren.
Dadurch werden die folgenden APIs aktiviert:
- Cloud SQL Admin API
- Compute Engine API
- Cloud Build API
- Cloud Logging API
Mit einem Klick auf die Schaltfläche aktivieren Sie auch die flexible Google App Engine-Umgebung.
gcloud
Klicken Sie auf die folgende Schaltfläche, um Cloud Shell zu öffnen, die Befehlszeilenzugriff auf Ihre Google Cloud-Ressourcen direkt über den Browser bietet. Mit Cloud Shell können Sie die in dieser Kurzanleitung vorgestellten
gcloud
-Befehle ausführen.Führen Sie den folgenden
gcloud
-Befehl mit Cloud Shell aus:gcloud services enable appengineflex.googleapis.com sqladmin.googleapis.com \ compute.googleapis.com cloudbuild.googleapis.com logging.googleapis.com
Mit diesem Befehl werden die folgenden APIs aktiviert:
- Cloud SQL Admin API
- Compute Engine API
- Cloud Build API
- Cloud Logging API
Mit dem obigen Befehl aktivieren Sie auch die flexible Google App Engine-Umgebung.
Cloud SQL einrichten
Cloud SQL-Instanz erstellen
Datenbank erstellen
Console
-
Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen.
- Wählen Sie
quickstart-instance
aus. - Wählen Sie im SQL-Navigationsmenü die Option Datenbanken aus.
- Klicken Sie auf Create database (Datenbank erstellen).
- Geben Sie im Feld Datenbankname des Dialogfelds Neue Datenbank
quickstart-db
ein. - Klicken Sie auf Erstellen.
gcloud
Führen Sie den Befehl gcloud
sql databases create
aus, um eine Datenbank zu erstellen.
gcloud sql databases create quickstart-db --instance=quickstart-instance
Nutzer erstellen
Console
-
Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen.
- Wählen Sie die PostgreSQL-Instanz quickstart-instance aus, die Sie erstellt haben.
- Wählen Sie im SQL-Navigationsmenü die Option Nutzer aus.
- Klicken Sie auf Nutzerkonto hinzufügen.
- Geben Sie auf der Seite Nutzerkonto zur Instanz quickstart-instance hinzufügen die folgenden Informationen ein:
- Geben Sie im Feld Nutzername
quickstart-user
ein. - Geben Sie im Feld Passwort ein Passwort für den Datenbanknutzer ein. Notieren Sie dieses Passwort zur Verwendung in einem späteren Schritt dieser Kurzanleitung.
- Geben Sie im Feld Nutzername
- Klicken Sie auf Hinzufügen.
gcloud
Bevor Sie den folgenden Befehl ausführen, ersetzen Sie die folgenden Werte:
- PASSWORD durch ein Passwort für Ihren Datenbanknutzer. Notieren Sie dies zur Verwendung in einem späteren Schritt dieser Kurzanleitung.
Führen Sie den Befehl gcloud sql users create
aus, um den Nutzer zu erstellen.
gcloud sql users create quickstart-user \ --instance=quickstart-instance \ --password=PASSWORD
Für Cloud SQL gelten die gleichen Längenbeschränkungen für Nutzernamen wie für lokales PostgreSQL.
Beispielanwendung in der flexiblen App Engine-Umgebung bereitstellen
App Engine-Anwendung erstellen
Console
-
Rufen Sie in der Google Cloud Console die Seite App Engine auf.
- Klicken Sie auf Anwendung erstellen.
- Wählen Sie im Drop-down-Menü Region auswählen die Option us-central aus.
- Klicken Sie auf Weiter.
- Wenn die Seite Erste Schritte angezeigt wird, scrollen Sie nach unten.
- Klicken Sie auf den Link Ich führe diesen Schritt später aus.
gcloud
-
Führen Sie den folgenden
gcloud app create
-Befehl aus, um eine App Engine-Anwendung zu erstellen: - Wenn Sie zur Auswahl der Region aufgefordert werden, in der sich Ihre App Engine-Anwendung befinden soll, geben Sie die numerische Option für us-central ein.
gcloud app create
App Engine-Dienstkonto konfigurieren
Console
-
Öffnen Sie in der Google Cloud Console die Seite IAM.
- Klicken Sie für das Dienstkonto App Engine-Standarddienstkonto auf das Stiftsymbol.
- Klicken Sie auf Weitere Rolle hinzufügen.
- Fügen Sie die Rolle namens Cloud SQL-Client hinzu.
- Klicken Sie auf Speichern.
gcloud
-
Führen Sie den folgenden
gcloud
-Befehl aus, um eine Liste der Dienstkonten Ihres Projekts abzurufen:gcloud iam service-accounts list
- Kopieren Sie die E-MAIL-ADRESSE des App Engine-Dienstkontos.
- Führen Sie den folgenden Befehl aus, um dem App Engine-Dienstkonto die Rolle Cloud SQL-Client hinzuzufügen:
gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \ --member="serviceAccount:SERVICE_ACCOUNT_EMAIL" \ --role="roles/cloudsql.client"
Beispielanwendung für Cloud SQL konfigurieren und bereitstellen
Nachdem Sie eine Cloud SQL-Instanz und -Datenbank erstellt und dem App Engine-Dienstkonto Berechtigungen zum Herstellen einer Verbindung zu Cloud SQL zugewiesen haben, können Sie eine Beispielanwendung so konfigurieren und bereitstellen, dass eine Verbindung zu Ihrer Cloud SQL-Instanz hergestellt wird.
Bereinigen
Mit den folgenden Schritten vermeiden Sie, dass Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen in Rechnung gestellt werden:
-
Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen.
- Wählen Sie die Instanz
quickstart-instance
aus, um die Seite Instanzendetails zu öffnen. - Klicken Sie oben auf der Seite in der Symbolleiste auf Löschen.
- Geben Sie im Dialogfeld Instanz löschen
quickstart-instance
ein und klicken Sie dann auf Löschen, um die Instanz zu löschen. Mit der Deaktivierung der Anwendung können Sie keine Instanzen mehr ausführen und keine Anfragen mehr verarbeiten. Wenn Ihre Anwendung eine Anfrage verarbeitet, schließt sie die Anfrage ab, bevor sie deaktiviert wird.
So deaktivieren Sie eine App Engine-Anwendung und behalten Sie ihre Daten bei:
Öffnen Sie in der Google Cloud Console die Seite Einstellungen:
Klicken Sie im Tab Anwendungseinstellungen auf Anwendung deaktivieren.
Geben Sie im Feld App-ID die ID der App ein, die Sie deaktivieren möchten, und klicken Sie dann auf Deaktivieren.
Optionale Bereinigungsschritte
Wenn Sie nicht die Rolle Cloud SQL-Client verwenden, die Sie dem Compute Engine-Dienstkonto zugewiesen haben, können Sie sie entfernen.
-
Öffnen Sie in der Google Cloud Console die Seite IAM.
- Klicken Sie auf das Stiftsymbol für das IAM-Konto Compute Engine-Standarddienstkonto.
- Löschen Sie die Rolle Cloud SQL-Client.
- Klicken Sie auf Speichern.
Wenn Sie die APIs, die im Rahmen dieser Kurzanleitung aktiviert wurden, nicht verwenden, können Sie sie deaktivieren.
- APIs, die in dieser Kurzanleitung aktiviert wurden:
- Compute Engine API
- Cloud SQL Admin API
- Cloud Run API
- Container Registry API
- Cloud Build API
Öffnen Sie in der Google Cloud Console die Seite APIs.
Wählen Sie eine API aus, die Sie deaktivieren möchten, und klicken Sie dann auf die Schaltfläche API deaktivieren.
Nächste Schritte
Je nach Bedarf können Sie sich eingehender über das Erstellen von Cloud SQL-Instanzen informieren.Sie können sich auch über das Erstellen von PostgreSQL-Nutzern und Datenbanken für Ihre Cloud SQL-Instanz informieren.
Weitere Informationen zu Preisen finden Sie unter Cloud SQL for PostgreSQL – Preise.
Mehr zu folgenden Themen:
- Cloud SQL-Instanz mit einer öffentlichen IP-Adresse konfigurieren
- Cloud SQL-Instanz mit einer privaten IP-Adresse konfigurieren
Außerdem erfahren Sie, wie Sie von anderen Google Cloud-Anwendungen aus eine Verbindung zu einer Cloud SQL-Instanz herstellen können: