En esta página, se muestra cómo crear los rangos de direcciones IP de la nube privada virtual (VPC) que AlloyDB para PostgreSQL requiere para el 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 nube privada virtual (VPC) que reside en el mismo proyectoGoogle 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 subyacente de Google Cloud . 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 separado. Para ello, debes combinar las redes de VPC de los dos proyectos con la VPC compartida.
Antes de comenzar
- El proyecto Google Cloud que usas debe estar habilitado para acceder a AlloyDB.
- Debes tener uno de estos roles de IAM en el proyecto Google Cloud que estás usando:
roles/alloydb.admin
(el rol de IAM predefinido de administrador de AlloyDB)roles/owner
(el rol de IAM básico 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 tu organización para solicitar acceso.
- Para crear una configuración de acceso a servicios privados, también debes tener estos permisos de IAM:
compute.networks.list
compute.addresses.create
compute.addresses.list
servicenetworking.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 a servicios privados.
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 Personalizar 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
16
o menos.Para especificar la longitud de un 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, por ejemplo,
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 Platform 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 y, luego, inicializar Google Cloud CLI, o bien usar Cloud Shell.
Usa el comando
gcloud config set
para establecer el proyecto predeterminado en el que residen AlloyDB y la red de VPC.gcloud config set project PROJECT_ID
Reemplaza
PROJECT_ID
por el ID del proyecto en el que residen AlloyDB y la red de VPC.Usa el comando
gcloud compute addresses create
para crear un rango de direcciones IP asignado.Para proporcionar suficiente espacio de direcciones para AlloyDB, recomendamos una longitud de prefijo de
16
o menos.Para especificar un rango de dirección y una longitud de prefijo (máscara de subred), usa las marcas
--addresses
y--prefix-length
. Por ejemplo, para asignar el bloque CIDR192.168.0.0/16
, especifica192.168.0.0
para la dirección y16
para 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_NETWORK
Reemplaza lo siguiente:
RESERVED_RANGE_NAME
: Es un nombre para el rango asignado, comomy-allocated-range
.DESCRIPTION
: Una descripción para el rango, comoallocated for my-service
VPC_NETWORK
es el nombre de la red de VPC, comomy-vpc-network
. En el caso de una red de VPC compartida, se debe establecer en 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
16
bits: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
default
puedan usar el acceso privado a los servicios a fin de 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=default
Usa el comando
gcloud services vpc-peerings connect
para crear una conexión privada.gcloud services vpc-peerings connect \ --service=servicenetworking.googleapis.com \ --ranges=RESERVED_RANGE_NAME \ --network=VPC_NETWORK
Reemplaza 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_NAME
Reemplaza
OPERATION_NAME
por el nombre de la operación que se mostró en el paso anterior.