En este documento, se proporciona una descripción general de las implementaciones y migraciones de Redis a Google Cloud, incluidas las opciones y compensaciones para implementar Redis en diferentes servicios, según tus requisitos.
Redis es un almacén de estructura de datos en la memoria que puedes usar como base de datos, caché, agente de mensajes y mucho más. Google Cloud es compatible por completo con Redis, incluidos los siguientes:
Opciones completamente administradas que proporcionan Memorystore y Redis Ltd.
Opciones autoadministradas con los siguientes productos:
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 de forma exhaustiva 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 mediante 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. | Los casos en los que todos los datos caben en un nodo, un nodo puede entregar la capacidad de procesamiento de escritura y lectura, y no se requiere una 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 con rapidez. |
No | Nodo único | Nodo único |
Réplicas de alta disponibilidad o 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 entregar la capacidad de procesamiento de escritura, pero la capacidad de procesamiento de lectura no se puede entregar por un nodo o se requiere una alta disponibilidad. | Es compatible con Memorystore (completamente administrado) y Redis OSS (autoadministrado). Las arquitecturas de Redis Cluster ofrecen ajuste de escala automático, alta disponibilidad y fragmentación de datos, que son 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 independientes. De forma opcional, se pueden agregar réplicas de lectura y alta disponibilidad. | Casos en los que un nodo no puede entregar la capacidad de procesamiento de escritura y, de forma 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 independientes. De forma opcional, se pueden agregar réplicas de lectura y alta disponibilidad. Los proxies se implementan en cada nodo principal. | Casos en los que un nodo no puede entregar la capacidad de procesamiento de escritura y se requiere alta disponibilidad o replicación de lectura de forma opcional y en los que es demasiado costoso o conveniente que las aplicaciones cliente se refactoricen para usar la API de Redis Cluster o 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 completamente administrado para Redis por Google Cloud: un servicio de Redis completamente administrado, con alta disponibilidad y duradero administrado por 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:
Elige un modelo de administración de Redis
Puedes elegir entre uno de los siguientes modelos de administración:
Implementación completamente administrada. Descargas las operaciones de implementación y administración al proveedor de servicios. Elige este modelo cuando necesites enfocarte en compilar tu aplicación y descargar 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 operativa a escala existente, y asumir la administración y operación de Redis tiene sentido económico en tu organización.
Tienes una preferencia estratégica para la dependencia solo de IaaS.
Necesitas optimizaciones avanzadas.
Evalúa las opciones de implementación
Después de elegir el modelo de administración, evalúa las opciones de implementación disponibles.
Opciones completamente administradas
Para implementaciones completamente administradas, puedes usar Memorystore o Redis Enterprise Cloud.
Memorystore
Elige Memorystore si se cumple alguna de las siguientes condiciones:
- Si tienes preferencia por consolidar la compatibilidad con el software administrado con Google 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 solo disponibles en Memorystore (p. ej., reducir la escala).
Para obtener más información sobre Memorystore, consulta la documentación del producto de Memorystore.
Opciones de implementación
- Memorystore para Redis (independiente, con alta disponibilidad)
- Clúster de Memorystore para Redis (clúster, alta disponibilidad)
Redis Enterprise Cloud
Elige Redis Enterprise Cloud si se cumple alguna de las siguientes condiciones:
- Necesitas funciones específicas solo disponibles en Redis Enterprise Cloud (por ejemplo, escrituras de varias instancias principales activas-activas entre regiones con su ANS del 99.999%, caso de uso de RedisSearch).
- Necesitas el escalamiento de clúster para una aplicación que no es compatible con la API de clúster de Redis.
Para obtener más información sobre Redis Enterprise Cloud, consulta la documentación de Redis Cloud.
Opciones de adquisición y facturación
Opciones autoadministradas
Para 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 la refragmentación automática para escalar horizontalmente, Redis en Flash o Redis Enterprise Operator para Kubernetes.
- Tu equipo de operaciones no tiene las habilidades necesarias para manejar problemas complejos de Redis de forma interna, sin asistencia de terceros calificada.
- Prefieres la asistencia para empresas que proporciona Redis Ltd. y tu organización puede administrar los costos de licencia asociados.
Para obtener más información sobre Redis Enterprise Software, consulta la documentación de Redis Enterprise Software.
Opciones de implementación
- Software de Redis Enterprise autoadministrado en GKE o OpenShift, con uso opcional del operador de Redis Enterprise para Kubernetes
- Software Redis Enterprise autoadministrado en Compute Engine
Opciones de adquisición y facturación
- Redis Inc. factura la licencia y la asistencia, 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 tienes una preferencia por la personalización completa que no es posible.
- Tu equipo de operaciones tiene las habilidades necesarias para manejar problemas complejos de Redis de forma interna sin asistencia de terceros calificada.
- Deseas evitar los costos de licencia.
- Tienes muchos recursos internos de ajuste del kernel de Redis y Linux, o tu caso de uso no requiere ajuste.
Cuando implementas el software de código abierto de Redis autoadministrado, elige un objetivo de implementación según la estrategia de tu plataforma elegida. El software de código abierto de Redis se puede implementar en Compute Engine, OpenShift o Google Kubernetes Engine. GKE Autopilot puede reducir los esfuerzos de implementación y administración, pero puede ser más limitado en formas como la dificultad para reducir la escala.
Para obtener más información sobre el software de código abierto de Redis, consulta Redis.io.
Recursos adicionales
Comparación de funciones
En la siguiente tabla, se resumen las diferencias clave entre todas las opciones de implementación:
Características de la implementación | Opciones de implementación | |||
---|---|---|---|---|
Memorystore para Redis y Clúster de Redis | 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 | Redis Ltd. | Redis Ltd. | Autocompatible | |
Facturado por | Redis Ltd. o Google | Google factura la infraestructura. La licencia y la asistencia de Redis Ltd. se facturan por Redis Ltd. o 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 asistencia y licencia de software. Google Cloud factura el uso de infraestructura 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 los precios de software de Redis Enterprise. |
Sin tarifas de servicios ni licencias. Uso de infraestructura que factura Google Cloud. El cliente absorbe los costos de administración, incluidos la implementación, el ajuste, el personal y el tiempo de inactividad. |
SLA |
Para obtener más información, consulta el Acuerdo de Nivel de Servicio de Memorystore. |
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 | Sí | Prueba gratuita de 30 días | No aplicable |
Nivel de datos | No | Nivel automático | Nivel automático | No |
Múltiples nubes | No | Sí | Manualmente | Es posible, pero implica un gran esfuerzo |
Multirregión activo-activo | No | Sí | Manualmente | Es posible, pero implica un gran esfuerzo |
Módulos |
|
|
||
Cumplimiento | Compatibilidad integrada para los diferentes regímenes de cumplimiento. Consulta Ofertas de cumplimiento para obtener más información. | Compatibilidad integrada para los diferentes regímenes de cumplimiento. Consulta Centro de confianza de Redis para obtener más información. | Compatibilidad integrada para los diferentes regímenes de cumplimiento. Consulta Centro de confianza de Redis para obtener más información. | La administración manual de cumplimiento es obligatoria. Consulta Ofertas de cumplimiento para obtener más información. |
Escala las escrituras de clústeres | Escala horizontal y vertical | Escala horizontal y vertical | Escala horizontalmente. La reducción del escalamiento requiere un esfuerzo manual. | Es autoadministrado, requiere esfuerzo manual. |
Rebalanceo automático | Sí | Sí | Autoadministrado, requiere esfuerzo manual | Autoadministrado, requiere esfuerzo manual |
Agrega alta disponibilidad | Sin problemas, no requiere reimplementación | Sin problemas, no requiere reimplementación | No se requiere reimplementación, pero requiere un esfuerzo manual | Requiere un esfuerzo manual considerable; puede que se requiera una reimplementación según la arquitectura original |
Agrega réplicas de lectura | Sin problemas, no requiere reimplementación | Sin problemas, no requiere reimplementación | Requiere un esfuerzo manual considerable; puede que se requiera una reimplementación según la arquitectura original | Autoadministrado, requiere esfuerzo manual |
Migra a un clúster de Redis fragmentado por datos cuando superas la capacidad de procesamiento de escritura | Requiere reimplementación, pero se proporcionan herramientas para facilitar el esfuerzo. Se deben refactorizar los clientes para que sean compatibles con la API de Redis Cluster. | Sin problemas, no requiere reimplementación | Sin problemas, no requiere reimplementación | Autoadministrado, requiere esfuerzo manual |