Questa pagina spiega come connettersi a un'istanza Memorystore for Redis Cluster.
Assistenza clienti
Memorystore for Redis Cluster non fornisce librerie client proprie, ma supporta librerie client di terze parti esistenti che supportano il protocollo Redis. Un elenco di esempio di client è disponibile nella pagina Client di Redis.
Best practice per il client Redis-py
Per connetterti all'istanza Memorystore for Redis Cluster utilizzando il client Python redis-py, devi aggiungere skip_full_coverage_check=True
quando dichiari un cluster Redis:
from rediscluster import RedisCluster
endpoints = [{"host": "IPADDRESS", "port": "6379"}]
rdb = RedisCluster(
startup_nodes=endpoints,
skip_full_coverage_check=True, # Required for Memorystore
decode_responses = True)
print(rdb.set('PYTHON', 'CLUSTER'))
print(rdb.get('PYTHON'))
print(rdb.unlink('PYTHON'))
Inserire porte nella lista consentita del firewall
Se non autorizzi le porte corrette sul firewall, la tua istanza può riscontrare errori di connessione. Per saperne di più sull'inserimento di porte nella lista consentita, vedi Risolvere i problemi.
Accesso tra regioni
Puoi accedere a un'istanza Memorystore for Redis Cluster da un client che si trova in un'area geografica diversa da quella in cui si trova l'istanza Memorystore.
Visualizzare l'endpoint di rilevamento del cluster
Per visualizzare l'endpoint di rilevamento del cluster Memorystore, segui queste istruzioni:
Console
Vai alla pagina Memorystore for Redis Cluster nella Google Cloud console.
Fai clic sull'ID cluster.
Nella sezione Connetti a questa istanza, prendi nota dell'indirizzo IP e del numero di porta accanto a Endpoint di rilevamento. Questi due valori utilizzati insieme costituiscono l'endpoint di rilevamento del cluster.
gcloud
Per visualizzare l'endpoint di rilevamento del cluster, esegui describe
gcloud CLI come spiegato nella sezione Visualizzare i dettagli dell'istanza.
L'output dovrebbe essere simile al seguente:
authorizationMode: AUTH_MODE_DISABLED
createTime: '2023-08-04T17:49:07.988918793Z'
discoveryEndpoints:
- address: 10.142.0.13
port: 6379
pscConfig:
- network: projects/my-project-364018/global/networks/default
name: projects/my-project-364018/locations/us-east1/clusters/my-cluster-1
pscConnections:
- address: 10.142.0.13
forwardingRule: https://www.googleapis.com/compute/v1/projects/my-project-364018/regions/us-east1/forwardingRules/sca-auto-fr-5bc46f69-ec80-4c5a-8971-ce267a4d8ddd
network: projects/my-project-364018/global/networks/default
projectId: my-project-364018
pscConnectionId: '25734306048376845'
- address: 10.142.0.10
forwardingRule: https://www.googleapis.com/compute/v1/projects/my-project-364018/regions/us-east1/.
forwardingRules/sca-auto-fr-817b64c5-85ac-48d0-82e3-c6fa99b4e67d
network: projects/my-project-364018/global/networks/default
projectId: my-project-364018
pscConnectionId: '25734306048376842'
replicaCount: 0
shardCount: 3
sizeGb: 39
state: ACTIVE
tier: PERFORMANCE
transitEncryptionMode: TRANSIT_ENCRYPTION_MODE_DISABLED
uid: cddda5de-d91f-449b-8755-3a665430271a
Prendi nota dell'indirizzo dell'endpoint e del numero di porta elencati nella sezione
discovery_endpoints:
. Questi due valori utilizzati insieme costituiscono l'endpoint di rilevamento del cluster.
Connettiti da una VM Compute Engine utilizzando redis-cli
Puoi connetterti all'istanza Memorystore for Redis Cluster da qualsiasi VM di Compute Engine che utilizza la rete autorizzata dell'istanza Memorystore.
Per connetterti all'istanza:
Se non hai già una VM Linux Compute Engine che utilizza la rete autorizzata per l'istanza Memorystore for Redis Cluster, creane una e connettiti seguendo la Guida rapida per creare una VM Linux.
Installa
redis-cli
versione 6.0 o successive sulla VM Compute Engine seguendo le istruzioni riportate in Installare Redis su Linux.Visualizza l'endpoint di rilevamento del cluster e prendine nota.
Connettiti all'endpoint di rilevamento dell'istanza eseguendo il seguente comando:
redis-cli -h DISCOVERY_ENDPOINT_ADDRESS -p PORT_NUMBER -c
Dove:
- DISCOVERY_ENDPOINT_ADDRESS e PORT_NUMBER sono i valori che hai annotato nel passaggio precedente.
Esegui il comando
CLUSTER SHARDS
per visualizzare la topologia del cluster. Prendi nota di uno degli indirizzi IP e dei numeri di porta del nodo.Connettiti al nodo che preferisci eseguendo questo comando:
redis-cli -h NODE_IP_ADDRESS -p NODE_PORT -c
Sostituisci quanto segue:
- NODE_IP_ADDRESS è l'indirizzo IP del nodo che hai trovato nel passaggio precedente.
- NODE_PORT è il numero di porta del nodo che hai trovato nel passaggio precedente.
Una volta connesso al nodo, inserisci alcuni comandi Redis:
Digita:
PING
Risultato:
PONG
Invio
SET HELLO WORLD
Risultato:
OK
Digita:
GET HELLO
Risultato:
"WORLD"
Una volta terminato il test della connessione al nodo Redis, ti consigliamo di eliminare la VM di Compute Engine che hai utilizzato per connetterti all'istanza Redis. In questo modo, eviterai di addebitare costi al tuo account di fatturazione Cloudg.
Connettiti a un'istanza con crittografia in transito abilitata
Questa sezione fornisce un esempio di come connettersi a un'istanza Memorystore for Redis Cluster con la crittografia in transito abilitata.
Se non hai già una VM di Compute Engine che utilizza la stessa rete autorizzata dell'istanza Redis del passaggio precedente, creane una e connettiti seguendo la Guida rapida all'utilizzo di una VM Linux.
- Installa
redis-cli
versione 6.0 o successive sulla VM Compute Engine seguendo le istruzioni riportate in Installare Redis su Linux.
- Installa
Installa l'autorità di certificazione della tua istanza sulla VM Linux seguendo le istruzioni riportate in Installare le autorità di certificazione sul client.
Visualizza l'endpoint di rilevamento del cluster e prendine nota.
Connettiti all'endpoint di rilevamento dell'istanza eseguendo il seguente comando:
redis-cli -h DISCOVERY_ENDPOINT_ADDRESS -p PORT_NUMBER -c --tls --cacert /tmp/server_ca.pem
Dove:
- DISCOVERY_ENDPOINT_ADDRESS e PORT_NUMBER sono i valori che hai annotato nel passaggio precedente.
Esegui il comando
CLUSTER SHARDS
per visualizzare la topologia del cluster. Prendi nota di uno degli indirizzi IP e dei numeri di porta del nodo.Connettiti al nodo che preferisci eseguendo questo comando:
redis-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 che hai trovato nel passaggio precedente.
- NODE_PORT è il numero di porta del nodo che hai trovato nel passaggio precedente.
Una volta connesso al nodo, inserisci alcuni comandi Redis:
Digita:
PING
Risultato:
PONG