Para permitir que tus instancias de AlloyDB para PostgreSQL se comuniquen de forma privada con los recursos de tu red de nube privada virtual (VPC) y con los servicios administrados por Google, puedes asignar rangos de direcciones IP de VPC y crear una conexión de acceso privado a servicios. Para obtener una descripción general de cómo AlloyDB usa el acceso privado a servicios para permitir que sus recursos internos se comuniquen entre sí, consulta Acerca del acceso privado a servicios.
Para crear una configuración de acceso privado a servicios en una red de VPC que reside en el mismo proyecto deGoogle Cloud que tu clúster de AlloyDB, debes realizar dos operaciones:
Crea un rango de direcciones IP asignado en la red de VPC.
Crea una conexión privada entre la red de VPC y la red de VPC de Google Cloud subyacente. También puedes configurar el acceso privado a servicios para conectar tu clúster de AlloyDB a los recursos que residen en un proyecto deGoogle Cloud independiente. Para ello, debes combinar las redes de VPC de los dos proyectos con la VPC compartida.
Antes de comenzar
- El proyecto de Google Cloud que usas debe haber sido habilitado para acceder a AlloyDB.
- Debes tener uno de estos roles de IAM en el proyecto de Google Cloud que estás usando:
roles/alloydb.admin(el rol de IAM predefinido de administrador de AlloyDB)roles/owner(el rol básico de IAM de propietario)roles/editor(el rol básico de IAM de editor)
Si no tienes ninguno de estos roles, comunícate con el administrador de la organización para solicitar acceso.
- Para crear una configuración de acceso privado a servicios, también debes tener estos
permisos de IAM:
compute.networks.listcompute.addresses.createcompute.addresses.listservicenetworking.services.addPeering
Crea rangos de direcciones IP de VPC
Console
Ir a la página de redes de VPC
Selecciona el proyecto en el que residen AlloyDB y la red de VPC.
Haz clic en el nombre de la red de VPC que deseas usar para el acceso privado a servicios.
En la página Detalles de la red de VPC, desplázate por la lista de pestañas hasta la pestaña Acceso privado a servicios y, luego, haz clic en ella.
En la pestaña Acceso privado a servicios, haz clic en la pestaña Rangos de IP asignados para servicios.
Haz clic en Asigna rangos de IP.
En los campos Nombre y Descripción, ingresa un nombre y una descripción para el rango asignado.
Especifica un valor de rango de IP para la asignación:
Para especificar un rango de direcciones IP, haz clic en Personalizado y, luego, ingresa un bloque CIDR, como
192.168.0.0/16.Para proporcionar suficiente espacio de direcciones para AlloyDB, recomendamos una longitud de prefijo de
16o menos.Para especificar una longitud de prefijo y permitir que Google seleccione un rango disponible, sigue estos pasos:
Haz clic en Automática.
Ingresa una longitud de prefijo como un número simple, como
16.
Haz clic en Asignar para crear un rango asignado.
En la pestaña Acceso privado a servicios, haz clic en la pestaña Conexiones privadas a los servicios.
Haz clic en Crear una conexión para crear una conexión privada entre tu red y un productor de servicios.
Asegúrate de que Google Cloud sea el Productor de servicios conectados.
En Asignación designada, selecciona el rango de IP asignado que creaste antes.
Haz clic en Conectar para crear la conexión.
gcloud
Para usar gcloud CLI, puedes instalar e inicializar Google Cloud CLI, o bien puedes usar Cloud Shell.
Usa el comando
gcloud config setpara establecer el proyecto predeterminado en el que residen AlloyDB y la red de VPC.gcloud config set project PROJECT_IDReemplaza
PROJECT_IDpor el ID del proyecto en el que residen AlloyDB y la red de VPC.Usa el comando
gcloud compute addresses createpara crear un rango de direcciones IP asignado.Para proporcionar suficiente espacio de direcciones para AlloyDB, te recomendamos una longitud de prefijo de
16o menos.Para especificar un rango de dirección y una longitud de prefijo (máscara de subred), usa las marcas
--addressesy--prefix-length. Por ejemplo, para asignar el bloque CIDR192.168.0.0/16, especifica192.168.0.0como la dirección y16como la longitud de prefijo.gcloud compute addresses create RESERVED_RANGE_NAME \ --global \ --purpose=VPC_PEERING \ --addresses=192.168.0.0 \ --prefix-length=16 \ --description="DESCRIPTION" \ --network=VPC_NETWORKReemplaza lo siguiente:
RESERVED_RANGE_NAME: Es un nombre para el rango asignado, comomy-allocated-range.DESCRIPTION: Es una descripción para el rango, comoallocated for my-service.VPC_NETWORKes el nombre de la red de VPC, comomy-vpc-network. En el caso de la red de VPC compartida, establece la ruta de acceso completamente calificada de la red de VPC, por ejemplo,projects/cymbal-project/global/networks/shared-vpc-network.
Para especificar solo una longitud de prefijo (máscara de subred), usa la marca
--prefix-length. Cuando omites el rango de direcciones, Google Cloud selecciona automáticamente un rango de direcciones sin usar en tu red de VPC.En el siguiente ejemplo, se selecciona un rango de direcciones IP sin usar con una longitud de prefijo de
16bits:gcloud compute addresses create RESERVED_RANGE_NAME \ --global \ --purpose=VPC_PEERING \ --prefix-length=16 \ --description="DESCRIPTION" \ --network=VPC_NETWORK
En el siguiente ejemplo, se crea una conexión privada a Google para que las instancias de VM en la red de VPC
defaultpuedan usar el acceso privado a los servicios para llegar a los servicios de Google que la admiten.gcloud compute addresses create google-managed-services-default \ --global \ --purpose=VPC_PEERING \ --prefix-length=16 \ --description="peering range for Google" \ --network=defaultUsa el comando
gcloud services vpc-peerings connectpara crear una conexión privada.gcloud services vpc-peerings connect \ --service=servicenetworking.googleapis.com \ --ranges=RESERVED_RANGE_NAME \ --network=VPC_NETWORKReemplaza lo siguiente:
RESERVED_RANGE_NAME: el nombre del rango de direcciones IP asignado que creasteVPC_NETWORK: Es el nombre de tu red de VPC.
El comando inicia una operación de larga duración y, luego, muestra un nombre de operación.
Verifica si la operación se realizó correctamente.
gcloud services vpc-peerings operations describe \ --name=OPERATION_NAMEReemplaza
OPERATION_NAMEpor el nombre de la operación que se mostró en el paso anterior.