Configurar acceso privado a servicios
El acceso a servicios privados es una conexión privada entre tu red VPC y una red propiedad de Google o de un tercero. Google o los terceros que ofrecen servicios también se conocen como productores de servicios. La conexión privada permite que las instancias de VM de tu red de VPC y los servicios a los que accedas se comuniquen exclusivamente mediante direcciones IP internas. Las instancias de VM no necesitan acceso a Internet ni direcciones IP externas para acceder a los servicios que están disponibles a través del acceso a servicios privados.
Para usar el acceso a servicios privados, haz lo siguiente:
-
Un intervalo asignado reserva un intervalo de direcciones IP para que lo use el productor, lo que evita que se solapen las direcciones IP entre las redes del consumidor y del productor del servicio.
-
La conexión privada usa el intercambio de tráfico entre redes de VPC para establecer la conectividad entre las redes del consumidor y del productor de servicios.
Para obtener información sobre otras opciones de acceso privado, consulta el artículo Opciones de acceso privado a servicios.
Antes de empezar
Para establecer una conexión privada, debes cumplir los siguientes requisitos previos:
- Lee la descripción general del acceso a servicios privados, incluidos los servicios admitidos, la accesibilidad de las instancias de servicio y las limitaciones.
- Crea un Google Cloud proyecto o elige uno que ya tengas. Para saber cómo crear un Google Cloud proyecto, consulta el artículo Crear y gestionar proyectos.
- Habilita la API Service Networking en tu proyecto. La API es necesaria para crear una conexión privada.
- Crea o elige una red de VPC que se usará para conectarte a la red del productor de servicios. Las instancias de VM deben usar esta red de VPC para conectarse a los servicios a través de una conexión privada.
- Instala Google Cloud CLI si quieres ejecutar los ejemplos de línea de comandos de gcloud CLI que se incluyen en esta guía.
Permisos
Los propietarios de proyectos y los miembros de gestión de identidades y accesos con el rol Administrador de red de Compute (roles/compute.networkAdmin
) pueden crear intervalos de direcciones IP asignados y gestionar conexiones privadas.
Para obtener más información sobre los roles de Compute Engine, consulta Roles y permisos de gestión de identidades y accesos de Compute Engine.
Elige un intervalo de direcciones IP para el intervalo asignado
Al crear un intervalo asignado, se reserva un intervalo de direcciones IP para que lo use el productor del servicio. Ten en cuenta lo siguiente al elegir un intervalo para tu asignación:
Consulta la documentación del productor del servicio para ver si tiene algún requisito o recomendación sobre el tamaño del intervalo asignado.
En el caso de los servicios de Google, el tamaño mínimo es un bloque
/24
, pero se recomienda usar un bloque/16
.Selecciona un intervalo asignado que esté completamente separado de los intervalos de subred actuales y futuros, incluidos los intervalos de subred de las redes conectadas mediante el emparejamiento de redes de VPC y los intervalos de subred de los radios de VPC conectados al mismo hub de Network Connectivity Center.
Seleccione un intervalo que no coincida exactamente con los destinos de ninguna ruta estática o dinámica personalizada, ni los contenga.
Cuando un productor de servicios selecciona una parte sin usar de un intervalo asignado para usarla como candidata para nuevos recursos, excluye todos los destinos de ruta personalizados que coincidan exactamente con el intervalo asignado o que se incluyan en él. Cuando una red VPC contiene un intervalo asignado y rutas personalizadas con destinos que coinciden con el intervalo asignado o se ajustan a él, se reduce la parte utilizable del intervalo asignado. Esta configuración puede provocar errores inesperados de asignación agotada.
Por ejemplo, si crea un intervalo asignado para
10.0.0.0/16
, se aplicará lo siguiente:Si existe una ruta personalizada con un destino para
10.0.0.0/16
o se crea más adelante, se considera que todo el intervalo de10.0.0.0/16
no está disponible. Si un productor de servicios intenta usar el intervalo asignado,Google Cloud devuelve un error de asignación agotada.Si existe o se crea más adelante una ruta personalizada con el destino
10.0.0.0/20
, la parte10.0.0.0/20
del intervalo10.0.0.0/16
asignado se considera no disponible. Si un productor de servicios intenta usar el intervalo asignado y la parte disponible de tu intervalo asignado no es suficiente para un productor de servicios, Google Cloud devuelve un error de asignación agotada.Si existe una ruta personalizada con un destino para
10.0.0.0/8
o se crea más adelante, esto no afectará a la disponibilidad del intervalo asignado10.0.0.0/16
.
Selecciona un intervalo que no entre en conflicto con tus otras necesidades de direcciones IP:
- Algunos productos de Google y de terceros usan
172.17.0.0/16
para enrutar dentro del sistema operativo invitado. Por ejemplo, la red de puente de Docker predeterminada usa este intervalo. Si dependes de un producto que usa172.17.0.0/16
, no uses172.17.0.0/16
en un intervalo asignado para el acceso a servicios privados. - Si usas una red de VPC en modo automático, no puedes crear un intervalo asignado que coincida con
10.128.0.0/9
o se solape con él. Google usa el intervalo10.128.0.0/9
para las subredes creadas automáticamente, incluidas las de regiones futuras.
- Algunos productos de Google y de terceros usan
Selecciona un bloque CIDR que sea lo suficientemente grande como para satisfacer tus necesidades actuales y futuras.
Si más adelante detecta que el intervalo no tiene el tamaño suficiente, amplíelo si es posible. Aunque puedes asignar varias asignaciones a un solo productor de servicios, Google aplica una cuota al número de intervalos de direcciones IP que puedes asignar, pero no al tamaño (máscara de red) de cada intervalo.
Crear un intervalo asignado
En los siguientes pasos se describe cómo crear un intervalo de direcciones IP asignadas.
Cuando un servicio de Google asigna un intervalo en tu nombre, el servicio usa el siguiente formato para nombrar la asignación: google-managed-services-CONSUMER_NETWORK_NAME
. Si esta asignación existe, los servicios de Google usan la que ya hay en lugar de crear otra. Puedes usar la misma convención de nomenclatura que usa Google para indicar a otros usuarios o servicios de Google que ya existe una asignación para Google.
Consola
En la Google Cloud consola, ve a la página Redes de VPC.
Selecciona la red de VPC que se conectará a un productor de servicios.
Seleccione la pestaña Acceso a servicios privados.
En la pestaña Acceso a servicios privados, seleccione la pestaña Intervalos de IP asignados a servicios.
Haz clic en Asignar intervalo de IPs.
Escriba un Nombre y una Descripción para el intervalo asignado.
Configura el intervalo de direcciones IP para la asignación:
- Para especificar un intervalo de direcciones IP concreto, selecciona Personalizado y, a continuación, introduce un bloque CIDR, como
192.168.0.0/16
. - Para que Google seleccione un intervalo disponible, selecciona Automático y, a continuación, introduce la longitud del prefijo, como
16
.
- Para especificar un intervalo de direcciones IP concreto, selecciona Personalizado y, a continuación, introduce un bloque CIDR, como
Haga clic en Asignar para crear el intervalo asignado.
gcloud
Para crear un intervalo asignado en tu red VPC, usa el gcloud compute addresses create
comando.
Para especificar un intervalo de direcciones 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 del 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
- Para especificar solo la longitud del prefijo (máscara de subred), usa la marca
prefix-length
. Si omites el intervalo de direcciones,Google Cloud seleccionará automáticamente un intervalo de direcciones sin usar en tu red de VPC. En el siguiente ejemplo se selecciona un intervalo de direcciones IP sin usar con una longitud de prefijo de16
bits.
gcloud compute addresses create RESERVED_RANGE_NAME \ --global \ --purpose=VPC_PEERING \ --prefix-length=16 \ --description="DESCRIPTION" \ --network=VPC_NETWORK
Haz los cambios siguientes:
RESERVED_RANGE_NAME
: un nombre para el intervalo asignado, comomy-allocated-range
.DESCRIPTION
: una descripción del intervalo, comoallocated for my-service
.VPC_NETWORK
: el nombre de tu red de VPC, comomy-vpc-network
.
En el siguiente ejemplo, se crea una conexión privada a Google para que las instancias de VM de la red de VPC
my-network
puedan usar el acceso a servicios privados para acceder a los servicios de Google que lo admitan.gcloud compute addresses create google-managed-services-my-network \ --global \ --purpose=VPC_PEERING \ --prefix-length=16 \ --description="peering range for Google" \ --network=my-network
- Para especificar solo la longitud del prefijo (máscara de subred), usa la marca
Terraform
Para crear un intervalo asignado en tu red VPC, usa el recurso google_compute_global_address
.
Para saber cómo aplicar o quitar una configuración de Terraform, consulta Comandos básicos de Terraform.
Si ves un error sobre el permiso compute.globalAddresses.list
del proyecto, consulta Permisos de la cuenta de servicio.
Lista de intervalos de direcciones IP asignados
Para ver una lista de los intervalos de direcciones IP asignados, usa el comando gcloud compute addresses list
.
gcloud compute addresses list --global --filter="purpose=VPC_PEERING"
Crear conexión privada
Después de crear un intervalo asignado, puedes crear una conexión privada con un productor de servicios. La conexión privada establece una conexión de emparejamiento entre redes VPC entre tu red de VPC y la red del productor de servicios.
Ten en cuenta lo siguiente al crear una conexión privada:
- Si un único productor de servicios ofrece varios servicios, solo necesitas una conexión privada para todos los servicios del productor.
- Si un único productor de servicios ofrece varios servicios y quieres controlar qué intervalos asignados se usan para los diferentes recursos de servicio, puedes usar varias redes de VPC, cada una con sus propias conexiones privadas. Esta configuración te permite seleccionar una red concreta al crear un recurso de servicio gestionado para asegurarte de que los intervalos asignados asociados se usen en el nuevo recurso.
No reutilice el mismo intervalo asignado para varios productores de servicios. Si te conectas a varios productores de servicios, usa un intervalo asignado único para cada uno. Si usas diferentes intervalos asignados, evitarás que se solapen las direcciones IP y podrás gestionar los ajustes de red, como las rutas y las reglas de cortafuegos, de cada productor de servicios.
Consola
En la Google Cloud consola, ve a la página Redes de VPC.
Selecciona la red de VPC que se conectará a un productor de servicios.
Seleccione la pestaña Acceso a servicios privados.
En la pestaña Acceso a servicios privados, seleccione la pestaña Conexiones privadas a servicios.
Haz clic en Crear conexión para crear una conexión privada entre tu red y un productor de servicios.
En Asignación asignada, selecciona uno o varios intervalos asignados que no estén usando otros productores de servicios.
Haz clic en Conectar para crear la conexión.
gcloud
Usa el comando
gcloud services vpc-peerings connect
.gcloud services vpc-peerings connect \ --service=servicenetworking.googleapis.com \ --ranges=RESERVED_RANGE_NAME \ --network=VPC_NETWORK
Haz los cambios siguientes:
RESERVED_RANGE_NAME
: el nombre de uno o varios intervalos asignados.VPC_NETWORK
: el nombre de tu red de VPC.
El comando inicia una operación de larga duración y devuelve un nombre de operación.
Para comprobar si la operación se ha realizado correctamente, usa el comando
gcloud services vpc-peerings operations describe
.gcloud services vpc-peerings operations describe \ --name=OPERATION_NAME
Sustituye
OPERATION_NAME
por el nombre de la operación que se devolvió en el paso anterior.
Puedes especificar más de un intervalo asignado al crear una conexión privada. Por ejemplo, si se ha agotado un intervalo, puedes asignar intervalos adicionales. El servicio usa las direcciones IP de todos los intervalos proporcionados en el orden que hayas especificado.
Terraform
Para crear una conexión privada, usa el recurso google_service_networking_connection
.
Mostrar conexiones privadas
Después de crear una conexión privada, puedes mostrarla para comprobar que existe. La lista también muestra los intervalos asignados que están asociados a cada conexión. Por ejemplo, si no recuerdas qué intervalo asignaste a una conexión, consulta la lista para averiguarlo.
Consola
En la Google Cloud consola, ve a la página Redes de VPC.
Selecciona la red de VPC que contiene las conexiones.
Seleccione la pestaña Acceso a servicios privados.
En la pestaña Acceso a servicios privados, selecciona la pestaña Conexiones privadas a servicios para ver todas las conexiones privadas de la red.
gcloud
Usa el comando gcloud services vpc-peerings list
.
gcloud services vpc-peerings list \ --network=VPC_NETWORK
Sustituye VPC_NETWORK
por el nombre de tu red VPC.
Modificar una conexión privada
No puedes modificar un intervalo asignado, pero sí puedes actualizar una conexión privada para añadir o quitar intervalos asignados sin interrumpir el tráfico.
Añadir intervalos: a medida que aumente el volumen, puede añadir o sustituir un intervalo asignado si está a punto de agotar el que ya tiene. Si añades otro intervalo asignado a una conexión privada, el productor de servicios tendrá más direcciones IP disponibles al crear recursos de servicio para cualquier servicio que proporcione. No puedes reservar un intervalo asignado específico en una conexión privada para que lo use un servicio concreto.
Para obtener más información sobre cómo añadir o sustituir intervalos, consulta el artículo sobre el agotamiento de intervalos de direcciones IP.
Quitar intervalos: cuando quitas un intervalo de una conexión privada, se aplica lo siguiente:
El intervalo asignado ya no está asociado a la conexión privada, pero no se ha eliminado.
- Si un intervalo eliminado ya no se usa, puedes eliminar la asignación.
Es posible que los recursos de productores de servicios sigan usando el intervalo eliminado.
El acceso a servicios privados no usa los intervalos eliminados para asignar nuevas subredes.
Consola
En la Google Cloud consola, ve a la página Redes de VPC.
Selecciona la red de VPC que contiene las conexiones.
Seleccione la pestaña Acceso a servicios privados.
En la pestaña Acceso a servicios privados, selecciona la pestaña Conexiones privadas a servicios para ver todas las conexiones privadas de la red.
Haga clic en el nombre de una conexión de la lista.
En la lista Asignación asignada, selecciona los intervalos asignados que quieras asociar a la conexión privada. Desmarque las casillas de los intervalos asignados que quiera quitar de la conexión privada.
Haz clic en Aceptar.
gcloud
Para añadir o quitar intervalos de direcciones IP asignadas a una conexión privada, usa el comando gcloud services vpc-peerings update
.
gcloud services vpc-peerings update \ --service=servicenetworking.googleapis.com \ --ranges=RESERVED_RANGE_NAME \ --network=VPC_NETWORK \ [--force]
Haz los cambios siguientes:
RESERVED_RANGE_NAME
: una lista con uno o varios nombres de intervalos asignados que se asignarán a la conexión privada.RESERVED_RANGE_NAME
sustituye a la lista anterior de intervalos asignados. Si omites un intervalo que se había asociado previamente a esta conexión privada, se quitará de la conexión. Debes usar la marca--force
para quitar un intervalo.VPC_NETWORK
: el nombre de tu red de VPC.
Eliminar un intervalo de direcciones IP asignado
Antes de eliminar un intervalo de direcciones IP asignado, comprueba si una conexión privada está usando el intervalo.
Si el intervalo de direcciones IP asignado está en uso, primero modifica la conexión privada para quitar el intervalo. A continuación, elimina el intervalo de direcciones IP asignado.
Si eliminas una dirección IP asignada que está en uso y no modificas la conexión privada, se aplicará lo siguiente:
Las conexiones actuales seguirán activas, pero no habrá nada que impida que tu red de VPC use direcciones IP que se solapen con la red del productor de servicios.
Si eliminas el único intervalo de direcciones IP asignado que está asociado a una conexión privada, el servicio no podrá crear subredes porque no habrá ningún intervalo de direcciones IP asignado entre los que elegir.
Si más adelante creas un intervalo de direcciones IP asignado que coincide o se superpone con el intervalo eliminado, no podrás añadirlo a una conexión privada.
Para evitar estos problemas, modifica siempre tus conexiones privadas cuando elimines un intervalo de direcciones IP asignado que esté en uso.
Consola
En la Google Cloud consola, ve a la página Redes de VPC.
Selecciona la red de VPC que contiene las asignaciones que quieres eliminar.
Seleccione la pestaña Acceso a servicios privados.
En la pestaña Acceso a servicios privados, seleccione la pestaña Intervalos de IP asignados a servicios.
Selecciona la asignación que quieras eliminar.
Haz clic en Liberar para devolver el intervalo de direcciones IP asignado al grupo de direcciones IP internas disponibles de la red.
Si el intervalo de direcciones IP asignado sigue asignado a una conexión, debes introducir una confirmación adicional para poder liberar la asignación.
Vuelve a hacer clic en Lanzar para confirmar la eliminación.
gcloud
Elimina la asignación especificando su nombre.
gcloud compute addresses delete NAME \ --global
Sustituye NAME
por el nombre del intervalo asignado que quieras eliminar.
Eliminar una conexión privada
Para eliminar una conexión privada, sigue el procedimiento que se describe en esta sección. No intentes eliminar una conexión privada eliminando directamente su conexión de emparejamiento de redes VPC asociada.
Antes de eliminar una conexión privada, debes eliminar todas las instancias de servicio a las que accedas a través de la conexión.
El comportamiento de eliminación de instancias de servicio puede variar en función del servicio. Los recursos del servicio se pueden eliminar inmediatamente o después de un periodo de espera. Si hay un periodo de espera, no puedes eliminar la conexión privada hasta que haya transcurrido y se hayan eliminado los recursos del productor del servicio.
Por ejemplo, si eliminas una instancia de Cloud SQL, recibes una respuesta correcta, pero el servicio espera cuatro días antes de eliminar los recursos del productor del servicio. Durante este periodo, si cambias de opinión sobre la eliminación del servicio, puedes solicitar que se restauren los recursos. Si intentas eliminar la conexión durante el periodo de espera, la eliminación fallará y se mostrará un mensaje que indica que el servicio sigue usando los recursos.
No puedes eliminar una conexión privada que esté en uso por un spoke de VPC de productor. Para eliminar la conexión, primero debes eliminar el spoke de la VPC de productor.
Consola
En la Google Cloud consola, ve a la página Redes de VPC.
Selecciona la red de VPC que contiene las conexiones que quieres eliminar.
Seleccione la pestaña Acceso a servicios privados.
En la pestaña Acceso a servicios privados, seleccione la pestaña Conexión privada a servicios.
Selecciona la conexión privada que quieras eliminar.
Haz clic en Eliminar para eliminarlo.
Vuelve a hacer clic en Eliminar para confirmar la acción.
gcloud
Para eliminar una conexión de emparejamiento entre redes de VPC de una conexión privada, usa el comando gcloud services vpc-peerings delete
.
gcloud services vpc-peerings delete \ --service=servicenetworking.googleapis.com \ --network=VPC_NETWORK
Sustituye VPC_NETWORK
por el nombre de tu red VPC.
Compartir zonas de DNS privadas con productores de servicios
Las zonas privadas de Cloud DNS son privadas para tu red de VPC. Si quieres que una red de productor de servicios resuelva nombres de tu zona privada, puedes configurar el peering de DNS entre las dos redes.
Cuando configuras el emparejamiento de DNS, proporcionas una red de VPC y un sufijo de DNS. Si el productor del servicio necesita resolver una dirección con ese sufijo de DNS, reenvía esas consultas a tu red de VPC para que se resuelvan.
Estos servicios admitidos admiten el peering de DNS, excepto Cloud SQL.
Si quieres habilitar el peering de DNS, debes habilitar la API Cloud DNS en tu proyecto.
Emparejar DNS con un productor de servicios
gcloud
Para configurar el emparejamiento de DNS entre tu red de VPC y la red del proveedor de servicios, usa el comando gcloud services peered-dns-domains create
.
gcloud services peered-dns-domains create PEERING_NAME \ --network=VPC_NETWORK \ --dns-suffix=DNS_SUFFIX
Haz los cambios siguientes:
PEERING_NAME
: nombre de esta configuración de emparejamiento de DNS.VPC_NETWORK
: el nombre de tu red de VPC que está conectada al productor de servicios mediante el acceso a servicios privados.DNS_SUFFIX
: el sufijo DNS con el que quieres emparejarte con el productor del servicio. Debes proporcionar un nombre de dominio DNS completo, incluido el punto. Por ejemplo,example.com.
es un sufijo DNS válido.
Terraform
Para configurar el emparejamiento de DNS entre tu red de VPC y la red del proveedor de servicios, usa el recurso google_service_networking_peered_dns_domain
.
Mostrar configuraciones de emparejamiento de DNS
gcloud
Usa el comando gcloud services peered-dns-domains list
.
gcloud services peered-dns-domains list \ --network=VPC_NETWORK
Sustituye VPC_NETWORK
por el nombre de tu red de VPC.
Eliminar una configuración de intercambio de tráfico de DNS
gcloud
Usa el comando gcloud services peered-dns-domains delete
.
gcloud services peered-dns-domains delete PEERING_NAME \ --network=VPC_NETWORK
Haz los cambios siguientes:
PEERING_NAME
: el nombre de la configuración de emparejamiento de DNS.VPC_NETWORK
: el nombre de tu red de VPC.
Configurar la conectividad híbrida
De forma predeterminada, la red del productor de servicios solo aprende las rutas de subred de tu red de VPC. Por lo tanto, el productor del servicio rechaza cualquier solicitud que no proceda de un intervalo de IPs de subred.
Para configurar la conectividad entre tus hosts on-premise y la red del productor de servicios, haz lo siguiente:
En tu red de VPC, actualiza la conexión de emparejamiento para exportar rutas personalizadas a la red del productor de servicios. Al exportar rutas, se envían todas las rutas estáticas y dinámicas aptas de tu red de VPC, como las rutas a tu red local, a la red del productor de servicios. La red del productor de servicios los importa automáticamente y, a continuación, puede enviar tráfico de vuelta a tu red on-premise a través de la red de VPC.
Asegúrate de que los prefijos que incluyen los intervalos de IP asignados para el acceso a servicios privados se anuncian correctamente en tu red local. Para saber cómo anunciar prefijos IPv4 personalizados con Cloud Router, consulta Rutas anunciadas.
Comprueba que la vinculación de VLAN o el túnel de Cloud VPN finalice en la misma red de VPC (o red de VPC compartida) que la conexión privada, ya que el emparejamiento de redes de VPC no proporciona enrutamiento transitivo.
Solución de problemas
En las siguientes secciones se incluye información para solucionar problemas relacionados con el acceso a servicios privados.
¿Cuánto espacio de mi asignación se está usando?
Cuando creas una conexión privada con un productor de servicios, le asignas un intervalo de direcciones IP para que lo use. Si usas varios servicios de un productor de servicios, cada servicio reserva un bloque de direcciones IP del intervalo asignado. Puedes consultar qué servicios usan qué direcciones IP para, por ejemplo, ver qué servicios usan grandes bloques de direcciones IP y evitar que se agoten.
Para ver la proporción de asignación de los intervalos asignados, usa Analizador de redes. Para obtener más información, consulta el resumen de utilización de direcciones IP de acceso a servicios privados.
También puedes ver qué servicio está usando un intervalo de direcciones IP concreto:
- Lista tus conexiones privadas.
- Busca el nombre de la conexión de emparejamiento que te conecta con el productor de servicios correspondiente.
- Lista las rutas de tu red de VPC.
- Busca las rutas con un siguiente salto que coincida con el nombre de la conexión de peering. El intervalo de destino de las rutas indica qué direcciones IP usa cada servicio.
Agotamiento del intervalo de direcciones IP
En una conexión privada determinada, si agotas el espacio de direcciones IP asignado, Google Cloud devuelve este error: Failed to create subnetwork.
Couldn't find free blocks in allocated IP ranges.
Puede que veas este error porque el intervalo asignado no es suficiente para tu uso o porque una ruta estática o dinámica personalizada impide que se utilice por completo el intervalo asignado. Para obtener más información sobre las consideraciones de enrutamiento, consulta Elegir un intervalo de direcciones IP para el intervalo asignado.
Puede ampliar la asignación que ya tenga o añadir otras nuevas. La asignación ampliada debe ser un intervalo de direcciones IP contiguo que incluya el intervalo actual. Te recomendamos que amplíes una asignación, ya que no hay límite en el tamaño de una asignación, pero sí en el número de asignaciones que puedes crear.
Para ampliar una asignación, sigue estos pasos:
- Enumera tus conexiones privadas y anota el nombre del intervalo asignado que quieras ampliar.
- Elimina el intervalo asignado que quieras ampliar.
- Crea un nuevo intervalo asignado con el mismo nombre que el intervalo eliminado. Especifica un intervalo de direcciones IP que incluya el intervalo de direcciones IP eliminado. De esta forma, los recursos emparejados que usen el intervalo asignado antiguo podrán seguir usando las mismas direcciones IP sin entrar en conflicto con los recursos de tu red de VPC. Por ejemplo, si el intervalo asignado anterior era
192.168.0.0/20
, crea un nuevo intervalo asignado
Para añadir intervalos asignados a una conexión privada ya creada, sigue estos pasos:
- Cree un intervalo asignado. Este intervalo no tiene por qué ser contiguo a los intervalos asignados.
- Añade el intervalo asignado a la conexión privada.
Permisos de cuenta de servicio
Si aparece un error sobre el permiso compute.globalAddresses.list
de un proyecto al crear un intervalo asignado o si se producen errores como Error 400: Precondition check failed
al crear, enumerar o modificar conexiones privadas, puede que haya un problema con los roles de gestión de identidades y accesos (IAM) de tu cuenta de servicio de la API Service Networking. Esta cuenta de servicio se crea automáticamente después de habilitar la API Service Networking. Puede tardar un tiempo en aprovisionarse la cuenta y mostrarse en la página IAM.
Consola
Para asegurarte de que la cuenta de servicio tiene el rol de gestión de identidades y accesos correcto, sigue estos pasos:
En la consola de Google Cloud , ve a la página Gestión de identidades y accesos.
Selecciona la casilla Incluir concesiones de roles proporcionadas por Google.
En la columna Nombre, busque la entidad de seguridad Service Networking Service Agent (Agente de servicio de Service Networking) y, a continuación, haga clic en
Editar entidad de seguridad en la fila correspondiente.En el campo Rol, comprueba que esté presente el rol Agente de servicio de Service Networking (
roles/servicenetworking.serviceAgent
).Si el rol Agente de servicio de Service Networking no está presente, haz clic en
Añadir rol o Añadir otro rol.Haz clic en Seleccionar un rol.
En el cuadro de texto Filter (Filtro), escribe
Service Networking Service Agent
.Selecciona Service Networking Service Agent (Agente de servicio de Service Networking) en la lista y, a continuación, haz clic en Guardar.
gcloud
Para crear una cuenta de servicio de la API Service Networking, usa el comando gcloud projects add-iam-policy-binding
.
gcloud projects add-iam-policy-binding HOST_PROJECT_NAME \ --member=serviceAccount:service-HOST_PROJECT_NUMBER@service-networking.iam.gserviceaccount.com \ --role=roles/servicenetworking.serviceAgent
Haz los cambios siguientes:
HOST_PROJECT_NAME
: el nombre del proyecto host.HOST_PROJECT_NUMBER
: número del proyecto anfitrión.
La ruta de subred de emparejamiento persiste después de actualizar el intervalo asignado
Después de actualizar el intervalo de direcciones IP asignado de una conexión de servicios privados, es posible que la ruta de subred de emparejamiento antigua siga apareciendo en la tabla de enrutamiento de tu red de VPC. La ruta persiste porque el intervalo de direcciones IP sigue en uso.
Para solucionar este problema, sigue estos pasos:
- Si eliminas un intervalo asignado, asegúrate de actualizar la conexión privada.
- Elimina o actualiza los recursos que usen el intervalo de direcciones IP antiguo.
La ruta de subred de emparejamiento se elimina automáticamente cuando el intervalo de direcciones IP deja de usarse. Puede haber un retraso entre el momento en que se elimina el recurso y el momento en que el productor de servicios lo elimina por completo. Por ejemplo, si una instancia de Cloud SQL usa el intervalo de direcciones IP antiguo, el productor del servicio puede tardar hasta cuatro días en eliminar por completo la instancia. La ruta de la subred de emparejamiento se elimina una vez que se ha completado la eliminación.
No se puede crear una conexión privada
Si intentas crear una conexión privada después de eliminar la conexión de emparejamiento entre redes VPC asociada a una conexión privada anterior,es posible que Google Clouddevuelva un error. Para obtener información sobre cómo solucionar problemas, consulta los siguientes mensajes de error.
Para evitar que esto ocurra, sigue el procedimiento para eliminar una conexión privada en lugar de eliminar directamente la conexión de emparejamiento entre redes VPC asociada.
Error al modificar los intervalos asignados:
ERROR: Cannot modify allocated ranges in CreateConnection. Please use UpdateConnection. Existing allocated IP ranges: ALLOCATED_RANGE_NAMES.
Si aparece este error, haz lo siguiente:
Vuelve a crear la conexión privada que has eliminado y usa los nombres de intervalo asignados que ha devuelto el error. Debes usar los mismos nombres de intervalo asignados al recrear la conexión, pero los intervalos de direcciones IP correspondientes (bloques CIDR) pueden ser iguales o diferentes.
Para crear la conexión privada, consulta Crear una conexión privada.
Si es necesario, modifica la conexión privada para añadir o quitar intervalos asignados. Puede que quieras usar intervalos asignados diferentes de los que especificaste cuando volviste a crear la conexión privada en el paso anterior.
Para modificar la conexión privada, consulta Modificar una conexión privada.
Error interno transitorio:
ERROR: (gcloud.services.vpc-peerings.connect) The operation "operations/OPERATION_ID" resulted in a failure "encountered some transient internal error, please try again later"
Si ves este error, ponte en contacto con el equipo de Asistencia de Cloud.