En esta página, se explica cómo configurar un extremo de Private Service Connect para tu instancia de clúster de Memorystore para Redis.
Antes de comenzar
- Tener una instancia existente de clúster de Memorystore para Redis.
Habilita la API de Compute Engine en tu proyecto:
Compute EngineAsegúrate de que las reglas de firewall de salida estén configuradas para permitir el tráfico a la dirección IP del extremo de Private Service Connect. La regla de firewall implícita de permiso de salida permite la salida a cualquier dirección IP de destino.
Otorga los siguientes roles y permisos de Identity and Access Management (IAM):
- Rol de Memorystore redis.admin
- compute.networks.use
- compute.addresses.create
- compute.addresses.use
- compute.forwardingRules.create
- compute.forwardingRules.pscCreate
- servicedirectory.namespaces.create
- servicedirectory.services.create
La función predefinida de IAM
roles/redis.admin
incluye los permisos que necesitas para configurar un extremo de Private Service Connect.
Crear extremo
Recupera la dirección del ID del adjunto de servicio de tu instancia de clústeres de Memorystore para Redis y reemplaza VARIABLES por los valores adecuados.
gcloud alpha redis clusters describe INSTANCE_ID --region=REGION
Toma nota del ID del adjunto de servicio. El ID del adjunto de servicio usa el siguiente formato:
projects/PROJECT_NUMBER/regions/REGION/serviceAttachments/xxxxxxxxxxxxxxxx-psc-service-attachment
Reserva una dirección IP para asignarla al extremo.
gcloud compute addresses create ADDRESS_NAME \ --region=REGION \ --subnet=SUBNET
Aquí:
- ADDRESS_NAME es el nombre que se asignará a la dirección IP reservada.
- REGION es la región de la dirección IP del extremo. Debe ser la misma región en la que se encuentra la instancia de clúster de Memorystore para Redis.
- SUBNET es el nombre de la subred de la dirección IP del extremo.
Puedes usar el valor
default
o una subred que elijas.
Por ejemplo:
gcloud compute addresses create cluster-reserved-address \ --region=us-central1 \ --subnet=default
Crea una regla de reenvío para conectar el extremo al adjunto de servicios del clúster de Memorystore para Redis.
gcloud compute forwarding-rules create ENDPOINT_NAME \ --region=REGION \ --network=NETWORK_NAME \ --address=ADDRESS_NAME \ --target-service-attachment=SERVICE_ATTACHMENT \ [ --service-directory-registration=NAMESPACE_URI ]
Donde:
- ENDPOINT_NAME es el nombre que se asignará al extremo.
- REGION es la región del extremo. Debe ser la misma región en la que se encuentra la instancia de clúster de Memorystore para Redis.
- NETWORK_NAME es el nombre de la red de VPC para el extremo.
Puedes usar el valor
default
o una red de tu elección. - ADDRESS_NAME es el nombre de la dirección que designaste en el paso 2.
- SERVICE_ATTACHMENT es el URI del adjunto del servicio del productor de servicios. Por ejemplo:
projects/PROJECT_NUMBER/regions/REGION/serviceAttachments/xxxxxxxxxxxxxxxx-psc-service-attachment
NAMESPACE_URI (opcional). Este es el URI del espacio de nombres del directorio de servicios que deseas usar. NAMESPACE_URI debe hacer referencia al mismo proyecto y región en los que estás creando el extremo de Private Service Connect. Si especificas un espacio de nombres que no existe, se creará el espacio de nombres.
NAMESPACE_URI tiene el siguiente formato:
projects/PROJECT_NAME/locations/REGION/namespaces/NAMESPACE
Si omites la marca
--service-directory-registration
, se usa el espacio de nombres predeterminado degoog-psc-default
.
Por ejemplo:
gcloud compute forwarding-rules create my-cluster-endpoint \ --region=us-central1 \ --network=default \ --address=cluster-reserved-address \ --target-service-attachment=projects/PROJECT_NUMBER/regions/us-central1/serviceAttachments/xxxxxxxxxxxxxxxx-psc-service-attachment \
Ahora estás listo para conectarte a la instancia de clúster de Memorystore para Redis mediante la dirección IP que reservaste en el paso 2 de esta guía.