Tentang enkripsi saat transit

Halaman ini memberikan ringkasan enkripsi dalam transit untuk Memorystore for Redis.

Untuk mengetahui petunjuk cara mengenkripsi koneksi dengan enkripsi dalam transit, lihat Mengaktifkan enkripsi dalam transit.

Memorystore for Redis hanya mendukung protokol TLS versi 1.2 atau yang lebih tinggi.

Pengantar

Memorystore for Redis mendukung enkripsi semua traffic Redis menggunakan protokol Transport Layer Security (TLS). Jika enkripsi saat transit diaktifkan, klien Redis akan berkomunikasi secara eksklusif melalui koneksi port yang aman. Klien Redis yang tidak dikonfigurasi untuk TLS akan diblokir. Jika Anda memilih untuk mengaktifkan enkripsi dalam transit, Anda bertanggung jawab untuk memastikan bahwa klien Redis Anda dapat menggunakan protokol TLS.

Prasyarat enkripsi saat transit

Untuk menggunakan enkripsi dalam transit dengan Memorystore for Redis, Anda memerlukan:

  1. Klien Redis yang mendukung TLS atau sidecar TLS pihak ketiga
  2. Otoritas Sertifikat yang diinstal di mesin klien yang mengakses instance Redis Anda

TLS Native tidak didukung sebelum Redis open source versi 6.0. Akibatnya, tidak semua library klien Redis mendukung TLS. Jika Anda menggunakan klien yang tidak mendukung TLS, sebaiknya gunakan plugin pihak ketiga Stunnel yang mengaktifkan TLS untuk klien Anda. Lihat Menghubungkan ke instance Redis secara aman menggunakan Stunnel dan telnet untuk contoh cara menghubungkan ke instance Redis dengan Stunnel.

Otoritas Sertifikat

Instance Redis yang menggunakan enkripsi dalam transit memiliki satu atau beberapa Otoritas Sertifikat (CA) unik yang digunakan untuk memverifikasi identitas server. CA adalah string yang harus Anda download dan instal di klien yang mengakses instance Redis Anda. CA berlaku selama sepuluh tahun sejak tanggal pembuatannya. Untuk memastikan kelangsungan layanan, CA baru harus diinstal pada klien instance Redis sebelum CA sebelumnya berakhir masa berlakunya.

Rotasi Certificate Authority

CA berlaku selama 10 tahun setelah pembuatan instance. Selain itu, CA baru akan tersedia lima tahun setelah pembuatan instance.

CA lama berlaku hingga tanggal habis masa berlakunya. Hal ini memberi Anda jangka waktu lima tahun untuk mendownload dan menginstal CA baru ke klien yang terhubung ke instance Redis. Setelah CA lama berakhir masa berlakunya, Anda dapat meng-uninstallnya dari klien.

Untuk mengetahui petunjuk tentang cara merotasi CA, lihat Mengelola rotasi Certificate Authority.

Rotasi sertifikat server

Rotasi sertifikat sisi server terjadi setiap 180 hari, sehingga menyebabkan koneksi terputus sementara selama beberapa detik. Anda harus memiliki logika percobaan ulang dengan backoff eksponensial untuk membuat ulang koneksi. Rotasi sertifikat tidak menyebabkan failover untuk instance Tingkat Standar.

Batas koneksi untuk enkripsi saat proses pengiriman

Mengaktifkan enkripsi saat transit pada instance Redis Anda akan memberikan batas pada jumlah koneksi klien maksimum yang dapat dimiliki instance Anda. Batas ini bergantung pada ukuran instance Anda. Anda harus mempertimbangkan untuk meningkatkan ukuran instance Redis jika Anda memerlukan lebih banyak koneksi daripada yang didukung oleh tingkat kapasitas saat ini.

Tingkat kapasitas Jumlah maksimum koneksi untuk Redis versi 4.0, 5.0, dan 6.x1 Jumlah maksimum koneksi untuk Redis versi 7.0 dan yang lebih baru1
M1 (1-4GB) 1000 65.000
M2 (5-10GB) 2.500 65.000
M3 (11-35GB) 15.000 65.000
M4 (36-100GB) 30.000 65.000
M5 (101+GB) 65.000 65.000

1 Batas koneksi ini bersifat perkiraan, dan bergantung pada kecepatan serta kompleksitas perintah Redis yang dikirim per koneksi.

Memantau koneksi

Karena instance Redis dengan enkripsi dalam transit memiliki batas koneksi tertentu, Anda harus memantau metrik redis.googleapis.com/clients/connected untuk memastikan Anda tidak melebihi batas koneksi. Jika batas terlampaui, instance Redis akan menolak koneksi yang baru dicoba. Dalam situasi ini, sebaiknya lakukan penskalaan instance ke atas ke ukuran yang dapat mengakomodasi jumlah koneksi yang diperlukan. Jika Anda menduga bahwa koneksi tidak aktif merupakan sebagian besar koneksi Anda, Anda dapat menghentikan koneksi ini secara proaktif dengan parameter konfigurasi timeout.

Dampak performa pengaktifan enkripsi saat transit

Fitur enkripsi dalam transit mengenkripsi dan mendekripsi data, yang disertai dengan overhead pemrosesan. Akibatnya, mengaktifkan enkripsi dalam transit dapat mengurangi performa. Selain itu, saat menggunakan enkripsi dalam transit, setiap koneksi tambahan akan dikenai biaya resource terkait. Untuk menentukan latensi yang terkait dengan penggunaan enkripsi saat transit, bandingkan performa aplikasi dengan membandingkan performa aplikasi dengan instance Redis yang mengaktifkan enkripsi saat transit dan instance Redis yang menonaktifkannya.

Panduan untuk meningkatkan performa

  • Kurangi jumlah koneksi klien jika memungkinkan. Buat dan gunakan kembali koneksi jangka panjang, bukan membuat koneksi singkat sesuai permintaan.
  • Tingkatkan ukuran instance Memorystore Anda (direkomendasikan M4 atau yang lebih besar).
  • Tingkatkan resource CPU mesin host klien Memorystore. Mesin klien dengan jumlah CPU yang lebih tinggi menghasilkan performa yang lebih baik. Jika menggunakan VM Compute Engine, sebaiknya gunakan instance yang dioptimalkan untuk komputasi.
  • Kurangi ukuran payload yang terkait dengan traffic aplikasi karena payload yang lebih besar memerlukan lebih banyak perjalanan pulang pergi.

Dampak enkripsi dalam pengiriman terhadap penggunaan memori

Mengaktifkan enkripsi dalam transit mencadangkan sebagian memori instance Redis Anda untuk fitur tersebut. Jika semua hal lainnya sama, dengan enkripsi saat transit diaktifkan, nilai untuk metrik Rasio Penggunaan Memori Sistem lebih tinggi karena overhead memori tambahan yang digunakan oleh fitur tersebut.

Peningkatan performa Redis versi 7.0

Menggunakan Redis versi 7.0 di Memorystore for Redis akan meningkatkan performa enkripsi dalam transit. Untuk memanfaatkan peningkatan performa ini, sebaiknya upgrade instance Anda untuk menggunakan Redis versi 7.0. Dengan menggunakan versi ini, Memorystore for Redis tidak akan menghentikan koneksi yang Anda gunakan untuk mengganti sertifikat server atau melakukan operasi update.

Langkah berikutnya