Información acerca de la encriptación en tránsito

En esta página, se ofrece una descripción general de la encriptación en tránsito de Memorystore para Redis.

Si quieres obtener instrucciones para encriptar una conexión con la encriptación en tránsito, consulta Habilita la encriptación en tránsito.

Memorystore para Redis solo admite la versión 1.2 o una más reciente del protocolo TLS.

Introducción

Memorystore para Redis admite la encriptación de todo el tráfico de Redis con el protocolo de seguridad de la capa de transporte (TLS). Cuando la encriptación en tránsito está habilitada, los clientes de Redis se comunican exclusivamente a través de una conexión de puerto segura. Se bloquearán los clientes de Redis que no estén configurados para TLS. Si eliges habilitar la encriptación en tránsito, eres responsable de garantizar que el cliente de Redis pueda usar el protocolo TLS.

Requisitos previos de la encriptación en tránsito

A fin de usar la encriptación en tránsito con Memorystore para Redis, necesitas lo siguiente:

  1. Un cliente de Redis que admita TLS o un archivo adicional de TLS de terceros
  2. Una autoridad certificada instalada en la máquina cliente que accede a tu instancia de Redis

La TLS nativa no era compatible antes de la versión 6.0 de código abierto de Redis. Como resultado, no todas las bibliotecas cliente de Redis admiten TLS. Si usas un cliente que no admite TLS, te recomendamos usar el complemento de terceros Stunnel que habilita TLS para tu cliente. Consulta Conéctate a una instancia de Redis de forma segura mediante Stunnel y Telnet para ver un ejemplo de cómo conectarte a una instancia de Redis con Stunnel.

Autoridad certificada

Una instancia de Redis que usa encriptación en tránsito tiene una o más autoridades de certificación (CA) únicas que se usan para verificar la identidad del servidor. Una CA es una string que debes descargar y, luego, instalar en el cliente que accede a tu instancia de Redis. Una AC es válida durante diez años a partir de la fecha de creación. Para garantizar la continuidad del servicio, la CA nueva debe instalarse en los clientes de la instancia de Redis antes de que venza la CA anterior.

Rotación de la autoridad certificada

Una CA es válida durante 10 años luego de la creación de la instancia. Además, una CA nueva está disponible cinco años después de la creación de la instancia.

La antigua CA es válida hasta su fecha de vencimiento. Esto te brinda un período de cinco años en el que puedes descargar y, luego, instalar la CA nueva en los clientes que se conectan a la instancia de Redis. Una vez que venza la CA anterior, puedes desinstalarla de los clientes.

Para obtener instrucciones sobre cómo rotar la CA, consulta Administra la rotación de las autoridades certificadas.

Rotación del certificado del servidor

La rotación del certificado del servidor se produce cada 180 días y provoca una desconexión transitoria de unos segundos. Para restablecer la conexión, debes tener una lógica de reintento con retirada exponencial. La rotación de certificados no genera una conmutación por error para las instancias de nivel Estándar.

Límites de conexiones para la encriptación en tránsito

Habilitar la encriptación en tránsito en tu instancia de Redis introduce límites en la cantidad máxima de conexiones de cliente que puede tener tu instancia. El límite depende del tamaño de la instancia. Deberías aumentar el tamaño de tu instancia de Redis si necesitas más conexiones de las que admite tu nivel de capacidad actual.

Nivel de capacidad Cantidad máxima de conexiones para las versiones 4.0, 5.0 y 6.x de Redis1 Cantidad máxima de conexiones para Redis 7.0 y versiones posteriores1
M1 (1-4 GB) 1,000 65,000
M2 (5-10 GB) 2,500 65,000
M3 (11-35 GB) 15,000 65,000
M4 (36-100 GB) 30,000 65,000
M5 (más de 101 GB) 65,000 65,000

1 Estos límites de conexión son aproximados y dependen de la frecuencia y la complejidad de los comandos de Redis enviados por conexión.

Supervisa conexiones

Dado que las instancias de Redis con encriptación en tránsito tienen límites de conexión específicos, debes supervisar la métrica redis.googleapis.com/clients/connected para asegurarte de no exceder el límite de conexión. Si se excede el límite, la instancia de Redis rechaza las conexiones nuevas. En esta circunstancia, recomendamos escalar verticalmente tu instancia al tamaño que se adapte a la cantidad requerida de conexiones. Si sospechas que las conexiones inactivas representan una cantidad significativa de tus conexiones, puedes finalizarlas de forma proactiva con el parámetro de configuración timeout.

Impacto en el rendimiento de habilitar la encriptación en tránsito

La función de encriptación en tránsito encripta y desencripta datos, lo que conlleva la sobrecarga de procesamiento. Como resultado, habilitar la encriptación en tránsito puede reducir el rendimiento. Además, cuando se usa la encriptación en tránsito, cada conexión adicional tiene un costo de recurso asociado. Para determinar la latencia asociada con el uso de la encriptación en tránsito, compara el rendimiento de la aplicación mediante la evaluación comparativa del rendimiento de la aplicación con una instancia de Redis que tenga habilitada la encriptación en tránsito y una instancia de Redis que la tenga inhabilitada.

Lineamientos para mejorar el rendimiento

  • Disminuye la cantidad de conexiones de clientes siempre que sea posible. Establece y reutiliza conexiones de larga duración en lugar de crear conexiones de corta duración según demanda.
  • Aumenta el tamaño de tu instancia de Memorystore (se recomienda M4 o más).
  • Aumenta los recursos de CPU de la máquina anfitrión del cliente de Memorystore. Las máquinas cliente con un mayor recuento de CPU ofrecen un mejor rendimiento. Si usas una VM de Compute Engine, recomendamos las instancias optimizadas para procesamiento.
  • Disminuye el tamaño de la carga útil asociado con el tráfico de la aplicación porque las cargas útiles más grandes requieren más recorridos de ida y vuelta.

Impacto de la encriptación en tránsito en el uso de memoria

Cuando se habilita la encriptación en tránsito, se reserva parte de la memoria de la instancia de Redis para la función. En igualdad de condiciones, con la encriptación en tránsito habilitada, el valor de la métrica de proporción de uso de memoria del sistema es más alto debido a la sobrecarga de memoria adicional que utiliza la función.

Mejoras de rendimiento en la versión 7.0 de Redis

El uso de la versión 7.0 de Redis en Memorystore para Redis mejora el rendimiento de la encriptación en tránsito. Si quieres aprovechar estas mejoras de rendimiento, considera actualizar tu instancia para usar la versión 7.0 de Redis.

¿Qué sigue?