Redes

En esta página se ofrece una descripción general de las redes de Memorystore para Redis.

Memorystore usa el emparejamiento entre redes de VPC para conectar tu red VPC con la red de servicios internos de Google. Memorystore para Redis ofrece diferentes arquitecturas de peering y funciones de red en función del modo de conexión que elijas al crear una instancia.

Hemos añadido la opción de seleccionar un modo de conexión para admitir opciones de red avanzadas en Google Cloud , como arquitecturas de VPC compartida y una mejor gestión de IP, al tiempo que se mantiene la compatibilidad con la arquitectura de peering actual de Memorystore.

Memorystore para Redis admite dos modos de conexión: DIRECT_PEERING y PRIVATE_SERVICE_ACCESS.

Independientemente del modo de conexión, Memorystore para Redis siempre usa direcciones IP internas para aprovisionar instancias de Redis.

Modos de conexión

Memorystore para Redis ofrece dos modos de conexión que admiten diferentes funciones:

  • Emparejamiento directo
  • Acceso a servicios privados

Para ver el modo de conexión de red de una instancia, ejecuta el siguiente comando y sustituye variables por los valores correspondientes:

gcloud redis instances describe instance-id --region=region
  • El valor connectMode muestra DIRECT_PEERING o PRIVATE_SERVICE_ACCESS.

Para obtener instrucciones sobre cómo elegir el modo de conexión durante la creación de la instancia, consulta Crear una instancia de Redis con una red de VPC compartida en un proyecto de servicio o Crear una instancia de Redis con un intervalo de direcciones IP centralizado.

Emparejamiento directo

Cuando se usa el modo de emparejamiento directo, Memorystore crea un emparejamiento de VPC entre la red de VPC del cliente y la red de VPC del proyecto gestionado por Google. El emparejamiento se crea automáticamente durante la creación de la instancia y no requiere que el usuario realice ningún paso adicional. Otros servicios no comparten el peering. Google CloudMemorystore para Redis usaba el modo de conexión de emparejamiento directo antes de que estuviera disponible el modo de conexión de acceso a servicios privados.

De forma predeterminada, las nuevas instancias se crean con el modo de conexión de emparejamiento directo. Los scripts que ya existan y en los que no se haya especificado el modo de conexión usarán el modo de peer directo de forma predeterminada.

Si vas a crear una instancia con el modo de conexión de peering directa y quieres usar la marca --reserved-ip-range gcloud para especificar un intervalo de direcciones IP, consulta las instrucciones para especificar un intervalo en Crear una instancia de Redis con un intervalo de direcciones IP específico. El tamaño de bloque mínimo requerido es /29 para las instancias sin réplicas de lectura. El tamaño de bloque mínimo requerido es /28 para las instancias que tienen réplicas de lectura.

Acceso a servicios privados

El acceso a servicios privados es otra forma de crear un emparejamiento entre tu red de VPC y la red de servicios de Google.

Al establecer una conexión de acceso de servicios privados para una red de VPC, se crea un emparejamiento entre esa red de VPC y la red de servicios de Google. Una vez que se haya establecido la conexión, puedes crear tu instancia con el modo de conexión de acceso de servicios privados.

El acceso a servicios privados te permite usar las siguientes funciones en tu instancia de Redis:

  • Aprovisiona una instancia de Memorystore para Redis en un proyecto de servicio mediante una VPC compartida.
  • Gestiona de forma centralizada los intervalos de direcciones IP en varios servicios de Google.
  • Conéctate desde fuentes externas a tu red de VPC a través de un túnel de VPN o Cloud Interconnect.

Una de las ventajas adicionales del acceso a servicios privados es que el mismo emparejamiento de redes se comparte entre varios servicios de Google, lo que limita el número de emparejamientos creados por los servicios de Google.

La marca --reserved-ip-range gcloud tiene un propósito diferente al crear instancias con el modo de conexión de acceso a servicios privados que al crear instancias con el modo de conexión de emparejamiento directo. Cuando crees instancias con el modo de acceso a servicios privados, si hay varios intervalos de direcciones IP asignados para el acceso a servicios privados, puedes usar la marca --reserved-ip-range de gcloud para elegir qué intervalos asignados quieres usar al crear tu instancia de Redis. Para obtener instrucciones sobre cómo hacerlo, consulta Crear una instancia de Redis con un intervalo de direcciones IP específico.

Elegir un modo de conexión

En la siguiente tabla se describen los diferentes casos prácticos y modos de conexión que debes usar.

Situación Modo de conexión admitido
Aprovisionar una instancia de Redis con una red de VPC compartida Solo acceso privado a servicios
Acceder a una instancia de Redis desde redes locales mediante una VPN Solo acceso privado a servicios
Usar la gestión centralizada de intervalos de IP en varios servicios de Google Solo acceso privado a servicios
Aprovisionar una instancia de Redis mediante una red de VPC dedicada Acceso privado a servicios (recomendado) o emparejamiento directo

Cambiar los modos de conexión de las instancias

No puedes cambiar el modo de conexión de una instancia que ya se ha creado. Para cambiar el modo de conexión, debes volver a crear la instancia con el nuevo modo de conexión. Esto provoca un cambio en la dirección IP de la instancia.

Por ejemplo, si tienes una instancia creada antes de que estuviera disponible el modo de conexión de acceso de servicios privados, la propiedad del modo de conexión de esa instancia se define como emparejamiento directo. Si vuelves a crear la instancia con el modo de conexión de acceso a servicios privados, la dirección IP de la instancia cambiará.

Además, Memorystore para Redis permite tener instancias de Redis que usen acceso a servicios privados e instancias que usen emparejamiento directo en el mismo proyecto y en la misma red.

Acceso local con acceso privado a servicios

Puedes conectarte desde un cliente de una red local si esta está conectada a la red VPC a la que está conectada tu instancia de Memorystore para Redis. Para permitir conexiones desde una red local, haz lo siguiente:

  1. Asegúrate de que tu red de VPC compartida esté conectada a tu red local mediante una de las siguientes opciones:
  2. Asegúrate de que las sesiones de BGP de los routers de Cloud que gestionan tus túneles de Cloud VPN y tus vinculaciones de Cloud Interconnect (VLANs) hayan recibido prefijos específicos (destinos) de tu red on-premise. Las rutas predeterminadas (destino 0.0.0.0/0) no se pueden importar a la red VPC de Memorystore para Redis porque esa red tiene su propia ruta predeterminada local. Las rutas locales de un destino se usan siempre, incluso cuando el emparejamiento de Memorystore para Redis se configura para importar rutas personalizadas de tu red de VPC.
  3. Identifique el peering producido por la conexión de servicios privados. El nombre del peering que usa Memorystore para Redis es servicenetworking-googleapis-com.
  4. Actualiza la conexión de emparejamiento para intercambiar rutas personalizadas configurando las marcas --import-custom-routes y --export-custom-routes.
  5. Identifica el intervalo asignado que usa la conexión de servicios privados.
  6. Crea una ruta anunciada personalizada de Cloud Router para el intervalo asignado en los routers de Cloud que gestionan las sesiones BGP de tus túneles VPN de Cloud o vinculaciones de Cloud Interconnect (VLANs).

Comunicar los requisitos de red

Normalmente, el equipo de redes o el administrador de la red de tu organización se encarga de configurar una conexión de acceso de servicios privados. De esta forma, el equipo de redes puede asegurarse de que no se solapen las direcciones o los intervalos de IP que se usan para otros recursos deGoogle Cloud , lo que puede provocar problemas de conectividad.

Te recomendamos que te pongas en contacto con el equipo de red o de seguridad de tu organización para que configure la conexión de servicio privada, sobre todo si se produce un error durante el proceso de configuración. Cuando te pongas en contacto con tu equipo de redes, envíales la siguiente información:

The Memorystore for Redis instance cannot be created due to the following
error:

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

Before an instance can be created, a private service access connection needs to
be established for network <project name: network>. Please refer to the
following Memorystore documentation links for more information on how to create
this connection:

* Networking.
* Establishing a private services access connection.
* Verifying a private services access connection.

Requisitos de red de las instancias con réplicas de lectura habilitadas

Para usar la función de réplicas de lectura de Memorystore para Redis, tu instancia debe tener un intervalo de direcciones IP CIDR de /28 o superior. Se admiten tamaños de intervalo más grandes, como /27 y /26. No se admiten intervalos más pequeños, como /29, en esta función.

Permisos necesarios para establecer una conexión de acceso de servicios privados

Para gestionar una conexión de acceso de servicios privados, el usuario debe tener los siguientes roles de gestión de identidades y accesos. Si no tienes los permisos necesarios, puedes recibir errores de permisos insuficientes. Para ver una lista de errores de red habituales, consulta Situaciones de error de red.

Permisos de interfaz de usuario

Permisos necesarios para ver las redes de proyectos locales y de host en la interfaz de usuario:
  • compute.networks.list
    • Se necesita tanto en el proyecto local como en el de host.
Permiso necesario para comprobar la conexión de acceso de servicios privados en la interfaz de usuario:
  • compute.networks.list
    • Se necesita tanto en el proyecto local como en el de host.
Permiso necesario para crear una conexión de acceso de servicios privados en la interfaz de usuario:
  • serviceusage.services.enable
    • Necesario para habilitar la API Service Networking.
  • compute.addresses.create
  • compute.addresses.list
  • servicenetworking.services.addPeering

Permisos de gcloud

Permisos de gcloud necesarios para comprobar la conexión de acceso de servicios privados
  • compute.networks.list
    • Se necesita tanto en el proyecto local como en el de host.
Permisos de gcloud necesarios para crear una conexión de acceso de servicios privados
  • serviceusage.services.enable
    • Necesario para habilitar la API Service Networking.
  • compute.addresses.create
  • compute.addresses.list
  • servicenetworking.services.addPeering

Redes admitidas e intervalos de IP de cliente

Memorystore para Redis admite direcciones IP privadas RFC 1918 y algunas direcciones IP privadas que no son RFC 1918.

  • En Intervalos válidos se muestra una lista de intervalos aceptables para Memorystore para Redis. Sin embargo, Memorystore para Redis no admite las direcciones IP públicas usadas de forma privada (PUPI) que se indican en la tabla de intervalos válidos que se muestra en este enlace.
  • Intervalos restringidos: muestra una lista de intervalos de direcciones IP que no se pueden usar para crear instancias de Memorystore para Redis.
  • Si una instancia de Memorystore usa el modo de conexión de acceso a servicios privados, los clientes de los intervalos de PUPI no podrán conectarse a la instancia de Memorystore.

Memorystore también admite redes de VPC, excepto redes antiguas, acceso local y redes de VPC compartidas.