Anda dapat terhubung ke instance Redis dari Cloud Run menggunakan Traffic keluar VPC Langsung atau Akses VPC Serverless.
Penyiapan
Jika telah menginstal Google Cloud CLI dan membuat instance Redis, Anda dapat melewati langkah-langkah ini.
Instal gcloud CLI dan lakukan inisialisasi:
gcloud init
Ikuti Panduan Memulai Cepat untuk membuat instance Redis. Catat zona, alamat IP, dan port instance Redis.
Menyiapkan traffic keluar jaringan VPC untuk konfigurasi
Agar terhubung ke instance Redis, layanan Cloud Run Anda memerlukan akses ke jaringan VPC resmi instance Redis. Untuk mengaktifkan akses ini, Anda memerlukan traffic keluar VPC Langsung atau konektor Akses VPC Serverless. Bandingkan kedua metode keluar jaringan.
Temukan nama jaringan yang diizinkan instance Redis Anda dengan menjalankan perintah berikut:
gcloud redis instances describe INSTANCE_ID --region REGION --format "value(authorizedNetwork)"
Catat nama jaringan.
Jika Anda menggunakan Akses VPC Serverless, buat konektor. Pastikan untuk menggunakan region dan jaringan VPC yang sama dengan yang digunakan oleh instance Redis. Catat nama konektor.
Contoh aplikasi
Contoh aplikasi server HTTP ini membuat koneksi ke instance Redis dari layanan Cloud Run.
Clone repositori untuk bahasa pemrograman yang Anda pilih dan buka folder yang berisi kode contoh:
Go
git clone https://github.com/GoogleCloudPlatform/golang-samples
cd golang-samples/memorystore/redis
Node.js
git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples
cd nodejs-docs-samples/memorystore/redis
Python
git clone https://github.com/GoogleCloudPlatform/python-docs-samples
cd python-docs-samples/memorystore/redis
Aplikasi contoh ini menambahkan penghitung Redis setiap kali endpoint /
diakses.
Go
Aplikasi ini menggunakan klien
github.com/gomodule/redigo/redis
. Instal dengan menjalankan perintah berikut:
go get github.com/gomodule/redigo/redis
Node.js
Aplikasi ini menggunakan modul
redis
.
Python
Aplikasi ini menggunakan Flask
untuk penayangan web dan paket redis-py
untuk berkomunikasi dengan instance Redis.
Men-deploy aplikasi ke Cloud Run
Untuk men-deploy aplikasi:
Salin
Dockerfile
ke direktori sumber:cp cloud_run_deployment/Dockerfile .
Build image container menggunakan Cloud Build dengan perintah berikut:
gcloud builds submit --tag gcr.io/PROJECT_ID/visit-count
Deploy container ke Cloud Run.
Jika Anda menggunakan traffic keluar VPC Langsung, jalankan perintah berikut:
gcloud run deploy \ --image gcr.io/PROJECT_ID/visit-count \ --platform managed \ --allow-unauthenticated \ --region REGION \ --network NETWORK \ --subnet SUBNET \ --set-env-vars REDISHOST=REDIS_IP,REDISPORT=REDIS_PORT
dengan:
PROJECT_ID
adalah ID project Google Cloud Anda.REGION
adalah region tempat instance Redis Anda berada.NETWORK
adalah nama jaringan VPC resmi yang dilampirkan ke instance Redis Anda.SUBNET
adalah nama subnet Anda. Subnet harus/26
atau lebih besar. Traffic keluar VPC langsung mendukung rentang IPv4 RFC 1918, RFC 6598, dan Class E.REDIS_IP
danREDIS_PORT
adalah alamat IP dan nomor port instance Redis Anda.
Jika Anda menggunakan konektor Akses VPC Serverless, jalankan perintah berikut:
gcloud run deploy \ --image gcr.io/PROJECT_ID/visit-count \ --platform managed \ --allow-unauthenticated \ --region REGION \ --vpc-connector CONNECTOR_NAME \ --set-env-vars REDISHOST=REDIS_IP,REDISPORT=REDIS_PORT
dengan:
PROJECT_ID
adalah ID project Google Cloud Anda.REGION
adalah region tempat konektor Akses VPC Serverless dan instance Redis Anda berada.CONNECTOR_NAME
adalah nama konektor Anda.REDIS_IP
danREDIS_PORT
adalah alamat IP dan nomor port instance Redis Anda.
Setelah deployment berhasil selesai, command line akan menampilkan URL layanan Cloud Run Anda. Buka URL ini di browser web (atau gunakan alat seperti curl
) dan lihat jumlah instance Redis Anda meningkat setiap kali layanan dikunjungi.