Opciones de implementación para Redis en Google Cloud

En este documento, se proporciona una descripción general de las implementaciones y migraciones de Redis a Google Cloud, incluidas las opciones y las ventajas y desventajas de implementar Redis en diferentes servicios, según tus requisitos.

Redis es un almacén de estructuras de datos en la memoria que puedes usar como base de datos, caché, agente de mensajes y mucho más. Google Cloud admite Redis por completo, lo que incluye lo siguiente:

La mejor manera de implementar Redis en Google Cloud depende de tus necesidades y requisitos específicos. Las recomendaciones que se proporcionan en esta guía se basan en prácticas recomendadas y consideraciones generales. Es importante analizar a fondo tu carga de trabajo de Redis y consultar la documentación oficial o buscar asesoramiento profesional para casos de uso o requisitos específicos.

Arquitecturas

Puedes implementar Redis con una de las siguientes arquitecturas:

Arquitectura Descripción Caso de uso Opciones de implementación Alta disponibilidad Capacidad de procesamiento de lectura Capacidad de procesamiento de escritura
Estándar (independiente) Un solo nodo de Redis, sin réplicas de lectura y sin alta disponibilidad. Casos en los que todos los datos caben en un solo nodo, la capacidad de procesamiento de escritura y lectura puede ser proporcionada por un solo nodo, y no se requiere alta disponibilidad.

Es compatible con Memorystore (completamente administrado) y el software de código abierto (OSS) de Redis (autoadministrado).

La autoadministración requiere una configuración más compleja. Memorystore es una buena opción para comenzar rápidamente.

No Nodo único Nodo único
HA o réplicas de lectura Un solo nodo de Redis para operaciones de escritura, con nodos adicionales para proporcionar alta disponibilidad y, de manera opcional, compartir la carga de lectura, por ejemplo, mediante Sentinel. Casos en los que un nodo aún puede atender la capacidad de procesamiento de escritura, pero no la de lectura, o bien se requiere alta disponibilidad.

Es compatible con Memorystore (completamente administrado) y Redis OSS (administrado por el usuario).

Las arquitecturas de Redis Cluster ofrecen escalamiento automático, alta disponibilidad y fragmentación de datos, lo que las hace ideales para aplicaciones distribuidas a gran escala. Para comprender las compensaciones y los esfuerzos de mantenimiento necesarios en el escalamiento manual, el agrupamiento en clústeres y la fragmentación, consulta Escalamiento sin tiempo de inactividad en Memorystore for Redis Cluster.

La autoadministración requiere una configuración más compleja. Memorystore es una buena opción para comenzar rápidamente.

Multi-AZ Multinodo Nodo único
Clúster (sin proxies) Varios nodos dividen las operaciones de escritura de datos con fragmentos de datos separados. Se pueden agregar de forma opcional alta disponibilidad y réplicas de lectura. Casos en los que un nodo no puede atender la capacidad de procesamiento de escritura y, de manera opcional, se requiere alta disponibilidad o replicación de lectura. Multi-AZ Multinodo Multinodo
Clúster (con proxies) Varios nodos dividen las operaciones de escritura de datos con fragmentos de datos separados. Se pueden agregar de forma opcional alta disponibilidad y réplicas de lectura. Los proxies se implementan en cada nodo principal. Casos en los que un nodo no puede atender la capacidad de procesamiento de escritura y, de manera opcional, se requiere alta disponibilidad o replicación de lectura, y en los que es demasiado costoso o inconveniente refactorizar las aplicaciones cliente para que usen la API de Redis Cluster, o bien el uso de proxies tiene otros beneficios.

Es compatible con Redis Enterprise Cloud (completamente administrado) o Redis Enterprise Software (autoadministrado).

La autoadministración con Redis OSS requiere una configuración más compleja. Redis Enterprise Cloud es una buena opción para comenzar rápidamente.

Multi-AZ o multirregión (solo Redis Enterprise) Multinodo Nodo único

Opciones de implementación

Google Cloud ofrece las siguientes opciones de implementación de Redis:

  • Memorystore para Redis completamente administrado por Google Cloud: Un servicio de Redis completamente administrado, con alta disponibilidad y durabilidad que administra Google, que es rentable y rápido de configurar, operar y escalar. Memorystore admite Redis Cluster y Redis independiente con alta disponibilidad opcional.
  • Redis Enterprise autoadministrado o completamente administrado por Redis Ltd.: Un clúster de Redis con alta disponibilidad y duradero con licencia de Redis Ltd. y con dos opciones de administración: administrado por Redis Ltd. (“Redis Enterprise Cloud”) o autoadministrado (“Redis Enterprise Software” ) con la asistencia de Redis Ltd. Puedes adquirir Redis Enterprise directamente en Redis Ltd. o a través de Google Cloud Marketplace. Redis Ltd. admite implementaciones en Compute Engine, Google Kubernetes Engine y OpenShift.
  • Software de código abierto (OSS) de Redis autoadministrado: Un clúster de Redis autoadministrado o Redis independiente con alta disponibilidad opcional, que se puede implementar en Compute Engine, OpenShift o Google Kubernetes Engine.

Elige una opción de implementación de Redis

En esta sección, se describe cómo elegir la opción de implementación de Redis más adecuada para tu carga de trabajo. En la figura 1, se proporciona una descripción general visual de los puntos de decisión:

Árbol de decisión de la opción de implementación de Redis.
Figura 1: Factores de decisión y opciones de implementación.

Elige un modelo de administración de Redis

Puedes elegir uno de los siguientes modelos de administración:

  • Implementación completamente administrada. Delegas las operaciones de implementación y administración al proveedor de servicios. Elige este modelo cuando necesites enfocarte en compilar tu app y delegar las tareas de administración.

  • Implementación autoadministrada. Eres responsable de las operaciones de implementación y administración. Elige este modelo si se cumple alguna de las siguientes condiciones:

    • Tienes una economía de escala operativa existente, y administrar y operar Redis tiene sentido económico en tu organización.

    • Tienes una preferencia estratégica por la dependencia solo de IaaS.

    • Necesitas optimizaciones avanzadas.

Evalúa las opciones de implementación

Después de elegir tu modelo de administración, evalúa las opciones de implementación disponibles.

Opciones completamente administradas

Para las implementaciones completamente administradas, puedes usar Memorystore o Redis Enterprise Cloud.

Memorystore

Elige Memorystore si se cumple alguna de las siguientes condiciones:

  • Prefieres consolidar la asistencia para el software administrado conGoogle Cloud.
  • Tienes preferencia por optimizar la integración en las construcciones de Google Cloud, como Identity and Access Management, las APIs, las políticas de la organización, la cuota o Cloud Asset Inventory.
  • Necesitas funciones específicas que solo están disponibles en Memorystore (p. ej., volver a escalar).

Para obtener más información sobre Memorystore, consulta la documentación del producto.

Opciones de implementación
Redis Enterprise Cloud

Elige Redis Enterprise Cloud si se cumple alguna de las siguientes condiciones:

  • Necesitas funciones específicas que solo están disponibles en Redis Enterprise Cloud (por ejemplo, escrituras multimaestro activas-activas en varias regiones con su ANS del 99.999%, caso de uso de RedisSearch).
  • Necesitas el ajuste de escala del clúster para una aplicación que no admite la API de Redis Cluster.

Para obtener más información sobre Redis Enterprise Cloud, consulta la documentación de Redis Cloud.

Opciones autoadministradas

Para las implementaciones autoadministradas, puedes elegir entre Redis Enterprise y el software de código abierto de Redis.

Redis Enterprise

Elige Redis Enterprise autoadministrado si se cumple alguna de las siguientes condiciones:

  • Tu aplicación requiere sus funciones únicas, como el refragmentado automático para el escalamiento horizontal, Redis en flash o Redis Enterprise Operator para Kubernetes.
  • Tu equipo de operaciones no tiene las habilidades necesarias para resolver problemas complejos de Redis de forma interna sin asistencia externa calificada.
  • Prefieres la asistencia empresarial que proporciona Redis Ltd., y los costos de licencias asociados son manejables para tu organización.

Para obtener más información sobre Redis Enterprise Software, consulta la documentación de Redis Enterprise Software.

Opciones de implementación
Opciones de facturación y adquisición
  • Licencia y asistencia facturadas por Redis Inc., mientras que Google factura la infraestructura.
  • La licencia y la asistencia se adquieren a través de Google Cloud Marketplace, mientras que Google factura la infraestructura.
Software de código abierto de Redis

Elige el software de código abierto de Redis autoadministrado si se cumple alguna de las siguientes condiciones:

  • Necesitas o prefieres una personalización completa que no es posible de otra manera.
  • Tu equipo de operaciones tiene las habilidades necesarias para resolver problemas complejos de Redis de forma interna sin asistencia externa calificada.
  • Quieres evitar los costos de licencias.
  • Tienes muchos recursos internos para ajustar Redis y el kernel de Linux, o tu caso de uso no requiere ajustes.

Cuando implementes software de código abierto de Redis autoadministrado, elige un destino de implementación según la estrategia de plataforma que elijas. El software de código abierto de Redis se puede implementar en Compute Engine, OpenShift o Google Kubernetes Engine. Autopilot de GKE puede reducir los esfuerzos de implementación y administración, pero puede ser más limitado en aspectos como la dificultad para escalar.

Para obtener más información sobre el software de código abierto de Redis, consulta Redis.io.

Comparación de funciones

En la siguiente tabla, se resumen las diferencias clave entre todas las opciones de implementación:

Características de la Deployment Opciones de implementación
Memorystore para Redis y Redis Cluster Redis Enterprise Cloud Software de Redis Enterprise Software de código abierto de Redis
Administrado por Completamente administrado por Google Completamente administrado por Redis Ltd. Autoadministrado Autoadministrado
Compatible con Google Redis Ltd. Redis Ltd. Se admite
Facturado por Google Redis Ltd. o Google

Google factura la infraestructura.

Redis Ltd. factura la licencia y la asistencia de Redis Ltd. o Google.

Google
Elementos de costo

Todos los costos incluidos.

Incluye: costos de infraestructura, licencias, asistencia y administración.

Para obtener más información, consulta los precios de Memorystore.

Todos los costos incluidos.

Incluye: costos de infraestructura, licencias, asistencia y administración.

Para obtener más información, consulta los precios de Redis Enterprise Cloud.

Se incluyen los costos de licencia y asistencia del software. El uso de la infraestructura Google Cloudse factura por separado.

El cliente absorbe los costos de administración, incluidos la implementación, el ajuste, el personal y el tiempo de inactividad.

Para obtener más información, consulta Precios del software de Redis Enterprise.

No se cobran tarifas de servicio ni de licencias. Uso de la infraestructura facturado por Google Cloud.

El cliente absorbe los costos de administración, incluidos la implementación, el ajuste, el personal y el tiempo de inactividad.

ANS
  • Estándar de Redis: un 99.9% de tiempo de actividad; tiempo de inactividad menor o igual que 43.2 minutos por mes
  • Clúster de Redis: 99.99% de tiempo de actividad con alta disponibilidad de varios AZ; tiempo de inactividad menor o igual que 4.38 min por mes.

Para obtener más información, consulta el Acuerdo de Nivel de Servicio de Memorystore.

  • Estándar de Redis: un 99.9% de tiempo de actividad; tiempo de inactividad menor o igual que 43.2 minutos por mes
  • Clúster de Redis: 99.99% de tiempo de actividad con alta disponibilidad de varios AZ; tiempo de inactividad menor o igual que 4.38 min por mes.
  • Alta disponibilidad activa-activa multirregional: Tiempo de actividad del 99.999%; menor o igual que 26.3 minutos por mes de tiempo de inactividad.

Para obtener más información, consulta el Acuerdo de Nivel de Servicio de Redis Cloud.

No aplicable

Eres responsable del tiempo de actividad.

No aplicable

Eres responsable del tiempo de actividad.

Nivel gratuito No Prueba gratuita de 30 días No aplicable
Segmentación de datos No Nivelación automática Nivelación automática No
Múltiples nubes No Manualmente Es posible, pero requiere mucho esfuerzo
Activa-activa multirregional No Manualmente Es posible, pero requiere mucho esfuerzo
Módulos
Cumplimiento Compatibilidad integrada con los diferentes regímenes de cumplimiento. Consulta las ofertas de cumplimiento para obtener más información. Compatibilidad integrada con los diferentes regímenes de cumplimiento. Consulta el Centro de confianza de Redis para obtener más información. Compatibilidad integrada con los diferentes regímenes de cumplimiento. Consulta el Centro de confianza de Redis para obtener más información. Se requiere la administración manual del cumplimiento. Consulta las ofertas de cumplimiento para obtener más información.
Cómo escalar las escrituras del clúster Se acerca y se aleja Se acerca y se aleja Se escala horizontalmente. El ajuste de escala requiere esfuerzo manual. Es autoadministrado y requiere esfuerzo manual.
Rebalanceo automático Autoadministrado, requiere esfuerzo manual Autoadministrado, requiere esfuerzo manual
Cómo agregar alta disponibilidad Integración perfecta, no se requiere una nueva implementación Integración perfecta, no se requiere una nueva implementación No se requiere una nueva implementación, pero sí esfuerzo manual. Requiere un esfuerzo manual considerable. Es posible que se requiera un nuevo desarrollo según tu arquitectura original.
Cómo agregar réplicas de lectura Integración perfecta, no se requiere una nueva implementación Integración perfecta, no se requiere una nueva implementación Requiere un esfuerzo manual considerable. Es posible que se requiera un nuevo desarrollo según tu arquitectura original. Autoadministrado, requiere esfuerzo manual
Cómo migrar a un clúster de Redis con fragmentación de datos cuando se supera el rendimiento de escritura Requiere una nueva implementación, pero se proporcionan herramientas para facilitar el proceso. Los clientes deben refactorizarse para admitir la API de Redis Cluster. Integración perfecta, no se requiere una nueva implementación Integración perfecta, no se requiere una nueva implementación Autoadministrado, requiere esfuerzo manual