Leistung einer AlloyDB-Instanz mit pgbench analysieren

In dieser Anleitung integrieren Sie eine AlloyDB-Instanz und eine Compute Engine-VM-Instanz in einem VPC-Netzwerk (Virtual Private Cloud). Anschließend überprüfen Sie die Integration, indem Sie pgbench auf der Compute Engine-VM-Instanz installieren und dieses Benchmarking-Tool verwenden, um Leistungstests für die AlloyDB-Instanz durchzuführen.

Ziele

In dieser Anleitung erfahren Sie mehr über die folgenden Themen:

  • Erstellen Sie ein VPC-Netzwerk für Ihre AlloyDB-Instanz und Ihre Compute Engine-VM-Instanz, damit die Kommunikation zwischen der Instanz und der VM sicher erfolgen kann.
  • Erstellen Sie eine AlloyDB-Instanz und eine Compute Engine-VM-Instanz und weisen Sie beiden Instanzen Ihr VPC-Netzwerk zu und konfigurieren Sie es.
  • Installieren Sie pgbench auf der Compute Engine-VM-Instanz, führen Sie es für die AlloyDB-Instanz aus und verwenden Sie es, um Leistungstests für die AlloyDB-Instanz durchzuführen.

Kosten

In dieser Anleitung werden kostenpflichtige Komponenten von Google Cloudverwendet, darunter VPC-Netzwerk, AlloyDB und Compute Engine. Mit dem Preisrechner können Sie Ihre voraussichtlichen Kosten kalkulieren.

Hinweise

  1. Wählen Sie in der Google Cloud Console auf der Seite für die Projektauswahl ein Projekt von Google Cloud aus oder erstellen Sie eines.

    Zur Projektauswahl

  2. Die Abrechnung für Ihr Google Cloud -Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für Ihr Projekt aktiviert ist.

  3. Aktivieren Sie die VPC-Netzwerk-, AlloyDB- und Compute Engine-APIs.

    APIs aktivieren

  4. Achten Sie darauf, dass Ihrem Nutzerkonto die Rolle „AlloyDB-Administrator“ zugewiesen ist.

    Zur IAM-Seite

VPC-Netzwerk erstellen

In diesem Abschnitt erstellen Sie ein VPC-Netzwerk für Ihre AlloyDB-Instanz und Ihre Compute Engine-VM-Instanz, damit die Kommunikation zwischen der Instanz und der VM sicher erfolgen kann.

  1. Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerke auf.

    Zur VPC-Netzwerkseite

  2. Klicken Sie auf VPC-Netzwerk erstellen. Die Seite VPC-Netzwerk erstellen wird angezeigt.

  3. Geben Sie my-vpc-network für den Namen Ihres VPC-Netzwerk ein.

  4. Wählen Sie im Abschnitt Modus für Subnetzerstellung die Option Benutzerdefiniert aus.

  5. Klicken Sie auf Subnetz hinzufügen.

  6. Geben Sie my-subnet für den Namen Ihres Subnetzes ein.

  7. Wählen Sie eine Region aus und geben Sie einen IP-Adressbereich für das Subnetz ein.

  8. Klicken Sie auf FERTIG.

  9. Klicken Sie auf ERSTELLEN.

AlloyDB-Instanz erstellen

In diesem Abschnitt erstellen Sie eine AlloyDB-Instanz und weisen ihr Ihr VPC-Netzwerk zu.

  1. Rufen Sie in der Google Cloud Console die Seite Cluster auf.

    Zu den Clustern

  2. Klicken Sie auf Cluster erstellen.

  3. Konfigurieren Sie den Cluster so:

    1. Geben Sie im Bereich Allgemeine Informationen im Feld Cluster-ID den Wert my-cluster ein.

    2. Geben Sie im Feld Passwort ein beliebiges Passwort ein. Notieren Sie sich dieses Passwort. Sie benötigen es später in dieser Anleitung noch einmal.

    3. Wählen Sie im Bereich Standort im Feld Region die Option us-central1 (Iowa) aus.

    4. Übernehmen Sie im Feld Database version den Standardwert.

    5. Wählen Sie im Menü Netzwerk die Option my-vpc-network aus. Sie haben dieses VPC-Netzwerk in VPC-Netzwerk erstellen erstellt.

    6. Da in Ihrem VPC-Netzwerk noch kein Zugriff auf private Dienste initialisiert wurde, klicken Sie auf Verbindung einrichten.

    7. Gehen Sie im Bereich Private Dienstverbindung erstellen so vor:

      1. Wählen Sie die Option Automatisch zugewiesenen IP-Bereich verwenden aus, damit Google Cloud einen automatisch zugewiesenen IP-Bereich in Ihrem Netzwerk auswählt.

      2. Klicken Sie auf Weiter.

      3. Klicken Sie auf Verbindung erstellen.

  4. Konfigurieren Sie Ihre primäre Instanz so:

    1. Geben Sie im Feld Instanz-ID eine ID für Ihre primäre Instanz ein.

    2. Wählen Sie unter Zonale Verfügbarkeit eine der folgenden Optionen aus:

      1. Wenn Sie eine hochverfügbare Produktionsinstanz mit automatischem Failover erstellen möchten, wählen Sie Mehrere Zonen (Hochverfügbar) aus.

      2. Wenn Sie eine einfache Instanz erstellen möchten, die nicht hochverfügbar sein muss, wählen Sie Einzelne Zone aus.

    3. Wählen Sie einen Maschinentyp aus.

  5. Klicken Sie auf Cluster erstellen, um den Cluster und die primäre Instanz zusammen zu erstellen.

  6. Notieren Sie sich die private IP-Adresse Ihrer AlloyDB-Instanz, die auf der Seite AlloyDB-Instanzen angezeigt wird. Sie benötigen diese Adresse, um die Integration zwischen der AlloyDB-Instanz und der Compute Engine-VM-Instanz zu bestätigen.

Erstellen Sie eine Compute Engine-VM-Instanz

In diesem Abschnitt erstellen Sie eine Compute Engine-VM-Instanz und weisen ihr Ihr VPC-Netzwerk zu.

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.

    Zur Seite „VM-Instanzen"

  2. Klicken Sie auf Instanz erstellen.

  3. Geben Sie auf der Seite Instanz erstellen im Feld Name eine eindeutige Kennung für die Compute Engine-VM-Instanz ein, die Sie erstellen. Geben Sie für diese Anleitung my-compute-engine-vm-instance in das Feld ein.

  4. Wählen Sie auf der Seite im Bereich Zugriffsbereiche die Option Uneingeschränkten Zugriff auf alle Cloud APIs zulassen aus.

  5. Maximieren Sie Erweiterte Optionen und führen Sie die folgenden Schritte aus:

    1. Klicken Sie auf den Untertab Netzwerk.

    2. Klicken Sie auf Netzwerkschnittstelle hinzufügen.

    3. Wählen Sie im Menü Netzwerk die Option my-vpc-network aus. Sie haben dieses VPC-Netzwerk in VPC-Netzwerk erstellen erstellt.

    4. Klicken Sie auf Fertig. Im Abschnitt Netzwerkschnittstellen der Seite werden zwei VPC-Netzwerke angezeigt: default und my-vpc-network.

  6. Klicken Sie auf  Löschen, um das Standard-VPC-Netzwerk zu löschen.

    Wenn Sie das Standard-VPC-Netzwerk löschen, wird Ihre Compute Engine-VM-Instanz gezwungen, das in dieser Anleitung erstellte VPC-Netzwerk zu verwenden.

  7. Klicken Sie auf Erstellen.

    Es kann einige Sekunden dauern, bis Ihre Compute Engine-VM-Instanz erstellt ist. Danach wird die Instanz auf der Seite VM-Instanzen angezeigt und ihr Status ist Wird ausgeführt (angezeigt durch das Häkchen).

Integration prüfen

In diesem Abschnitt installieren Sie pgbench auf der Compute Engine-VM-Instanz, führen es für die AlloyDB-Instanz aus und verwenden es, um Leistungstests für die AlloyDB-Instanz durchzuführen.

  1. Stellen Sie eine Verbindung zu Ihrer Compute Engine-VM-Instanz her. Klicken Sie dazu rechts neben Ihrer VM-Instanz auf das Menü SSH und wählen Sie dann Im Browserfenster öffnen aus.

  2. Installieren Sie das Paket „Contributed Extensions and Additions to PostgreSQL“ auf Ihrer Compute Engine-VM-Instanz.

    sudo apt-get -y install postgresql-contrib
  3. Initialisieren Sie eine Datenbank für pgbench in Ihrer AlloyDB for PostgreSQL-Instanz. Verwenden Sie beispielsweise die Standarddatenbank postgres:

    pgbench -i --host=INSTANCE_PRIVATE_IP --port=PORT_NUMBER --username=USERNAME

    Ersetzen Sie Folgendes:

    • INSTANCE_PRIVATE_IP: Die private IP-Adresse Ihrer AlloyDB-Instanz. Sie haben sich diese IP-Adresse beim Erstellen der Instanz notiert.
    • PORT_NUMBER: Die Portnummer, die für Ihre AlloyDB-Instanz reserviert ist. In dieser Anleitung ist die Portnummer 5432.
    • USERNAME: Der Administratornutzername für Ihre AlloyDB-Instanz. In dieser Anleitung lautet der Nutzername postgres.
  4. Geben Sie bei der Eingabeaufforderung Password das Passwort für Ihre AlloyDB-Instanz ein. Als Sie die Instanz erstellt haben, haben Sie entweder ein Passwort dafür angegeben oder AlloyDB hat ein Passwort für Sie generiert.

  5. Führen Sie pgbench ohne Argumente aus, um grundlegende Funktionen zu prüfen.

    pgbench --host=INSTANCE_PRIVATE_IP --port=PORT_NUMBER --username=USERNAME
  6. Geben Sie bei der Eingabeaufforderung Password das Passwort für Ihre AlloyDB-Instanz ein.

    Die Ausgabe sollte in etwa so aussehen:

    starting vacuum...end.
    transaction type: <builtin: TPC-B (sort of)>
    scaling factor: 1
    query mode: simple
    number of clients: 1
    number of threads: 1
    number of transactions per client: 10
    number of transactions actually processed: 10/10
    latency average = 3.794 ms
    tps = 263.560171 (including connections establishing)
    tps = 345.375423 (excluding connections establishing)
  7. Verwenden Sie einige Optionen, um einen nützlichen Test zu erstellen. Wichtige Optionen sind -c (die Anzahl der Kunden) und --transactions (die Anzahl der Transaktionen pro Kunde).

    In dieser Anleitung führen Sie einen Leistungstest für 10-Clients durch, die auf Ihre AlloyDB for PostgreSQL-Datenbank zugreifen, und 100-Transaktionen für jeden Client.

    pgbench --host=INSTANCE_PRIVATE_IP --port=PORT_NUMBER --username=USERNAME -c 10 --transactions=100
  8. Geben Sie bei der Eingabeaufforderung Password das Passwort für Ihre AlloyDB-Instanz ein.

    Die Ausgabe sollte in etwa so aussehen:

    starting vacuum...end.
    transaction type:  TPC-B (sort of)>
    scaling factor: 1
    query mode: simple
    number of clients: 10
    number of threads: 1
    number of transactions per client: 100
    number of transactions actually processed: 1000/1000
    latency average = 36.421 ms
    tps = 274.563444 (including connections establishing)
    tps = 275.733225 (excluding connections establishing)

Bereinigen

Nachdem Sie diese Anleitung abgeschlossen haben, können Sie die erstellten Ressourcen bereinigen, damit sie keine kostenpflichtigen Kontingente verbrauchen.

So vermeiden Sie, dass Ihrem Google Cloud Konto die in dieser Anleitung verwendeten Ressourcen in Rechnung gestellt werden:

  1. Löschen Sie Ihr Projekt, Ihre AlloyDB-Instanz, Ihre Compute Engine-VM-Instanz und Ihr VPC-Netzwerk über die Google Cloud -Konsole.

In den folgenden Abschnitten wird erläutert, wie Sie diese Ressourcen löschen oder deaktivieren.

Projekt löschen

Am einfachsten vermeiden Sie weitere Kosten durch Löschen des für diese Anleitung erstellten Projekts.

  1. Öffnen Sie in der Google Cloud Console die Seite Ressourcen verwalten.

    Zur Seite "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 im Dialogfeld die Projekt-ID ein und klicken Sie auf Beenden, um das Projekt zu löschen.

AlloyDB-Instanz löschen

  1. Rufen Sie in der Google Cloud Console die Seite AlloyDB-Cluster auf.

    Zur Seite „AlloyDB-Cluster“

  2. Klicken Sie auf den Namen Ihrer AlloyDB-Instanz. Klicken Sie für diese Anleitung auf my-instance.

  3. Klicken Sie auf Delete.

  4. Geben Sie im Dialogfeld den Namen Ihrer AlloyDB-Instanz in das Textfeld ein und klicken Sie dann auf LÖSCHEN.

Compute Engine-VM-Instanz löschen

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.

    Zur Seite „VM-Instanzen"

  2. Klicken Sie auf den Namen Ihrer Compute Engine-VM-Instanz. Klicken Sie für diese Anleitung auf my-compute-engine-vm-instance.

  3. Klicken Sie auf das Symbol Löschen. Dieses Symbol sieht aus wie ein Papierkorb.

  4. Klicken Sie im Dialogfeld auf LÖSCHEN.

VPC-Netzwerk löschen

  1. Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerke auf.

    Zur VPC-Netzwerkseite

  2. Klicken Sie auf den Namen Ihres VPC-Netzwerk. Klicken Sie in dieser Anleitung auf my-vpc-network.

  3. Klicken Sie auf VPC-NETZWERK LÖSCHEN.

  4. Klicken Sie im Dialogfeld auf LÖSCHEN.