Memecahkan masalah

Halaman ini menjelaskan berbagai skenario error, pesan error untuk skenario tersebut, dan langkah-langkah pemecahan masalah untuk mengatasi error.

Skenario error jaringan

Rentang IP yang dialokasikan habis

Memorystore for Memcached mengharuskan Anda menggunakan koneksi akses layanan pribadi dan rentang alamat IP terkait untuk koneksi tersebut. Alamat IP yang tersedia dalam rentang tersebut dapat habis karena digunakan oleh instance Memcached dan resource Google Cloud lainnya.

Jika alamat IP habis, pembuatan instance akan menampilkan pesan error berikut:

ERROR: (gcloud.memcache.instances.create) { "code": 9, "message": "Unable to create instance. The allocated private IP address space is exhausted. For information on expanding the allocation, see https://cloud.google.com/vpc/docs/configure-private-services-access#modify-ip-range" }

Anda dapat mengatasi masalah ini dengan mengalokasikan alamat IP tambahan. Untuk mengetahui informasi selengkapnya tentang cara melakukannya, lihat Kehabisan rentang alamat IP.

Anda tidak memiliki koneksi akses layanan pribadi yang dibuat untuk jaringan Anda

Jika Anda mencoba membuat instance Memorystore for Memcached tanpa koneksi akses layanan pribadi yang dibuat untuk jaringan project Anda, pembuatan akan gagal dengan error berikut:

Google private service access is not enabled. Enable private service access and try again

Untuk berhasil membuat instance, ikuti petunjuk penyiapan akses layanan pribadi di Membuat koneksi akses layanan pribadi.

Peering jaringan untuk akses layanan pribadi dihapus

Membuat koneksi akses layanan pribadi akan membuat koneksi peering jaringan yang disebut servicenetworking-googleapis-com, yang muncul di halaman Peering Jaringan VPC project Anda.

Menghapus peering jaringan ini dapat menyebabkan Anda menerima error berikut:

  • telnet: Unable to connect to remote host: Connection timed out
  • Unable to create instance. Enable private service access for the authorized network and try again. For information on enabling private service access, see https://cloud.google.com/service-infrastructure/docs/enabling-private-services-access

Untuk mengatasi masalah ini, ikuti langkah terakhir petunjuk gcloud di Membuat koneksi akses layanan pribadi.

Aturan firewall memblokir alamat IP instance Anda

Masalah konektivitas dapat muncul jika Anda membuat aturan firewall yang memblokir alamat IP dari rentang IP yang dialokasikan yang terkait dengan koneksi akses layanan pribadi Anda.

Pastikan untuk tidak membuat aturan firewall jaringan yang memblokir rentang IP instance Memcached Anda.

Error saat menghubungkan ke instance Memcached dari resource Google Cloud lainnya

Error saat menghubungkan ke instance dari lingkungan standar App Engine atau Cloud Run Functions

Jika Anda tidak dapat terhubung ke instance Memcached menggunakan fungsi Cloud Run atau lingkungan standar App Engine, kemungkinan Anda belum menyiapkan konektor Akses VPC Serverless untuk lingkungan Anda.

Untuk mengetahui petunjuk tentang cara menyiapkan Akses VPC Serverless untuk lingkungan standar App Engine, lihat Menghubungkan ke jaringan VPC.

Untuk mengetahui petunjuk tentang cara menyiapkan Akses VPC Serverless untuk fungsi Cloud Run, lihat Menghubungkan ke jaringan VPC.

Error saat terhubung ke instance menggunakan cluster Google Kubernetes Engine

Anda tidak dapat terhubung ke instance Memorystore for Memcached dari cluster GKE tanpa mengaktifkan VPC native/pengalihan IP di cluster Anda. Cara termudah untuk mengaktifkan VPC-native/IP alias adalah selama pembuatan cluster GKE. Saat membuat cluster, pilih VPC Native di bagian opsi lanjutan. Untuk mengetahui detail selengkapnya, lihat Membuat cluster VPC native.

Error saat terhubung ke instance menggunakan lingkungan fleksibel App Engine atau VM Compute Engine

Jika instance Anda mengalami masalah konektivitas, ikuti langkah-langkah pemecahan masalah berikut:

  1. Pastikan instance Memcached Anda disediakan di region dan jaringan yang sama dengan klien yang mencoba mengaksesnya.

  2. Pastikan project Anda tidak memiliki aturan firewall jaringan yang memblokir IP node instance Memcached Anda.

    • Untuk melihat alamat IP node Anda, lihat tab node instance Memcached Anda di konsol Google Cloud .
  3. Telnet ke salah satu node memcached Anda, lalu jalankan beberapa perintah Memcached set dan get sederhana untuk melihat apakah instance responsif atau tidak.

Skenario error Identity and Access Management ( IAM )

Memulihkan akun layanan yang dihapus

Memorystore for Memcached menggunakan akun layanan berikut untuk mengelola instance Memcached Anda:

  • service-project-number@service-networking.iam.gserviceaccount.com
  • service-project-number@cloud-memcache-sa.iam.gserviceaccount.com

Menghapus binding kebijakan untuk akun layanan ini akan mencegah Anda membuat instance baru.

Jika Anda mencoba membuat instance Memcached menggunakan gcloud dalam skenario ini, Anda mungkin menerima pesan error berikut:

ERROR: (gcloud.memcache.instances.create) { "code": 13, "message": "an internal error has occurred" }

Untuk membuat ulang pengikatan kebijakan untuk akun layanan ini, jalankan salah satu perintah berikut, dengan mengganti variables dengan nilai yang sesuai. Jalankan perintah yang terkait dengan akun layanan yang dihapus.

gcloud projects add-iam-policy-binding project-id --member='serviceAccount:service-project-number@service-networking.iam.gserviceaccount.com' --role='roles/servicenetworking.serviceAgent'
gcloud projects add-iam-policy-binding project-id --member='serviceAccount:service-project-number@cloud-memcache-sa.iam.gserviceaccount.com' --role='roles/memcache.serviceAgent'

Error waktu tunggu operasi habis

Skenario error berikut akan menyebabkan instance Memcached tidak responsif dan/atau operasi instance/node mengalami waktu tunggu habis.

Error partisi jaringan

Terkadang Google Cloud resource tidak dapat berkomunikasi di seluruh zona dalam suatu region karena kesalahan partisi jaringan di server Google Cloud. Hal ini dapat menyebabkan instance Anda kehilangan koneksi, sehingga terjadi error waktu tunggu.

Setelah Google Cloud menyelesaikan error partisi jaringan untuk region atau zona tempat instance Anda disediakan, konektivitas akan dilanjutkan secara normal.

Dalam skenario ini, Anda mungkin melihat pesan error konektivitas seperti berikut:

telnet: Unable to connect to remote host: Connection timed out

Jika Anda tidak dapat mengidentifikasi penyebab error waktu tunggu, hubungi Google Cloud Dukungan.

Referensi aplikasi yang tidak tepat ke IP node

Jika waktu tunggu klien Anda habis saat mencoba terhubung ke node, salah satu potensi masalahnya adalah aplikasi Anda mungkin tidak menentukan alamat IP yang tepat dari node yang ingin Anda hubungkan. Pastikan aplikasi Anda mengarah ke alamat IP node di cluster Anda.

Dalam skenario ini, Anda mungkin melihat pesan error konektivitas, seperti pesan berikut:

telnet: Unable to connect to remote host: Connection timed out

Untuk mengatasi masalah ini, cari alamat IP node Anda, dan pastikan aplikasi Anda mengarah secara akurat ke alamat node.

Skenario error tambahan

Rentang alamat IP Compute Engine yang tidak didukung

Anda tidak dapat mengakses Memorystore untuk Memcached dari VM Compute Engine yang memiliki alamat IP dalam rentang 172.17.0.0/16, karena rentang tersebut dicadangkan untuk komponen internal.

Distribusi node yang tidak seimbang di seluruh zona dalam satu region

Jika zona di Google Cloud region tidak tersedia pada saat Anda menyediakan instance Memcached, node akan dibuat di zona yang tersedia. Hal ini dapat menyebabkan distribusi node Memcached yang tidak seimbang di seluruh zona dalam suatu region.

Hal ini tidak akan berdampak signifikan pada performa aplikasi Anda. Namun, idealnya, node Anda harus didistribusikan di semua zona dalam suatu region untuk melindungi data Anda dari gangguan zona.

Jika Anda tidak puas dengan distribusi node di seluruh zona saat membuat instance, Anda dapat menunggu hingga zona tersebut kembali online untuk membuat instance, atau Anda dapat menggunakan strategi berikut untuk mencoba mendistribusikan ulang node di seluruh zona di lain waktu:

Untuk mendistribusikan ulang node Memcached di antara node yang tersedia dalam zona, lakukan penskalaan instance, lalu lakukan penskalaan kembali ke jumlah node yang diinginkan. Jika zona yang diinginkan kembali online, proses penskalaan akan mendistribusikan ulang node secara merata di seluruh zona yang tersedia. Selain itu, perlu diperhatikan bahwa penskalaan menyebabkan pengosongan cache untuk data di instance Memcached Anda.