Halaman ini menjelaskan cara terhubung ke instance Memorystore for Redis Cluster.
Dukungan klien
Memorystore for Redis Cluster tidak menyediakan library kliennya sendiri, tetapi mendukung library klien pihak ketiga yang ada yang mendukung protokol Redis. Contoh daftar klien dapat ditemukan di halaman Klien Redis.
Praktik terbaik klien Redis-py
Untuk terhubung ke instance Memorystore for Redis Cluster menggunakan klien Python redis-py, Anda harus menambahkan skip_full_coverage_check=True
saat mendeklarasikan Redis Cluster:
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'))
Mengizinkan port dalam daftar yang diizinkan di firewall
Jika Anda tidak memasukkan port yang benar ke dalam daftar yang diizinkan di firewall, instance Anda dapat mengalami error koneksi. Untuk mengetahui informasi selengkapnya tentang cara memasukkan port ke daftar yang diizinkan, lihat Memecahkan masalah.
Akses lintas region
Anda dapat mengakses instance Memorystore for Redis Cluster dari klien yang berada di region yang berbeda dengan lokasi instance Memorystore.
Melihat endpoint penemuan cluster Anda
Untuk melihat endpoint penemuan cluster Memorystore Anda, gunakan petunjuk berikut:
Konsol
Buka halaman Memorystore for Redis Cluster di konsol Google Cloud .
Klik ID Cluster Anda.
Di bagian Connect to this instance, catat alamat IP dan nomor port di samping Discovery Endpoint. Kedua nilai yang digunakan bersama ini adalah endpoint penemuan cluster Anda.
gcloud
Untuk melihat endpoint penemuan cluster Anda, jalankan describe
gcloud CLI seperti yang dijelaskan di bagian melihat detail instance.
Outputnya akan mirip dengan berikut ini:
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
Catat alamat endpoint dan nomor port yang tercantum di bagian
discovery_endpoints:
. Kedua nilai ini yang digunakan bersama adalah endpoint penemuan cluster Anda.
Menghubungkan dari VM Compute Engine menggunakan redis-cli
Anda dapat terhubung ke instance Memorystore for Redis Cluster dari VM Compute Engine mana pun yang menggunakan jaringan resmi instance Memorystore.
Untuk terhubung ke instance:
Jika Anda belum memiliki VM Compute Engine Linux yang menggunakan jaringan yang diizinkan untuk instance Memorystore for Redis Cluster, buat VM dan hubungkan ke VM tersebut dengan mengikuti Panduan memulai untuk membuat VM Linux.
Instal
redis-cli
versi 6.0 atau yang lebih baru di VM Compute Engine dengan mengikuti petunjuk di Menginstal Redis di Linux.Lihat endpoint penemuan cluster Anda dan catat.
Hubungkan ke endpoint penemuan instance Anda dengan menjalankan perintah berikut:
redis-cli -h DISCOVERY_ENDPOINT_ADDRESS -p PORT_NUMBER -c
Dengan:
- DISCOVERY_ENDPOINT_ADDRESS dan PORT_NUMBER adalah nilai yang Anda catat di langkah sebelumnya.
Jalankan perintah
CLUSTER SHARDS
untuk melihat topologi cluster Anda. Catat salah satu alamat IP dan nomor port node.Hubungkan ke node yang diinginkan dengan menjalankan perintah berikut:
redis-cli -h NODE_IP_ADDRESS -p NODE_PORT -c
Ganti kode berikut:
- NODE_IP_ADDRESS adalah alamat IP node yang Anda temukan di langkah sebelumnya.
- NODE_PORT adalah nomor port node yang Anda temukan di langkah sebelumnya.
Setelah terhubung ke node, masukkan beberapa perintah Redis:
Enter:
PING
Hasil:
PONG
Enter
SET HELLO WORLD
Hasil:
OK
Enter:
GET HELLO
Hasil:
"WORLD"
Setelah selesai menguji koneksi ke node Redis, Anda harus mempertimbangkan untuk menghapus VM Compute Engine yang Anda gunakan untuk terhubung ke instance Redis. Tindakan ini membantu Anda menghindari biaya yang ditagihkan ke akun Penagihan Cloud Anda.
Menghubungkan ke instance yang mendukung enkripsi saat transit
Bagian ini memberikan contoh cara terhubung ke instance Memorystore for Redis Cluster yang mengaktifkan enkripsi saat transit.
Jika Anda belum memiliki VM Compute Engine yang menggunakan jaringan resmi yang sama dengan instance Redis dari langkah sebelumnya, buat VM dan hubungkan dengan mengikuti Panduan memulai menggunakan VM Linux.
- Instal
redis-cli
versi 6.0 atau yang lebih baru di VM Compute Engine dengan mengikuti petunjuk di Menginstal Redis di Linux.
- Instal
Instal otoritas sertifikat instance Anda di VM Linux dengan mengikuti petunjuk di Menginstal otoritas sertifikat di klien Anda.
Lihat endpoint penemuan cluster Anda dan catat.
Hubungkan ke endpoint penemuan instance Anda dengan menjalankan perintah berikut:
redis-cli -h DISCOVERY_ENDPOINT_ADDRESS -p PORT_NUMBER -c --tls --cacert /tmp/server_ca.pem
Dengan:
- DISCOVERY_ENDPOINT_ADDRESS dan PORT_NUMBER adalah nilai yang Anda catat di langkah sebelumnya.
Jalankan perintah
CLUSTER SHARDS
untuk melihat topologi cluster Anda. Catat salah satu alamat IP dan nomor port node.Hubungkan ke node yang diinginkan dengan menjalankan perintah berikut:
redis-cli -h NODE_IP_ADDRESS -p NODE_PORT -c --tls --cacert /tmp/server_ca.pem
Ganti kode berikut:
- NODE_IP_ADDRESS adalah alamat IP node yang Anda temukan di langkah sebelumnya.
- NODE_PORT adalah nomor port node yang Anda temukan di langkah sebelumnya.
Setelah terhubung ke node, masukkan beberapa perintah Redis:
Enter:
PING
Hasil:
PONG