Para resolver una escasez de direcciones IP cuando creas un clúster o una instancia de AlloyDB para PostgreSQL en una región que usa el acceso privado a servicios, puedes aumentar el espacio de direcciones IP asignado en tu red de nube privada virtual (VPC).
Cuando creas un clúster o una instancia de AlloyDB en una región que
aún no tiene clústeres ni instancias, AlloyDB crea una
subred /24 en esa región. Si el espacio de direcciones IP existente disponible para
AlloyDB no es lo suficientemente grande como para crear la subred, el intento de
crear el clúster o la instancia fallará hasta que asignes espacio de direcciones IP
adicional.
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 aumentar el rango de direcciones IP, también debes tener estos permisos de Identity and Access Management (IAM):
compute.networks.listcompute.addresses.createcompute.addresses.listservicenetworking.services.addPeering
Procedimiento
Para aumentar el espacio de direcciones IP de AlloyDB, realiza dos operaciones:
- Crea un rango de direcciones IP asignado adicional en tu red de VPC.
- Agrega el rango de direcciones adicional a la conexión de acceso privado a servicios existente en tu red de VPC.
Console
Ve a la página Redes de VPC en la consola de Google Cloud .
Selecciona el proyecto en el que reside tu red de VPC.
Selecciona la red de VPC que contiene tu conexión de acceso privado a servicios existente.
Selecciona la pestaña Acceso privado a servicios.
En la pestaña Acceso privado a servicios, selecciona la pestaña Rangos de IP asignados para servicios.
Haz clic en Asigna rangos de IP.
Ingresa un Nombre y una Descripción para el rango asignado.
Especifica un Rango de IP para la asignación:
- Para especificar un rango de direcciones IP, selecciona Personalizado y luego ingresa un bloque CIDR, como
192.168.0.0/16. - Para especificar la longitud de un prefijo y permitir que Google seleccione un rango disponible, selecciona Automático y luego ingresa la longitud de un prefijo, como
16.
- Para especificar un rango de direcciones IP, selecciona Personalizado y luego ingresa un bloque CIDR, como
Haz clic en Asignar para crear un rango asignado.
En la pestaña Acceso privado a servicios, selecciona la pestaña Conexiones privadas a los servicios.
Haz clic en servicenetworking-googleapis-com.
En el cuadro de diálogo Actualiza una conexión privada, haz clic en el cuadro Asignación asignada y, luego, selecciona el rango de IP asignado adicional que creaste antes.
Haz clic en Actualizar para actualizar 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 set projectpara establecer el proyecto predeterminado en el que reside tu red de VPC:gcloud config set project PROJECT_ID
Reemplaza
PROJECT_IDpor el ID del proyecto en el que reside tu red de VPC.Usa el comando
gcloud compute addresses createpara crear un rango de direcciones IP asignado adicional.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_NETWORKPara 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 de16bits:gcloud compute addresses create RESERVED_RANGE_NAME \ --global \ --purpose=VPC_PEERING \ --prefix-length=16 \ --description="DESCRIPTION" \ --network=VPC_NETWORK
Reemplaza los siguientes marcadores de posición por valores relevantes:
RESERVED_RANGE_NAMEes un nombre para el rango asignado, comoadditional-alloydb-range.DESCRIPTIONuna descripción para el rango, comoallocated to extend AlloyDB range.VPC_NETWORKes el nombre de la red de VPC, comomy-vpc-network.
En el siguiente ejemplo, se crea un rango de IP asignado adicional en la red de VPC
default:gcloud compute addresses create additional-alloydb-range \ --global \ --purpose=VPC_PEERING \ --prefix-length=16 \ --description="allocated to extend AlloyDB range" \ --network=defaultUsa el comando
gcloud services vpc-peerings listpara obtener una lista de los rangos de IP que ya se asignaron a tu conexión de acceso privado a servicios:gcloud services vpc-peerings list \ --service=servicenetworking.googleapis.com \ --network=VPC_NETWORKReemplaza
VPC_NETWORKpor el nombre de tu red de VPC, comomy-vpc-network.La lista de rangos de IP que ya se asignaron a tu conexión de acceso a servicios privados aparece después de
reservedPeeringRanges.Usa el comando
gcloud services vpc-peerings updatepara agregar el rango de direcciones adicional a la conexión de acceso privado a servicios:gcloud services vpc-peerings update \ --service=servicenetworking.googleapis.com \ --ranges=RESERVED_RANGE_NAME,EXISTING_RANGES_LIST \ --network=VPC_NETWORKReemplaza los siguientes marcadores de posición por valores relevantes:
RESERVED_RANGE_NAME: el nombre del rango de direcciones IP asignado adicional que creaste.EXISTING_RANGES_LIST: Es una lista separada por comas de los rangos de direcciones IP que ya se asignaron a la conexión de acceso privado a servicios.VPC_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 OPERATION_NAME
Reemplaza
OPERATION_NAMEpor el nombre de la operación que se mostró en el paso anterior.