Wenn Sie SQL-Abfragen ausführen und Ihre Datenbank von einer virtuellen Maschine (VM) in Ihrem VPC-Netzwerk (Virtual Private Cloud) verwalten möchten, können Sie das psql-Clienttool auf einer Compute Engine-VM über den Zugriff auf private Dienste mit einer AlloyDB-Instanz verbinden:
- Erstellen Sie eine Compute Engine-VM, die über den Zugriff auf private Dienste eine Verbindung zu AlloyDB-Instanzen herstellen kann.
- Installieren Sie den
psql-Client auf der Compute Engine-VM. - Rufen Sie die IP-Adresse der AlloyDB-Instanz ab, zu der Sie eine Verbindung herstellen möchten.
- Führen Sie den
psql-Client aus.
Die ersten beiden Aufgaben sind einmalige Vorgänge. Nachdem Sie eine Compute Engine-VM erstellt und den psql-Client darauf installiert haben, können Sie die VM weiterhin verwenden, um psql mit AlloyDB-Instanzen zu verbinden. Führen Sie dazu die verbleibenden Aufgaben aus.
Hinweis
- Das Projekt von Google Cloud , das Sie verwenden, muss für den Zugriff auf AlloyDB aktiviert sein.
- Ein VPC-Netzwerk im Projekt von Google Cloud , das Sie verwenden, muss bereits für den Zugriff auf private Dienste auf AlloyDB konfiguriert sein.
- Sie benötigen eine der folgenden IAM-Rollen im Projekt von Google Cloud , das Sie verwenden:
roles/alloydb.admin(die vordefinierte IAM-Rolle „AlloyDB Admin“)roles/owner(einfache IAM-Rolle „Inhaber“)roles/editor(einfache IAM-Rolle „Bearbeiter“)
Wenn Sie keine dieser Rollen haben, wenden Sie sich an den Organisationsadministrator, um Zugriff anzufordern.
- Wenn der Clienthost eine Firewall hat, muss er ausgehende Verbindungen zu Port 5432 für die IP-Adressen Ihrer AlloyDB-Instanzen zulassen.
Compute Engine-VM erstellen
Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf:
- Wählen Sie das Projekt aus, das die AlloyDB-Instanz enthält, zu der Sie eine Verbindung herstellen möchten.
- Klicken Sie auf Instanz erstellen.
- Klicken Sie auf den Bereich Maschinenkonfiguration.
- Geben Sie einen Namen für die Instanz ein.
- Konfigurieren Sie die Region und Zone, in der Sie die Instanz erstellen möchten.
- Wählen Sie eine Maschinenreihe und den entsprechenden Maschinentyp aus.
- Behalten Sie die Standardwerte im Bereich Betriebssystem und Speicher bei.
- Klicken Sie auf den Abschnitt Netzwerk und legen Sie für Netzwerkschnittstellen das VPC-Netzwerk fest, das für den Zugriff auf private Dienste für AlloyDB konfiguriert ist.
Wenn Netzwerkschnittstellen nicht auf das VPC-Netzwerk festgelegt ist, das für den Zugriff auf private Dienste konfiguriert ist, maximieren Sie es und legen Sie dann Netzwerk auf das VPC-Netzwerk fest. - Behalten Sie die Standardwerte im Abschnitt Beobachtbarkeit bei.
- Klicken Sie auf den Abschnitt Sicherheit.
- Legen Sie unter Identität und API-Zugriff die Zugriffsbereiche auf Uneingeschränkten Zugriff auf alle Cloud APIs zulassen fest.
- Behalten Sie die Standardwerte im Abschnitt Erweitert bei.
- Klicken Sie auf Erstellen.
Nachdem die VM erstellt wurde, stellen Sie über SSH eine Verbindung zur erstellten Compute Engine-VM her.
psql-Clienttool installieren
Informationen zum Installieren des psql-Clienttools auf Ihrem Clienthost finden Sie unter psql-Clienttool installieren.
Wenn Sie eine Compute Engine-VM als Clienthost verwenden, führen Sie die folgenden Schritte aus, um eine Verbindung zu Ihrer VM herzustellen und psql zu installieren:
Stellen Sie eine SSH-Verbindung zur von Ihnen erstellten Compute Engine-VM her.
Console
- Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
- Klicken Sie in der Liste der VM-Instanzen in der Zeile der gerade erstellten Instanz auf SSH.
gcloud
Verwenden Sie den Befehl
gcloud compute ssh, um eine Verbindung zur erstellten Instanz herzustellen.gcloud compute ssh --project=PROJECT_ID --zone=ZONE VM_NAME
Ersetzen Sie Folgendes:
PROJECT_IDist die ID des Projekts, das die Instanz enthält.ZONEist der Name der Zone, in der sich die Instanz befindet.VM_NAMEden Namen der Instanz
Installieren Sie den
psql-Client aus dem Paketmanager:sudo apt-get update sudo apt-get install postgresql-client
IP-Adresse der AlloyDB-Instanz abrufen
Wenn Sie die IP-Adresse der AlloyDB-Instanz abrufen möchten, zu der Sie eine Verbindung herstellen möchten, rufen Sie die Einstellungen dieser Instanz auf.
psql-Client ausführen
- Stellen Sie eine SSH-Verbindung zur erstellten VM her.
Console
- Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
- Klicken Sie in der Liste der VM-Instanzen in der Zeile der gerade erstellten Instanz auf SSH.
gcloud
Verwenden Sie den Befehl
gcloud compute ssh, um eine Verbindung zur erstellten Instanz herzustellen.gcloud compute ssh --project=PROJECT_ID --zone=ZONE VM_NAME
Ersetzen Sie Folgendes:
PROJECT_ID: die ID des Projekts, das die Instanz enthält.ZONE: der Name der Zone, in der sich die Instanz befindet.VM_NAME: der Name der Instanz.
- Führen Sie das
psql-Clienttool aus:psql -h IP_ADDRESS -p 5432 -U USERNAME -d postgres
Sie werden aufgefordert, das Passwort für den USERNAME-Nutzer einzugeben.
Wenn Sie zum ersten Mal eine Verbindung herstellen, geben Sie
postgressowohl für USERNAME als auch für die Datenbank an. Der Befehl sieht so aus:psql -h IP_ADDRESS -p 5432 -U postgres -d postgres
Verwenden Sie das Passwort, das Sie beim Erstellen des Clusters festgelegt haben.