Verbindung zu einer Memorystore for Valkey-Instanz herstellen

Auf dieser Seite wird beschrieben, wie Sie eine Verbindung zu einer Memorystore for Valkey-Instanz herstellen.

Clientunterstützung

Beispiele und Anleitungen zur Verwendung von Verbindungsclients finden Sie unter Codebeispiele für Clientbibliotheken.

Ports in der Firewall zulassen

Wenn Sie die richtigen Ports in Ihrer Firewall nicht zulassen, können bei Ihrer Instanz Verbindungsfehler auftreten, da die Firewall die von Memorystore for Valkey verwendeten Ports blockieren kann.

Für alle Private Service Connect-Endpunkte Ihrer Instanz müssen Sie den TCP-Port 6379 sowie die TCP-Ports 11000 bis 13047 zulassen. Weitere Informationen finden Sie unter Fehlerbehebung.

Regionsübergreifender Zugriff

Sie können von einem Client aus auf eine Memorystore for Valkey-Instanz zugreifen, der sich in einer anderen Region als die Instanz befindet.

Verbindung zu einer Instanz mit aktiviertem Clustermodus herstellen

In diesem Abschnitt wird beschrieben, wie Sie eine Verbindung zu einer Memorystore for Valkey-Instanz mit aktiviertem Clustermodus herstellen.

Erkennungsendpunkt Ihrer Instanz ansehen

Jede Instanz mit aktiviertem Clustermodus hat einen Erkennungsendpunkt, mit dem sich Ihr Client verbindet. Dieser Endpunkt ist eine Kombination aus einer IP-Adresse und einer Portnummer.

Sie können den Erkennungsendpunkt einer Memorystore for Valkey-Instanz durch Verwendung entweder der Google Cloud Console oder der gcloud CLI ansehen.

gcloud

Führen Sie die describe gcloud CLI aus, wie unter Instanzinformationen ansehen beschrieben, um den Erkennungsendpunkt Ihrer Instanz aufzurufen.

Die Ausgabe sollte in etwa so aussehen:

authorizationMode: AUTH_DISABLED
createTime: '2024-08-06T22:02:55.224704101Z'
deletionProtectionEnabled: false
engineVersion: VALKEY_7_2
name: projects/myproject/locations/us-central1/instances/my-instance
nodeConfig:
  sizeGb: 6.5
nodeType: STANDARD_SMALL
persistenceConfig:
  mode: DISABLED
endpoints:
- connections:
  - pscAutoConnection:
       connectionType: CONNECTION_TYPE_DISCOVERY
       forwardingRule: https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/forwardingRules/sca-auto-fr-ec00907a-3ee3-4740-8092-ae832428f8e4
       ipAddress: 10.128.0.58
       network: projects/my-project/global/networks/default
       port: 6379
       projectId: my-project
       pscConnectionId: '38876592440606778'
       serviceAttachment: projects/129109085717/regions/us-east1/serviceAttachments/gcp-memorystore-auto-58e78f71-fdb7-48-psc-sa
    - pscAutoConnection:
       forwardingRule: https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/forwardingRules/sca-auto-fr-5ce5518f-1c59-4b46-aa74-799fad70d7b1
       ipAddress: 10.128.0.59
       network: projects/my-project/global/networks/default
       port: 6379
       projectId: my-project
       pscConnectionId: '38876592440606779'
       serviceAttachment: projects/129109085717/regions/us-east1/serviceAttachments/gcp-memorystore-auto-58e78f71-fdb7-48-psc-sa-2
replicaCount: 2
shardCount: 5
state: ACTIVE
transitEncryptionMode: TRANSIT_ENCRYPTION_DISABLED
uid: 869f2d09-d20b-46d8-94ba-be83c48ceb54
updateTime: '2024-08-06T22:18:59.389980051Z'
zoneDistributionConfig:
  mode: MULTI_ZONE

Notieren Sie sich die Endpunktadresse und die Portnummer, die im Abschnitt endpoints: für den Eintrag connectionType: CONNECTION_TYPE_DISCOVERY aufgeführt sind. Diese beiden Werte zusammen sind der Erkennungsendpunkt Ihrer Instanz.

Verbindung von einer Compute Engine-VM mit valkey-cli herstellen

Sie können von jeder Compute Engine-VM aus eine Verbindung zur Memorystore for Valkey-Instanz herstellen, die das autorisierte Netzwerk der Memorystore-Instanz verwendet.

So stellen Sie eine Verbindung zur Instanz her:

  1. Wenn Sie noch keine Linux Compute Engine-VM haben, die das autorisierte Netzwerk für Ihre Memorystore for Valkey-Instanz verwendet, erstellen Sie eine VM und stellen Sie eine Verbindung zu ihr her: Folgen Sie dazu der Kurzanleitung zum Erstellen einer Linux-VM.

  2. Installieren Sie valkey-cli auf der Compute Engine-VM. Folgen Sie dazu der Anleitung unter Valkey installieren.

  3. Rufen Sie den Erkennungsendpunkt Ihrer Instanz auf und notieren Sie ihn.

  4. Stellen Sie mit dem folgenden Befehl eine Verbindung zum Erkennungsendpunkt Ihrer Instanz her:

    valkey-cli -h DISCOVERY_ENDPOINT_ADDRESS -p PORT_NUMBER -c
    

    Wobei:

    • DISCOVERY_ENDPOINT_ADDRESS und PORT_NUMBER sind die Werte, die Sie im vorherigen Schritt notiert haben.
  5. Führen Sie den Befehl CLUSTER SHARDS aus, um die Knotentopologie aufzurufen. Notieren Sie sich die IP-Adresse und die Portnummer eines der Knoten.

  6. Stellen Sie mit dem folgenden Befehl eine Verbindung zum gewünschten Knoten her:

    valkey-cli -h NODE_IP_ADDRESS -p NODE_PORT -c
    

    Ersetzen Sie Folgendes:

    • NODE_IP_ADDRESS ist die IP-Adresse des Knotens, die Sie in dem vorherigen Schritt ermittelt haben.
    • NODE_PORT ist die Portnummer des Knotens, die Sie im vorherigen Schritt ermittelt haben.
  7. Geben Sie nach der Verbindung zum Knoten einige Valkey-Befehle ein:

    Geben Sie Folgendes ein:

    PING
    

    Ergebnis:

    PONG
    

    Eingeben

    SET HELLO WORLD
    

    Ergebnis:

    OK
    

    Geben Sie Folgendes ein:

    GET HELLO
    

    Ergebnis:

    "WORLD"
    
  8. Nachdem Sie die Verbindung zum Valkey-Knoten getestet haben, sollten Sie die Compute Engine-VM löschen, die Sie für die Verbindung zur Valkey-Instanz verwendet haben. So vermeiden Sie Gebühren für Ihr Cloud-Rechnungskonto.

Verbindung zu einer Instanz mit aktivierter Verschlüsselung während der Übertragung herstellen

In diesem Abschnitt wird anhand eines Beispiels gezeigt, wie Sie eine Verbindung zu einer Memorystore for Valkey-Instanz mit aktiviertem Clustermodus herstellen, bei der die Verschlüsselung während der Übertragung aktiviert ist.

  1. Wenn Sie noch keine Compute Engine-VM haben, die dasselbe autorisierte Netzwerk wie die Valkey-Instanz aus dem vorherigen Schritt verwendet, erstellen Sie eine VM und stellen Sie eine Verbindung zu ihr her: Folgen Sie dazu der Kurzanleitung: Linux-VM verwenden.

    1. Installieren Sie valkey-cli Version 6.0 oder höher auf der Compute Engine-VM . Folgen Sie dazu der Anleitung unter Valkey installieren.
  2. Installieren Sie die Zertifikate der Zertifizierungsstelle (Certificate Authority, CA) Ihrer Instanz auf der Linux VM. Folgen Sie dazu der Anleitung unter CA-Zertifikate auf dem Client installieren.

  3. Rufen Sie den Erkennungsendpunkt Ihrer Instanz auf und notieren Sie sich die IP-Adresse und die Portnummer des Endpunkts.

  4. Stellen Sie mit dem folgenden Befehl eine Verbindung zum Erkennungsendpunkt Ihrer Instanz her:

    valkey-cli -h DISCOVERY_ENDPOINT_ADDRESS -p PORT_NUMBER -c --tls --cacert /tmp/server_ca.pem
    

    Ersetzen Sie Folgendes:

    • DISCOVERY_ENDPOINT_ADDRESS: die IP-Adresse des Erkennungsendpunkts die Sie im vorherigen Schritt notiert haben
    • PORT_NUMBER: die Portnummer, die Sie im vorherigen Schritt notiert haben

    Verwenden Sie den Schalter -c, um den valkey-cli Modus zu aktivieren. Wenn Sie diesen Schalter nicht angeben, gibt die Instanz einen MOVED-Fehler zurück, wenn Sie versuchen, auf Schlüssel aus einem anderen Shard als dem, mit dem Sie verbunden sind, zuzugreifen. Wenn Sie den Schalter verwenden, wird der Client jedoch automatisch wieder mit der Adresse verbunden, die in der Fehlermeldung angegeben ist.

    Wenn Sie entweder die Authentifizierung über Identity and Access Management (IAM) oder die einfache tokenbasierte Authentifizierung für die Instanz aktivieren, müssen Sie neben den TLS-Flags (Transport Layer Security) auch Authentifizierungsdaten angeben. Beispiel:

    valkey-cli -h DISCOVERY_ENDPOINT_ADDRESS -p PORT_NUMBER -c --tls --cacert /tmp/server_ca.pem --user USERNAME -a TOKEN
    

    Ersetzen Sie Folgendes:

    • USERNAME: der Nutzername der Instanz
    • TOKEN: das Authentifizierungstoken

    Weitere Informationen zum Generieren oder Verwalten Ihrer Authentifizierungs anmeldedaten finden Sie unter IAM-Authentifizierung verwalten und Zugriff auf Ihre Instanzen mit einfacher tokenbasierter Authentifizierung sichern.

  5. Führen Sie den Befehl CLUSTER SHARDS aus, um die Knotentopologie aufzurufen. Notieren Sie sich die IP-Adresse und die Portnummer eines der Knoten.

  6. Stellen Sie mit dem folgenden Befehl eine Verbindung zum Knoten her:

    valkey-cli -h NODE_IP_ADDRESS -p NODE_PORT -c --tls --cacert /tmp/server_ca.pem
    

    Ersetzen Sie Folgendes:

    • NODE_IP_ADDRESS: die IP-Adresse des Knotens, die Sie im vorherigen Schritt notiert haben.
    • NODE_PORT: die Portnummer des Knotens, die Sie im vorherigen Schritt notiert haben.

    Wenn Ihr Cluster die IAM- oder die einfache tokenbasierte Authentifizierung verwendet, müssen Sie die Flags --user und -a angeben, wie Sie es im Schritt zum Erkennungsendpunkt getan haben.

  7. Geben Sie nach der Verbindung zum Knoten die folgenden Valkey-Befehle ein:

    Geben Sie Folgendes ein:

    PING
    

    Ergebnis:

    PONG
    

Verbindung zu einer Instanz mit deaktiviertem Clustermodus herstellen

In diesem Abschnitt wird beschrieben, wie Sie eine Verbindung zu einer Memorystore for Valkey-Instanz mit deaktiviertem Clustermodus herstellen.

Primären Endpunkt und Reader-Endpunkt Ihrer Instanz ansehen

So rufen Sie den primären Endpunkt und den Reader-Endpunkt Ihrer Instanz auf:

gcloud

Führen Sie die describe gcloud CLI aus, wie unter Instanzinformationen ansehen beschrieben, um den primären Endpunkt und den Reader-Endpunkt Ihrer Instanz aufzurufen.

Die Ausgabe sollte in etwa so aussehen:

authorizationMode: AUTH_DISABLED
createTime: '2024-08-06T22:02:55.224704101Z'
deletionProtectionEnabled: false
engineVersion: VALKEY_7_2
name: projects/myproject/locations/us-central1/instances/my-instance
nodeConfig:
  sizeGb: 6.5
nodeType: STANDARD_SMALL
persistenceConfig:
  mode: DISABLED
endpoints:
- connections:
  - pscAutoConnection:
      connectionType: CONNECTION_TYPE_PRIMARY
      forwardingRule: https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/forwardingRules/sca-auto-fr-ec00907a-3ee3-4740-8092-ae832428f8e4
      ipAddress: 10.128.0.124
      network: projects/my-project/global/networks/default
      port: 6379
      projectId: my-project
      pscConnectionId: '38876592440606778'
      serviceAttachment: projects/448055306617/regions/us-central1/serviceAttachments/gcp-memorystore-auto-b3c43536-4a77-40-psc-sa
  - pscAutoConnection:
      connectionType: CONNECTION_TYPE_READER
      forwardingRule: https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/forwardingRules/sca-auto-fr-5ce5518f-1c59-4b46-aa74-799fad70d7b1
      ipAddress: 10.128.0.125
      network: projects/my-project/global/networks/default
      port: 6379
      projectId: my-project
      pscConnectionId: '38876592440606779'
      serviceAttachment: projects/448055306617/regions/us-central1/serviceAttachments/gcp-memorystore-auto-b3c43536-4a77-40-psc-sa-2
replicaCount: 2
shardCount: 1
mode: CLUSTER_DISABLED
state: ACTIVE
transitEncryptionMode: TRANSIT_ENCRYPTION_DISABLED
uid: 869f2d09-d20b-46d8-94ba-be83c48ceb54
updateTime: '2024-08-06T22:18:59.389980051Z'
zoneDistributionConfig:
  mode: MULTI_ZONE

Primärer Endpunkt:Notieren Sie sich die Endpunktadresse und die Portnummer, die im Abschnitt endpoints: unter CONNECTION_TYPE_PRIMARY aufgeführt sind. Diese beiden Werte zusammen sind der primäre Endpunkt Ihrer Instanz.

Reader-Endpunkt:Notieren Sie sich die Endpunktadresse und die Portnummer, die im Abschnitt endpoints: unter CONNECTION_TYPE_READER aufgeführt sind. Diese beiden Werte zusammen sind der Reader-Endpunkt Ihrer Instanz.

Verbindung von einer Compute Engine-VM mit valkey-cli herstellen

Sie können von jeder Compute Engine-VM aus eine Verbindung zur Memorystore for Valkey-Instanz herstellen, die das autorisierte Netzwerk der Memorystore-Instanz verwendet.

So stellen Sie eine Verbindung zur Instanz her:

  1. Wenn Sie noch keine Linux Compute Engine-VM haben, die das autorisierte Netzwerk für Ihre Memorystore for Valkey-Instanz verwendet, erstellen Sie eine VM und stellen Sie eine Verbindung zu ihr her: Folgen Sie dazu der Kurzanleitung zum Erstellen einer Linux-VM.

  2. Installieren Sie valkey-cli auf der Compute Engine-VM. Folgen Sie dazu der Anleitung unter Valkey installieren.

  3. Rufen Sie den primären Endpunkt und den Reader-Endpunkt Ihrer Instanz auf und notieren Sie sie.

  4. Stellen Sie mit dem folgenden Befehl eine Verbindung zum primären Endpunkt Ihrer Instanz her:

    valkey-cli -h PRIMARY_ENDPOINT_ADDRESS -p PORT_NUMBER
    

    Wobei:

    • PRIMARY_ENDPOINT_ADDRESS und PORT_NUMBER sind die Werte, die Sie im vorherigen Schritt notiert haben.
  5. Geben Sie nach der Verbindung zum primären Knoten die folgenden Valkey-Befehle ein:

    Geben Sie Folgendes ein:

    PING
    

    Ergebnis:

    PONG
    

    Eingeben

    SET HELLO WORLD
    

    Ergebnis:

    OK
    

    Geben Sie Folgendes ein:

    GET HELLO
    

    Ergebnis:

    "WORLD"
    
  6. Stellen Sie mit dem folgenden Befehl eine Verbindung zum Reader-Endpunkt Ihrer Instanz her:

    valkey-cli -h READER_ENDPOINT_ADDRESS -p PORT_NUMBER
    

    Wobei:

    • READER_ENDPOINT_ADDRESS und PORT_NUMBER sind die Werte, die Sie im vorherigen Schritt notiert haben.
  7. Geben Sie nach der Verbindung zum primären Knoten die folgenden Valkey-Befehle zum Abrufen ein:

    Geben Sie Folgendes ein:

    PING
    

    Ergebnis:

    PONG
    

    Geben Sie Folgendes ein:

    GET HELLO
    

    Ergebnis:

    "WORLD"
    
  8. Nachdem Sie die Verbindung zum Valkey-Knoten getestet haben, sollten Sie die Compute Engine-VM löschen, die Sie für die Verbindung zur Valkey-Instanz verwendet haben. So vermeiden Sie Gebühren für Ihr Cloud-Rechnungskonto.

Verbindung zu einer Instanz mit aktivierter Verschlüsselung während der Übertragung herstellen

In diesem Abschnitt wird anhand eines Beispiels gezeigt, wie Sie eine Verbindung zu einer Memorystore for Valkey-Instanz mit deaktiviertem Clustermodus herstellen, bei der die Verschlüsselung während der Übertragung aktiviert ist.

  1. Wenn Sie noch keine Compute Engine-VM haben, die dasselbe autorisierte Netzwerk wie die Valkey-Instanz aus dem vorherigen Schritt verwendet, erstellen Sie eine VM und stellen Sie eine Verbindung zu ihr her: Folgen Sie dazu der Kurzanleitung: Linux-VM verwenden.

    1. Installieren Sie valkey-cli Version 6.0 oder höher auf der Compute Engine-VM . Folgen Sie dazu der Anleitung unter Valkey installieren.
  2. Prüfen Sie den CA-Modus (Certificate Authority), den Sie für Ihre Instanz verwenden.

  3. Rufen Sie den primären Endpunkt und den Reader-Endpunkt Ihrer Instanz auf und notieren Sie sich die IP-Adresse und die Portnummer jedes Endpunkts.

  4. Stellen Sie mit dem folgenden Befehl eine Verbindung zum primären Endpunkt Ihrer Instanz her:

    valkey-cli -h PRIMARY_ENDPOINT_ADDRESS -p PORT_NUMBER --tls --cacert /tmp/server_ca.pem
    

    Ersetzen Sie Folgendes:

    • PRIMARY_ENDPOINT_ADDRESS: die IP-Adresse des primären Endpunkts die Sie im vorherigen Schritt notiert haben
    • PORT_NUMBER: die Portnummer für diesen Endpunkt, die Sie in dem vorherigen Schritt notiert haben
  5. Stellen Sie mit dem folgenden Befehl eine Verbindung zum Reader-Endpunkt Ihrer Instanz her:

    valkey-cli -h READER_ENDPOINT_ADDRESS -p PORT_NUMBER --tls --cacert /tmp/server_ca.pem
    

    Ersetzen Sie Folgendes:

    • READER_ENDPOINT_ADDRESS: die IP-Adresse des Reader-Endpunkts die Sie notiert haben
    • PORT_NUMBER: die Portnummer für diesen Endpunkt, die Sie notiert haben

    Wenn Sie entweder die IAM-Authentifizierung oder die einfache tokenbasierte Authentifizierung für die Instanz aktivieren, müssen Sie neben den TLS-Flags für den primären Endpunkt und den Reader-Endpunkt auch Authentifizierungsanmeldedaten angeben.

    Beispiel:

    valkey-cli -h PRIMARY_ENDPOINT_ADDRESS -p PORT_NUMBER --tls --cacert /tmp/server_ca.pem --user USERNAME -a TOKEN
    

    und

    valkey-cli -h READER_ENDPOINT_ADDRESS -p PORT_NUMBER -c --tls --cacert /tmp/server_ca.pem --user USERNAME -a TOKEN
    

    Ersetzen Sie Folgendes:

    • USERNAME: der Nutzername der Instanz
    • TOKEN: das Authentifizierungstoken

    Weitere Informationen zum Generieren oder Verwalten Ihrer Authentifizierungs anmeldedaten finden Sie unter IAM-Authentifizierung verwalten und Zugriff auf Ihre Instanzen mit einfacher tokenbasierter Authentifizierung sichern.

  6. Geben Sie nach der Verbindung zum Knoten einige Valkey-Befehle ein:

    Geben Sie Folgendes ein:

    PING
    

    Ergebnis:

    PONG