Connettiti a un'istanza Memorystore for Valkey

Questa pagina spiega come connettersi a un'istanza Memorystore for Valkey.

Assistenza clienti

Per esempi e indicazioni sui client di connessione da utilizzare, consulta Esempi di codice della libreria client.

Consenti le porte sul firewall

Se non consenti le porte corrette sul firewall, l'istanza potrebbe riscontrare errori di connessione perché il firewall potrebbe bloccare le porte utilizzate da Memorystore for Valkey.

Per tutti gli endpoint Private Service Connect dell'istanza, devi consentire la porta TCP 6379, nonché le porte TCP da 11000 a 13047. Per ulteriori informazioni, consulta Risolvere i problemi.

Accesso tra regioni

Puoi accedere a un'istanza Memorystore for Valkey da un client che si trova in una regione diversa da quella in cui si trova l'istanza.

Connettiti a un'istanza in modalità cluster abilitata

Questa sezione spiega come connettersi a un'istanza Memorystore for Valkey in modalità cluster abilitata.

Visualizza l'endpoint di rilevamento dell'istanza

Ogni istanza in modalità cluster abilitata ha un endpoint di rilevamento a cui si connette il client. Questo endpoint è una combinazione di un indirizzo IP e un numero di porta.

Puoi visualizzare l'endpoint di rilevamento di un'istanza Memorystore for Valkey utilizzando la Google Cloud console o gcloud CLI.

gcloud

Per visualizzare l'endpoint di rilevamento dell'istanza, esegui describe gcloud CLI come spiegato in Visualizzare le informazioni sull'istanza.

L'output dovrebbe essere simile al seguente:

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

Prendi nota dell'indirizzo dell'endpoint e del numero di porta elencati nella sezione endpoints: per la voce connectionType: CONNECTION_TYPE_DISCOVERY. Questi due valori utilizzati insieme sono l'endpoint di rilevamento dell'istanza.

Connettiti da una VM di Compute Engine utilizzando valkey-cli

Puoi connetterti all'istanza Memorystore for Valkey da qualsiasi VM di Compute Engine che utilizza la rete autorizzata dell'istanza Memorystore.

Per connetterti all'istanza:

  1. Se non hai già una VM di Compute Engine Linux che utilizza la rete autorizzata per l'istanza Memorystore for Valkey, creane una e connettiti seguendo la Guida rapida per creare una VM Linux.

  2. Installa valkey-cli sulla VM di Compute Engine seguendo le istruzioni riportate in Installare Valkey.

  3. Visualizza l'endpoint di rilevamento dell'istanza e prendine nota.

  4. Connettiti all'endpoint di rilevamento dell'istanza eseguendo il seguente comando:

    valkey-cli -h DISCOVERY_ENDPOINT_ADDRESS -p PORT_NUMBER -c
    

    Dove:

    • DISCOVERY_ENDPOINT_ADDRESS e PORT_NUMBER sono i valori annotati nel passaggio precedente.
  5. Esegui il comando CLUSTER SHARDS per visualizzare la topologia dei nodi. Prendi nota dell'indirizzo IP e del numero di porta di uno dei nodi.

  6. Connettiti al nodo che preferisci eseguendo il seguente comando:

    valkey-cli -h NODE_IP_ADDRESS -p NODE_PORT -c
    

    Sostituisci quanto segue:

    • NODE_IP_ADDRESS è l'indirizzo IP del nodo trovato nel passaggio precedente.
    • NODE_PORT è il numero di porta del nodo trovato nel passaggio precedente.
  7. Una volta connesso al nodo, inserisci alcuni comandi Valkey:

    Digita:

    PING
    

    Risultato:

    PONG
    

    Invio

    SET HELLO WORLD
    

    Risultato:

    OK
    

    Digita:

    GET HELLO
    

    Risultato:

    "WORLD"
    
  8. Dopo aver testato la connessione al nodo Valkey, ti consigliamo di eliminare la VM di Compute Engine che hai utilizzato per connetterti all'istanza Valkey. In questo modo, eviti di incorrere in addebiti sul tuo account di fatturazione Cloud.

Connettiti a un'istanza con la crittografia in transito abilitata

Questa sezione fornisce un esempio di come connettersi a un'istanza Memorystore for Valkey in modalità cluster abilitata con la crittografia in transito abilitata.

  1. Se non hai già una VM di Compute Engine che utilizza la stessa rete autorizzata dell'istanza Valkey del passaggio precedente, creane una e connettiti seguendo la Guida rapida all'utilizzo di una VM Linux.

    1. Installa valkey-cli versione 6.0 o successive sulla VM di Compute Engine seguendo le istruzioni riportate in Installare Valkey.
  2. Installa i certificati dell'autorità di certificazione (CA) dell'istanza sulla VM Linux seguendo le istruzioni riportate in Installare i certificati CA sul client.

  3. Visualizza l'endpoint di rilevamento dell'istanza e prendi nota dell'indirizzo IP e del numero di porta dell'endpoint.

  4. Connettiti all'endpoint di rilevamento dell'istanza eseguendo il seguente comando:

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

    Sostituisci quanto segue:

    • DISCOVERY_ENDPOINT_ADDRESS: l'indirizzo IP dell'endpoint di rilevamento annotato nel passaggio precedente
    • PORT_NUMBER: il numero di porta annotato nel passaggio precedente

    Per attivare la modalità di supporto valkey-cli, utilizza l'opzione -c. Se non fornisci questa opzione, quando provi ad accedere alle chiavi da uno shard diverso da quello a cui sei connesso, l'istanza restituisce un errore MOVED. Tuttavia, se utilizzi l'opzione, il client si riconnette automaticamente all'indirizzo fornito nella risposta di errore.

    Se abiliti l'autenticazione Identity and Access Management (IAM) o l'autenticazione di base basata su token sull'istanza, devi fornire le credenziali di autenticazione insieme ai flag TLS (Transport Layer Security). Ad esempio:

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

    Sostituisci quanto segue:

    • USERNAME: il nome utente dell'istanza
    • TOKEN: il token di autenticazione

    Per ulteriori informazioni sulla generazione o sulla gestione delle credenziali di autenticazione, consulta Gestire l'autenticazione IAM e Proteggere l'accesso alle istanze utilizzando l'autenticazione di base basata su token.

  5. Esegui il comando CLUSTER SHARDS per visualizzare la topologia dei nodi. Prendi nota dell'indirizzo IP e del numero di porta di uno dei nodi.

  6. Connettiti al nodo eseguendo il seguente comando:

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

    Sostituisci quanto segue:

    • NODE_IP_ADDRESS: l'indirizzo IP del nodo annotato nel passaggio precedente.
    • NODE_PORT: il numero di porta del nodo annotato nel passaggio precedente.

    Se il cluster utilizza l'autenticazione IAM o di base basata su token, assicurati di includere i flag --user e -a, come hai fatto nel passaggio dell'endpoint di rilevamento.

  7. Dopo aver eseguito la connessione al nodo, inserisci i seguenti comandi Valkey:

    Digita:

    PING
    

    Risultato:

    PONG
    

Connettiti a un'istanza in modalità cluster disabilitata

Questa sezione spiega come connettersi a un'istanza Memorystore for Valkey in modalità cluster disabilitata.

Visualizza l'endpoint principale e di lettura dell'istanza

Per visualizzare l'endpoint principale e di lettura dell'istanza, segui queste istruzioni:

gcloud

Per visualizzare l'endpoint principale e di lettura dell'istanza, esegui describe gcloud CLI come spiegato in Visualizzare le informazioni sull'istanza.

L'output dovrebbe essere simile al seguente:

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

Endpoint principale: prendi nota dell'indirizzo dell'endpoint e del numero di porta elencati in CONNECTION_TYPE_PRIMARY nella sezione endpoints:. Questi due valori utilizzati insieme sono l'endpoint principale dell'istanza.

Endpoint di lettura: prendi nota dell'indirizzo dell'endpoint e del numero di porta elencati in CONNECTION_TYPE_READER nella sezione endpoints:. Questi due valori utilizzati insieme sono l'endpoint di lettura dell'istanza.

Connettiti da una VM di Compute Engine utilizzando valkey-cli

Puoi connetterti all'istanza Memorystore for Valkey da qualsiasi VM di Compute Engine che utilizza la rete autorizzata dell'istanza Memorystore.

Per connetterti all'istanza:

  1. Se non hai già una VM di Compute Engine Linux che utilizza la rete autorizzata per l'istanza Memorystore for Valkey, creane una e connettiti seguendo la Guida rapida per creare una VM Linux.

  2. Installa valkey-cli sulla VM di Compute Engine seguendo le istruzioni riportate in Installare Valkey.

  3. Visualizza l'endpoint principale e di lettura dell'istanza e prendine nota.

  4. Connettiti all'endpoint principale dell'istanza eseguendo il seguente comando:

    valkey-cli -h PRIMARY_ENDPOINT_ADDRESS -p PORT_NUMBER
    

    Dove:

    • PRIMARY_ENDPOINT_ADDRESS e PORT_NUMBER sono i valori annotati nel passaggio precedente.
  5. Dopo aver eseguito la connessione al nodo principale, inserisci i seguenti comandi Valkey:

    Digita:

    PING
    

    Risultato:

    PONG
    

    Invio

    SET HELLO WORLD
    

    Risultato:

    OK
    

    Digita:

    GET HELLO
    

    Risultato:

    "WORLD"
    
  6. Connettiti all'endpoint di lettura dell'istanza eseguendo il seguente comando:

    valkey-cli -h READER_ENDPOINT_ADDRESS -p PORT_NUMBER
    

    Dove:

    • READER_ENDPOINT_ADDRESS e PORT_NUMBER sono i valori annotati nel passaggio precedente.
  7. Dopo aver eseguito la connessione al nodo principale, inserisci i seguenti comandi Valkey Get:

    Digita:

    PING
    

    Risultato:

    PONG
    

    Digita:

    GET HELLO
    

    Risultato:

    "WORLD"
    
  8. Dopo aver testato la connessione al nodo Valkey, elimina la VM di Compute Engine che hai utilizzato per connetterti all'istanza Valkey. In questo modo, eviti di incorrere in addebiti sul tuo account di fatturazione Cloud.

Connettiti a un'istanza con la crittografia in transito abilitata

Questa sezione fornisce un esempio di come connettersi a un'istanza Memorystore for Valkey in modalità cluster disabilitata con la crittografia in transito abilitata.

  1. Se non hai già una VM di Compute Engine che utilizza la stessa rete autorizzata dell'istanza Valkey del passaggio precedente, creane una e connettiti seguendo la Guida rapida all'utilizzo di una VM Linux.

    1. Installa valkey-cli versione 6.0 o successive sulla VM di Compute Engine seguendo le istruzioni riportate in Installare Valkey.
  2. Controlla la modalità dell'autorità di certificazione (CA) che stai utilizzando per l' istanza.

  3. Visualizza gli endpoint principali e di lettura dell'istanza e prendi nota dell'indirizzo IP e del numero di porta di ogni endpoint.

  4. Connettiti all'endpoint principale dell'istanza eseguendo il seguente comando:

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

    Sostituisci quanto segue:

    • PRIMARY_ENDPOINT_ADDRESS: l'indirizzo IP dell'endpoint principale annotato nel passaggio precedente
    • PORT_NUMBER: il numero di porta per questo endpoint annotato in nel passaggio precedente
  5. Connettiti all'endpoint di lettura dell'istanza eseguendo il seguente comando:

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

    Sostituisci quanto segue:

    • READER_ENDPOINT_ADDRESS: l'indirizzo IP dell'endpoint di lettura annotato
    • PORT_NUMBER: il numero di porta per questo endpoint annotato

    Se abiliti l'autenticazione IAM o l'autenticazione di base basata su token sull'istanza, devi fornire le credenziali di autenticazione insieme ai flag TLS sia per l'endpoint principale sia per quello di lettura.

    Ad esempio:

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

    e

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

    Sostituisci quanto segue:

    • USERNAME: il nome utente dell'istanza
    • TOKEN: il token di autenticazione

    Per ulteriori informazioni sulla generazione o sulla gestione delle credenziali di autenticazione, consulta Gestire l'autenticazione IAM e Proteggere l'accesso alle istanze utilizzando l'autenticazione di base basata su token.

  6. Dopo aver eseguito la connessione al nodo, inserisci alcuni comandi Valkey:

    Digita:

    PING
    

    Risultato:

    PONG