Publicar servicios mediante Private Service Connect
Como productor de servicios, puedes usar Private Service Connect para publicar servicios mediante direcciones IP internas en tu red de VPC. Los consumidores de servicios pueden acceder a los servicios publicados mediante direcciones IP internas en las redes de VPC del consumidor.
En esta guía se describe cómo usar Private Service Connect para publicar un servicio. Para publicar un servicio, sigue estos pasos:
- Crea un servicio de destino, que puede ser uno de los siguientes:
- La regla de reenvío de un balanceador de carga compatible con una configuración compatible
- Una instancia de Secure Web Proxy
- Crea un archivo adjunto de servicio que apunte al servicio de destino.
Private Service Connect ofrece dos métodos para conectarse a servicios publicados:
Estos tipos de endpoints requieren configuraciones de productor ligeramente diferentes. Para obtener más información, consulta Funciones y compatibilidad.
Roles
El siguiente rol de gestión de identidades y accesos proporciona los permisos necesarios para realizar las tareas de esta guía.
- Administrador de red de Compute
(
roles/compute.networkAdmin)
Antes de empezar
Consulta Información sobre los servicios publicados para obtener información sobre la publicación de servicios, incluidas las limitaciones.
Decide si el servicio debe ser accesible desde todos los proyectos o si quieres controlar qué proyectos pueden acceder a tu servicio.
Decide si quieres que este servicio admita endpoints, backends o ambos. Para obtener más información sobre los puntos finales y los back-ends, consulta los tipos de Private Service Connect.
Para obtener más información sobre los requisitos de configuración del servicio, consulta el artículo Funciones y compatibilidad.
Decide si quieres configurar un nombre de dominio para el servicio, lo que automatiza la configuración de DNS para los endpoints de los consumidores del servicio. Si configuras un nombre de dominio, la misma entidad de IAM que publica el servicio debe verificar que tiene permisos de propietario para el dominio en Google Search Console. Si configuras un nombre de dominio, pero no eres el propietario, no podrás publicar el servicio. Para verificar la propiedad, ve a Google Search Console.
El nombre de dominio que especifiques en la vinculación de servicio puede ser un subdominio del dominio que verifiques. Por ejemplo, puedes verificar
example.comy, a continuación, crear un adjunto de servicio con el nombre de dominious-west1.p.example.com.Decide si tu servicio usará el protocolo PROXY para proporcionar detalles sobre las conexiones de los consumidores. Si tiene previsto usar el protocolo PROXY, asegúrese de que lo admitan tanto el tipo de servicio de destino como el software del servidor web backend del servicio. Para obtener información sobre los tipos de servicios de destino que admiten el protocolo PROXY, consulta Funciones y compatibilidad.
Crear un servicio de destino
Para alojar el servicio, crea uno de los siguientes servicios de destino en una red de VPC del productor de servicios:
Para obtener información sobre las configuraciones admitidas de cada servicio de destino, consulta Funciones y compatibilidad.
Un adjunto de servicio solo puede tener un servicio de destino. Sin embargo, varios service attachments pueden compartir el mismo servicio de destino.
La versión IP de tu servicio de destino (IPv4 o IPv6) afecta a los consumidores que pueden conectarse a tu servicio publicado. Para obtener más información, consulta Traducción de versiones de IP.
En el caso de los balanceadores de carga de red de proxy interno regionales, los backends pueden estar ubicados enGoogle Cloud, en otras nubes, en un entorno on-premise o en cualquier combinación de estas ubicaciones.
También puedes publicar un servicio alojado en un balanceador de carga de red de transferencia interno en Google Kubernetes Engine. Esta configuración, incluida la del balanceador de carga y la de la vinculación de servicio, se describe en el artículo Crear un balanceador de carga de red de paso a través interno con Private Service Connect de la documentación de GKE.
Crear una subred para Private Service Connect
Crea una o varias subredes dedicadas para usarlas con Private Service Connect. Debes crear la subred en la misma región que el balanceador de carga del servicio.
Si usas la consola para publicar un servicio, puedes crear las subredes durante ese procedimiento. Google Cloud
Puedes crear una subred de Private Service Connect en un proyecto host de VPC compartida.
No puedes convertir una subred normal en una subred de Private Service Connect.
El tipo de pila de IP de la subred que crees debe ser compatible con la versión de IP de la regla de reenvío de tu balanceador de carga:
- En el caso de las reglas de reenvío IPv4, cree una subred solo IPv4 o de doble pila.
- En el caso de las reglas de reenvío IPv6, cree una subred solo IPv6 o de doble pila que tenga un intervalo de direcciones IPv6 internas.
- Si usas una subred de doble pila, se utiliza el intervalo de direcciones IPv4 o IPv6, pero no ambos.
Si necesitas que haya más direcciones IP disponibles para un servicio, consulta Añadir o quitar subredes de un servicio publicado.
Consola
En la Google Cloud consola, ve a la página Redes de VPC.
Haz clic en el nombre de una red de VPC para ver su página Detalles de la red de VPC.
Haz clic en Subredes.
Haz clic en Añadir subred. En el panel que aparece, haz lo siguiente:
- Proporciona un nombre.
- Selecciona una región.
- En la sección Propósito, selecciona Private Service Connect.
- En la sección Tipo de pila de IP, selecciona un tipo de pila de IP.
- Si vas a crear una subred solo IPv4 o de doble pila, introduce un intervalo de direcciones IPv4 (por ejemplo,
10.10.10.0/24). - Si vas a crear una subred solo IPv6 o de pila dual, haz clic en Tipo de acceso IPv6 y selecciona Interno.
- Haz clic en Añadir.
gcloud
Usa el comando gcloud compute networks subnets create.
Para crear una subred de Private Service Connect solo IPv4, haz lo siguiente:
gcloud compute networks subnets create SUBNET_NAME \ --network=NETWORK_NAME \ --region=REGION \ --range=SUBNET_RANGE \ --purpose=PRIVATE_SERVICE_CONNECTPara crear una subred de Private Service Connect de doble pila, haz lo siguiente:
gcloud compute networks subnets create SUBNET_NAME \ --network=NETWORK_NAME \ --region=REGION \ --stack-type=IPV4_IPV6 \ --ipv6-access-type=INTERNAL \ --range=SUBNET_RANGE \ --purpose=PRIVATE_SERVICE_CONNECTPara crear una subred de Private Service Connect solo IPv6, haz lo siguiente:
gcloud compute networks subnets create SUBNET_NAME \ --network=NETWORK_NAME \ --region=REGION \ --stack-type=IPV6_ONLY \ --ipv6-access-type=INTERNAL \ --purpose=PRIVATE_SERVICE_CONNECT
Haz los cambios siguientes:
SUBNET_NAME: el nombre que se asignará a la subred.NETWORK_NAME: nombre de la VPC de la nueva subred.REGION: la región de la nueva subred. Debe ser la misma región que el servicio que publiques.SUBNET_RANGE: el intervalo de direcciones IPv4 que se va a usar en la subred. Por ejemplo,10.10.10.0/24.
API
Envía una solicitud POST al
método subnetworks.insert.
Para crear una subred de Private Service Connect solo IPv4, haz lo siguiente:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks { "ipCidrRange": "SUBNET_RANGE", "name": "SUBNET_NAME", "network": "projects/PROJECT_ID/global/networks/NETWORK_NAME", "purpose": "PRIVATE_SERVICE_CONNECT" }Para crear una subred de Private Service Connect de doble pila, haz lo siguiente:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks { "ipCidrRange": "SUBNET_RANGE", "name": "SUBNET_NAME", "network": "projects/PROJECT_ID/global/networks/NETWORK_NAME", "purpose": "PRIVATE_SERVICE_CONNECT", "stackType": "IPV4_IPV6", "ipv6AccessType": "INTERNAL" }Para crear una subred de Private Service Connect solo IPv6, haz lo siguiente:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks { "name": "SUBNET_NAME", "network": "projects/PROJECT_ID/global/networks/NETWORK_NAME", "purpose": "PRIVATE_SERVICE_CONNECT", "stackType": "IPV6_ONLY", "ipv6AccessType": "INTERNAL" }
Haz los cambios siguientes:
PROJECT_ID: el proyecto de la subred.REGION: la región de la nueva subred. Debe ser la misma región que el servicio que publiques.SUBNET_RANGE: el intervalo de direcciones IPv4 que se va a usar en la subred. Por ejemplo,10.10.10.0/24.SUBNET_NAME: el nombre que se asignará a la subred.NETWORK_NAME: el nombre de la red de VPC de la nueva subred.
Configurar reglas de cortafuegos
La configuración de tu red debe permitir el tráfico de los intervalos de direcciones IP de origen adecuados a las instancias o los endpoints de red que estén configurados como backends de tus servicios de backend. Si tu servicio usa comprobaciones del estado, también debes permitir el tráfico de las sondas de comprobación del estado a tus backends.
No tienes que hacer nada para permitir el tráfico entre un endpoint o un backend de Private Service Connect y el archivo adjunto de servicio asociado, ni entre un archivo adjunto de servicio y el balanceador de carga asociado. Los puntos finales, los backends y los adjuntos de servicio son componentes lógicos que no participan en el flujo de tráfico.
Si tus backends están en una red de VPC, puedes usar reglas de cortafuegos de entrada de VPC o políticas de cortafuegos para permitir este tráfico. En el caso de los backends que se encuentran en las instalaciones locales o en otra nube, configura ese entorno para permitir el tráfico a los backends.
Cuando configuras reglas de cortafuegos de entrada para servicios de backend, la fuente del tráfico depende del tipo de balanceador de carga que utilice tu servicio:
| Categoría | Fuente del tráfico a los backends |
|---|---|
Balanceadores de carga de paso a través:
|
Los intervalos de direcciones IP de las subredes de Private Service Connect (NAT) asociadas al servicio |
Balanceadores de carga de proxy:
|
Los intervalos de direcciones IP de las subredes de solo proxy asociadas |
| Servicios con comprobaciones del estado | Los intervalos de direcciones IP de la sonda de tu tipo de balanceador de carga |
Publicar un servicio
Para publicar un servicio, debes crear un archivo adjunto de servicio. Puedes ofrecer el servicio de dos formas:
- Puedes publicar un servicio con aprobación automática.
- Puedes publicar un servicio con aprobación explícita.
Crea la vinculación de servicio en la misma región que el balanceador de carga del servicio.
Cada vinculación de servicio puede apuntar a una o varias subredes de Private Service Connect, pero una subred de Private Service Connect no se puede usar en más de una vinculación de servicio.
Si quieres ver la información de conexión de los consumidores, puedes habilitar el protocolo PROXY en los servicios compatibles. Habilita el protocolo PROXY solo si lo admiten tanto el tipo de servicio de destino (problema conocido) como el software del servidor web backend del servicio. Para obtener información sobre los tipos de servicios de destino que admiten el protocolo PROXY, consulta Funciones y compatibilidad. Para obtener más información sobre el protocolo PROXY, consulta Información sobre la conexión de consumidores.
En las siguientes secciones se proporcionan instrucciones para publicar un servicio basado en un balanceador de carga. Para obtener información sobre cómo crear una vinculación de servicio que haga referencia a una instancia de Secure Web Proxy, consulta Implementar Secure Web Proxy como vinculación de servicio de Private Service Connect.
Publicar un servicio con aprobación automática
Sigue estas instrucciones para publicar un servicio y permitir automáticamente que cualquier consumidor se conecte a él. Si quieres aprobar las conexiones de los consumidores de forma explícita, consulta el artículo sobre cómo publicar un servicio con aprobación explícita.
Cuando publicas un servicio, creas un archivo adjunto de servicio. Los consumidores de servicios utilizan los detalles de la vinculación de servicio para conectarse a tu servicio.
Cuando publicas un servicio con aprobación automática, el límite de conexión propagado se aplica a cada proyecto de consumidor que se conecta a tu adjunto de servicio.
Consola
Configurar el servicio
En la Google Cloud consola, ve a la página Private Service Connect.
Haz clic en la pestaña Servicios publicados.
Haz clic en Publicar servicio.
En la sección Detalles del destino, selecciona Balanceador de carga.
Selecciona un tipo de balanceador de carga.
Selecciona el balanceador de carga interno que aloja el servicio que quieres publicar. Los campos de red y de región se rellenan con los detalles del balanceador de carga interno seleccionado.
Los administradores de proyectos de servicio pueden seleccionar un balanceador de carga interno que tenga una dirección IP de una red de VPC compartida. Para obtener más información, consulta VPC compartida.
Si se te pide, selecciona la regla de reenvío asociada al servicio que quieras publicar.
En Nombre del servicio, escribe el nombre de la vinculación de servicio.
Seleccionar una subred de Private Service Connect
Selecciona una o varias subredes de Private Service Connect para el servicio. La lista se rellena con las subredes de la red de VPC del balanceador de carga interno seleccionado, incluidas las subredes que se comparten con un proyecto de servicio a través de la VPC compartida.
Si tu vinculación de servicio usa un balanceador de carga interno con una dirección IP de una red de VPC compartida, debes seleccionar una subred compartida de la misma red de VPC compartida.
Si quieres añadir una nueva subred, puedes crearla siguiendo estos pasos:
- Haz clic en Subredes y, a continuación, en Reservar nueva subred.
- Escribe un nombre para la subred y, si quieres, una descripción.
- Selecciona una región para la subred.
- Seleccione un tipo de pila de IP.
- Si vas a crear una subred solo IPv4 o de doble pila, introduce un intervalo de direcciones IPv4 que quieras usar en la subred.
- Haz clic en Añadir.
Completar la configuración
- Si quieres ver la información de conexión del consumidor, selecciona Usar protocolo de proxy.
- Selecciona Aceptar todas las conexiones automáticamente.
- Si quieres inhabilitar la reconciliación de conexiones, desmarca la casilla Habilitar reconciliación de conexiones.
Opcional: Haz clic en Configuración avanzada y, a continuación, haz lo siguiente:
Si quieres configurar un nombre de dominio, introduce un nombre de dominio, incluido un punto al final.
El formato recomendado para el nombre de dominio es
REGION.p.DOMAIN.Debes ser el propietario del nombre de dominio. Para obtener más información, consulta Configuración de DNS.
Introduce un límite de conexiones propagadas. Si no se especifica ningún valor, se utiliza
250de forma predeterminada.
Haz clic en Añadir servicio.
gcloud
Usa el comando gcloud compute service-attachments create.
gcloud compute service-attachments create ATTACHMENT_NAME \
--region=ATTACHMENT_REGION \
--target-service=TARGET_SERVICE \
--connection-preference=ACCEPT_AUTOMATIC \
--nat-subnets=PSC_SUBNET_LIST \
[ --propagated-connection-limit=PROPAGATED_CONNECTION_LIMIT ] \
[ --enable-proxy-protocol ] \
[ --domain-names=DOMAIN_NAME ]
Haz los cambios siguientes:
ATTACHMENT_NAME: el nombre que se asignará al archivo adjunto de servicio.ATTACHMENT_REGION: la región del nuevo archivo adjunto de servicio. Debe ser la misma región que la dirección IP de la regla de reenvío de destino.TARGET_SERVICE: el URI de la regla de reenvío asociada al servicio que estás publicando.- En el caso de los balanceadores de carga de aplicación internos entre regiones, usa el siguiente formato:
projects/PROJECT_ID/global/forwardingRules/RULE_NAME - Para el resto de las reglas de reenvío de productores, utiliza el siguiente formato:
projects/PROJECT_ID/regions/RULE_REGION/forwardingRules/RULE_NAME
Los administradores de proyectos de servicio pueden especificar la regla de reenvío de un balanceador de carga interno que tenga una dirección IP de una red de VPC compartida. Para obtener más información, consulta VPC compartida.
- En el caso de los balanceadores de carga de aplicación internos entre regiones, usa el siguiente formato:
PSC_SUBNET_LIST: lista separada por comas de uno o varios nombres de subredes que se van a usar con este adjunto de servicio.Si vas a crear un adjunto de servicio con una regla de reenvío que tenga una dirección IP de una red de VPC compartida, usa subredes compartidas de la misma red de VPC compartida. En cada subred compartida, especifica el URI de recurso completo (por ejemplo,
--nat-subnets=projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET).PROPAGATED_CONNECTION_LIMIT: el límite de conexiones propagadas por proyecto. El valor predeterminado es250.DOMAIN_NAME: nombre de dominio DNS del servicio, incluido un punto al final. Formato recomendado:REGION.p.DOMAIN.Para obtener más información, consulta Configuración de DNS.
API
Envía una solicitud POST al
método serviceAttachments.insert.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/ATTACHMENT_REGION/serviceAttachments
{
"name": "ATTACHMENT_NAME",
"connectionPreference": "ACCEPT_AUTOMATIC",
"targetService": "TARGET_SERVICE",
"enableProxyProtocol": false,
"natSubnets": [
"PSC_SUBNET_1_URI",
"PSC_SUBNET_2_URI"
],
"propagatedConnectionLimit": "PROPAGATED_CONNECTION_LIMIT",
"domainNames": [
"DOMAIN_NAME"
]
}
Haz los cambios siguientes:
PROJECT_ID: el proyecto del archivo adjunto de servicio.ATTACHMENT_REGION: la región del nuevo archivo adjunto de servicio. Debe ser la misma región que la dirección IP de la regla de reenvío de destino.ATTACHMENT_NAME: el nombre que se asignará al archivo adjunto de servicio.TARGET_SERVICE: el URI de la regla de reenvío asociada al servicio que está publicando.- En el caso de los balanceadores de carga de aplicación internos entre regiones, usa el siguiente formato:
projects/PROJECT_ID/global/forwardingRules/RULE_NAME - Para el resto de las reglas de reenvío de productores, utiliza el siguiente formato:
projects/PROJECT_ID/regions/RULE_REGION/forwardingRules/RULE_NAME
Los administradores de proyectos de servicio pueden especificar la regla de reenvío de un balanceador de carga interno que tenga una dirección IP de una red de VPC compartida. Para obtener más información, consulta VPC compartida.
- En el caso de los balanceadores de carga de aplicación internos entre regiones, usa el siguiente formato:
PSC_SUBNET_1_URIyPSC_SUBNET_2_URI: los URIs de subred que se van a usar en este adjunto de servicio. Puede especificar una o varias subredes por URI.Si vas a crear un adjunto de servicio con una regla de reenvío que tenga una dirección IP de una red de VPC compartida, usa subredes compartidas de la misma red de VPC compartida.
DOMAIN_NAME: nombre de dominio DNS del servicio, incluido un punto al final. Formato recomendado:REGION.p.DOMAIN.Para obtener más información, consulta Configuración de DNS.
PROPAGATED_CONNECTION_LIMIT: el límite de conexiones propagadas por proyecto. El valor predeterminado es250.
Publicar un servicio con aprobación explícita
Sigue estas instrucciones para publicar un servicio si quieres aprobar explícitamente a los consumidores antes de que puedan conectarse a él. Si quieres aprobar las conexiones de consumidores automáticamente, consulta el artículo sobre cómo publicar un servicio con aprobación automática.
Cuando publicas un servicio, creas un archivo adjunto de servicio. Los consumidores de servicios utilizan los detalles de la vinculación de servicio para conectarse a tu servicio.
Cada adjunto de servicio tiene una lista de aceptación de consumidores y una lista de rechazo de consumidores. Las listas de consumidores determinan qué endpoints pueden conectarse al servicio. Un attachment de servicio determinado puede aceptar o rechazar consumidores en función de uno de los siguientes tipos:
- Proyecto
- Red VPC
- Endpoint de Private Service Connect (vista previa)
Cada entrada de las listas de consumidores debe ser del mismo tipo. Por ejemplo, una vinculación de servicio determinada no puede aceptar algunos consumidores en función del proyecto y otros en función de la red de VPC. Además, no se admite la especificación de consumidores por carpeta.
Si añade un valor a la lista de aceptación y a la de rechazo, se rechazarán las solicitudes de conexión de ese consumidor.
Para aceptar usuarios en función de los puntos finales de Private Service Connect individuales, publica un servicio con aprobación explícita, pero no añadas ningún valor a las listas de consumidores. Una vez que un consumidor se conecta a tu adjunto de servicio, puedes encontrar el URI basado en el ID del endpoint describiendo el adjunto de servicio o pidiendo al consumidor que describa el endpoint. Para aceptar la conexión, añade el URI basado en el ID del endpoint de Private Service Connect a la lista de aceptación de consumidores de tu servicio.
Si tus listas de aceptación y rechazo de consumidores hacen referencia a proyectos o endpoints individuales, el límite de conexiones propagado se aplica a los proyectos de consumidor. Si las listas de aceptación y rechazo de tu consumidor hacen referencia a redes de VPC, el límite de conexiones propagadas se aplica a las redes de VPC del consumidor.
Consola
Configurar el servicio
En la Google Cloud consola, ve a la página Private Service Connect.
Haz clic en la pestaña Servicios publicados.
Haz clic en Publicar servicio.
En la sección Detalles del destino, selecciona Balanceador de carga.
Selecciona un tipo de balanceador de carga.
Selecciona el balanceador de carga interno en el que se aloja el servicio que quieres publicar. Los campos de red y de región se rellenan con los detalles del balanceador de carga interno seleccionado.
Los administradores de proyectos de servicio pueden seleccionar un balanceador de carga interno que tenga una dirección IP de una red de VPC compartida. Para obtener más información, consulta VPC compartida.
Si se te pide, selecciona la regla de reenvío asociada al servicio que quieras publicar.
En Nombre del servicio, escribe el nombre de la vinculación de servicio.
Seleccionar una subred de Private Service Connect
Selecciona una o varias subredes de Private Service Connect para el servicio. La lista se rellena con las subredes de la red de VPC del balanceador de carga interno seleccionado, incluidas las subredes que se comparten con un proyecto de servicio a través de la VPC compartida.
Si tu vinculación de servicio usa un balanceador de carga interno con una dirección IP de una red de VPC compartida, debes seleccionar una subred compartida de la misma red de VPC compartida.
Si quieres añadir una nueva subred, puedes crearla siguiendo estos pasos:
- Haz clic en Subredes y, a continuación, en Reservar nueva subred.
- Escribe un nombre para la subred y, si quieres, una descripción.
- Selecciona una región para la subred.
- Seleccione un tipo de pila de IP.
- Si vas a crear una subred solo IPv4 o de doble pila, introduce un intervalo de direcciones IPv4 que quieras usar en la subred.
- Haz clic en Añadir.
Configurar el acceso de los consumidores
- Si quieres ver la información de conexión del consumidor, selecciona Usar protocolo de proxy.
Para configurar las listas de aceptación y rechazo de consumidores, siga uno de estos pasos.
Para aceptar las conexiones de los proyectos seleccionados, selecciona Aceptar las conexiones de los proyectos seleccionados y, a continuación, haz lo siguiente:
En cada proyecto desde el que quieras aceptar conexiones, haz clic en Añadir proyecto aceptado y, a continuación, introduce lo siguiente:
- El ID o el número del proyecto desde el que quieres aceptar conexiones.
- Un límite de conexiones para especificar el número máximo de endpoints del proyecto especificado que pueden conectarse.
Opcional: En cada proyecto del que quieras rechazar explícitamente las conexiones, haz clic en Añadir proyecto rechazado y, a continuación, introduce el ID o el número del proyecto.
Para aceptar las conexiones de las redes seleccionadas, selecciona Aceptar las conexiones de las redes seleccionadas y, a continuación, haz lo siguiente:
Para cada red de VPC de la que quieras aceptar conexiones, haz clic en Añadir red aceptada y, a continuación, introduce lo siguiente:
- El ID o el número del proyecto principal de la red desde la que quieres aceptar conexiones.
- El nombre de la red de la que quieres aceptar conexiones.
- Un límite de conexión para especificar el número máximo de endpoints de la red especificada que se pueden conectar.
Opcional: Por cada red de la que quieras rechazar explícitamente las conexiones, haz clic en Añadir red rechazada y, a continuación, introduce el ID o el número de proyecto del proyecto principal de la red y el nombre de la red.
Para aceptar conexiones de puntos finales de Private Service Connect concretos, selecciona Aceptar conexiones de los proyectos seleccionados. No añadas ningún valor a la lista de aceptación del consumidor por el momento. Cuando un consumidor solicite una conexión a tu servicio, puedes añadir el endpoint a tu lista de aceptación de consumidores.
Completar la configuración
- Opcional: Si quieres inhabilitar la conciliación de conexiones, desmarca la casilla Habilitar conciliación de conexiones.
Opcional: Haz clic en Configuración avanzada y, a continuación, haz lo siguiente:
Si quieres configurar un nombre de dominio, introduce un nombre de dominio, incluido un punto al final.
El formato recomendado para el nombre de dominio es
REGION.p.DOMAIN.Debes ser el propietario del nombre de dominio. Para obtener más información, consulta Configuración de DNS.
Introduce un límite de conexiones propagadas. Si no se especifica ningún valor, se utiliza
250de forma predeterminada.
Haz clic en Añadir servicio.
gcloud
Usa el comando gcloud compute service-attachments create.
gcloud compute service-attachments create ATTACHMENT_NAME \
--region=ATTACHMENT_REGION \
--target-service=TARGET_SERVICE \
--connection-preference=ACCEPT_MANUAL \
--consumer-accept-list=ACCEPTED_PROJECT_OR_NETWORK_1=LIMIT_1,ACCEPTED_PROJECT_OR_NETWORK_2=LIMIT_2 \
--consumer-reject-list=REJECTED_PROJECT_OR_NETWORK_1,REJECTED_PROJECT_OR_NETWORK_2 \
--nat-subnets=PSC_SUBNET_LIST \
[ --propagated-connection-limit=PROPAGATED_CONNECTION_LIMIT ] \
[ --enable-proxy-protocol ] \
[ --domain-names=DOMAIN_NAME ] \
[ --reconcile-connections ]
Haz los cambios siguientes:
ATTACHMENT_NAME: el nombre que se asignará al archivo adjunto de servicio.ATTACHMENT_REGION: la región del nuevo archivo adjunto de servicio. Debe ser la misma región que la dirección IP de la regla de reenvío de destino.TARGET_SERVICE: el URI de la regla de reenvío asociada al servicio que estás publicando.- En el caso de los balanceadores de carga de aplicación internos entre regiones, usa el siguiente formato:
projects/PROJECT_ID/global/forwardingRules/RULE_NAME - Para el resto de las reglas de reenvío de productores, utiliza el siguiente formato:
projects/PROJECT_ID/regions/RULE_REGION/forwardingRules/RULE_NAME
Los administradores de proyectos de servicio pueden especificar la regla de reenvío de un balanceador de carga interno que tenga una dirección IP de una red de VPC compartida. Para obtener más información, consulta VPC compartida.
- En el caso de los balanceadores de carga de aplicación internos entre regiones, usa el siguiente formato:
ACCEPTED_PROJECT_OR_NETWORK_1yACCEPTED_PROJECT_OR_NETWORK_2: los IDs de proyecto, los nombres de proyecto o los URIs de red que se van a aceptar.--consumer-accept-listes opcional y puede contener uno o varios proyectos o redes, pero no una combinación de ambos tipos.LIMIT_1yLIMIT_2: los límites de conexión de los proyectos o las redes. El límite de conexiones es el número de endpoints o backends de consumidor que pueden conectarse a este servicio. Cada proyecto o red aceptado debe tener un límite de conexiones configurado.REJECTED_PROJECT_OR_NETWORK_1yREJECTED_PROJECT_OR_NETWORK_2: los IDs de proyecto, los nombres de proyecto o los URIs de red que se rechazarán.--consumer-reject-listes opcional y puede contener uno o varios proyectos o redes, pero no una combinación de ambos tipos.PSC_SUBNET_LIST: lista separada por comas de uno o varios nombres de subredes que se van a usar con este adjunto de servicio.Si vas a crear un adjunto de servicio con una regla de reenvío que tenga una dirección IP de una red de VPC compartida, usa subredes compartidas de la misma red de VPC compartida. En cada subred compartida, especifica el URI de recurso completo (por ejemplo,
--nat-subnets=projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET).PROPAGATED_CONNECTION_LIMIT: el límite de conexiones propagado. El valor predeterminado es250.DOMAIN_NAME: nombre de dominio DNS del servicio, incluido un punto al final. Formato recomendado:REGION.p.DOMAIN.Para obtener más información, consulta Configuración de DNS.
API
Envía una solicitud POST al método serviceAttachments.insert.
Para publicar un servicio y aprobar explícitamente a los consumidores en función del proyecto, envía la siguiente solicitud:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/ATTACHMENT_REGION/serviceAttachments { "name": "ATTACHMENT_NAME", "region": "ATTACHMENT_REGION", "connectionPreference": "ACCEPT_MANUAL", "targetService": "TARGET_SERVICE", "enableProxyProtocol": false, "natSubnets": [ "PSC_SUBNET_1_URI", "PSC_SUBNET_2_URI" ], "consumerRejectLists": [ "REJECTED_PROJECT_1", "REJECTED_PROJECT_2" ], "consumerAcceptLists": [ { "projectIdOrNum": "ACCEPTED_PROJECT_1", "connectionLimit": "LIMIT_1" }, { "projectIdOrNum": "ACCEPTED_PROJECT_2", "connectionLimit": "LIMIT_2" } ], "propagatedConnectionLimit": "PROPAGATED_CONNECTION_LIMIT", "domainNames": [ "DOMAIN_NAME" ] }Haz los cambios siguientes:
PROJECT_ID: el proyecto del archivo adjunto de servicio.ATTACHMENT_REGION: la región del nuevo archivo adjunto de servicio. Debe ser la misma región que la dirección IP de la regla de reenvío de destino.ATTACHMENT_NAME: el nombre que se asignará al archivo adjunto de servicio.TARGET_SERVICE: el URI de la regla de reenvío asociada al servicio que está publicando.- En el caso de los balanceadores de carga de aplicación internos entre regiones, usa el siguiente formato:
projects/PROJECT_ID/global/forwardingRules/RULE_NAME - Para el resto de las reglas de reenvío de productores, utiliza el siguiente formato:
projects/PROJECT_ID/regions/RULE_REGION/forwardingRules/RULE_NAME
Los administradores de proyectos de servicio pueden especificar la regla de reenvío de un balanceador de carga interno que tenga una dirección IP de una red de VPC compartida. Para obtener más información, consulta VPC compartida.
- En el caso de los balanceadores de carga de aplicación internos entre regiones, usa el siguiente formato:
PSC_SUBNET_1_URIyPSC_SUBNET_2_URI: los URIs de subred que se van a usar en este adjunto de servicio. Puede especificar una o varias subredes por URI.Si vas a crear un adjunto de servicio con una regla de reenvío que tenga una dirección IP de una red de VPC compartida, usa subredes compartidas de la misma red de VPC compartida.
REJECTED_PROJECT_1yREJECTED_PROJECT_2: los IDs o números de los proyectos que se van a rechazar.consumerRejectListses opcional y puede contener uno o varios proyectos.ACCEPTED_PROJECT_1yACCEPTED_PROJECT_2: los IDs o números de los proyectos que se van a aceptar.consumerAcceptListses opcional y puede contener uno o varios proyectos.LIMIT_1yLIMIT_2: los límites de conexión de los proyectos. El límite de conexiones es el número de puntos finales o backends de consumidor que pueden conectarse a este servicio. Cada proyecto aceptado debe tener configurado un límite de conexiones.
PROPAGATED_CONNECTION_LIMIT: el límite de conexiones propagado. El valor predeterminado es250.
DOMAIN_NAME: nombre de dominio DNS del servicio, incluido un punto al final. Formato recomendado:REGION.p.DOMAIN.Para obtener más información, consulta Configuración de DNS.
Para publicar un servicio y aprobar explícitamente a los consumidores en función de la red de VPC, envía la siguiente solicitud:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/ATTACHMENT_REGION/serviceAttachments { "name": "ATTACHMENT_NAME", "region": "ATTACHMENT_REGION", "connectionPreference": "ACCEPT_MANUAL", "targetService": "TARGET_SERVICE", "enableProxyProtocol": false, "natSubnets": [ "PSC_SUBNET_1_URI", "PSC_SUBNET_2_URI" ], "consumerRejectLists": [ "projects/REJECTED_PROJECT_ID_1/global/networks/REJECTED_NETWORK_1", "projects/REJECTED_PROJECT_ID_2/global/networks/REJECTED_NETWORK_2" ], "consumerAcceptLists": [ { "networkUrl": "projects/ACCEPTED_PROJECT_ID_1/global/networks/ACCEPTED_NETWORK_1", "connectionLimit": "LIMIT_1" }, { "networkUrl": "projects/ACCEPTED_PROJECT_ID_2/global/networks/ACCEPTED_NETWORK_2", "connectionLimit": "LIMIT_2" } ], "propagatedConnectionLimit": PROPAGATED_CONNECTION_LIMIT, "domainNames": [ "DOMAIN_NAME" ] }Haz los cambios siguientes:
REJECTED_PROJECT_ID_1yREJECTED_PROJECT_ID_2: los IDs de los proyectos principales de las redes que quieras rechazar.consumerRejectListses opcional y puede contener una o varias redes.REJECTED_NETWORK_1yREJECTED_NETWORK_2: los nombres de las redes que quieras rechazar.ACCEPTED_PROJECT_ID_1yACCEPTED_PROJECT_ID_2: los IDs de los proyectos principales de las redes que quieras aceptar.consumerAcceptListses opcional y puede contener una o varias redes.ACCEPTED_NETWORK_1yACCEPTED_NETWORK_2: los nombres de las redes que quieras aceptar.LIMIT_1yLIMIT_2: los límites de conexión de las redes. El límite de conexiones es el número de puntos finales o backends de consumidor que pueden conectarse a este servicio. Cada proyecto aceptado debe tener configurado un límite de conexiones.
PROPAGATED_CONNECTION_LIMIT: el límite de conexiones propagado. El valor predeterminado es250.
DOMAIN_NAME: nombre de dominio DNS del servicio, incluido un punto al final. Formato recomendado:REGION.p.DOMAIN.Para obtener más información, consulta Configuración de DNS.
Para publicar un servicio con la conciliación de conexiones habilitada, envía una solicitud similar a las anteriores, pero incluye el siguiente campo:
{ ... "reconcileConnections": true ... }
Ver la información de conexión de los consumidores
Para obtener información sobre cómo ver la información de conexión de los consumidores mediante el protocolo PROXY, consulta Ver la información de conexión de los consumidores.
Gestionar solicitudes de acceso a un servicio publicado
Si tienes un servicio publicado con aprobación explícita, puedes aceptar o rechazar las solicitudes de conexión de proyectos o redes de consumidores. Para obtener más información, consulta Gestionar solicitudes de acceso a un servicio publicado.
También puedes cambiar entre la aceptación automática y la explícita de proyectos para un servicio publicado. Para obtener más información, consulta Cambiar la preferencia de conexión de un servicio publicado.
Añadir o quitar subredes de un servicio publicado
Puede añadir o quitar subredes de un servicio publicado. Para obtener más información, consulta Añadir o quitar subredes de un servicio publicado.
Mostrar servicios publicados
Puedes enumerar todos los servicios.
Consola
En la Google Cloud consola, ve a la página Private Service Connect.
Haz clic en la pestaña Servicios publicados.
Se muestran las vinculaciones de servicio de Private Service Connect.
gcloud
Usa el comando gcloud compute service-attachments list.
gcloud compute service-attachments list [--regions=REGION_LIST]
Sustituye REGION_LIST por una lista separada por comas de una o varias regiones de las que quieras ver los adjuntos de servicio. Por ejemplo, us-central1 o us-west1,us-central1.
API
Para ver todos los archivos adjuntos de servicio de una región concreta o de todas las regiones, envía una solicitud GET al método serviceAttachments.list.
Para ver todas las vinculaciones de servicio de una región, haz lo siguiente:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments
Ver todos los archivos adjuntos de servicios en todas las regiones:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/serviceAttachments
Haz los cambios siguientes:
PROJECT_ID: el proyecto del archivo adjunto de servicio.REGION: la región del archivo adjunto de servicio.ATTACHMENT_NAME: el nombre de la vinculación de servicio.
Ver los detalles de un servicio publicado
Puedes ver los detalles de configuración de un servicio publicado.
Puedes ver algunos detalles de configuración en la consola, como el URI de adjunto de servicio que necesitan los consumidores de servicios para conectarse a tu servicio. Google Cloud Para ver todos los detalles, incluidos los valores de pscConnectionId y el URI del endpoint basado en ID (endpointWithId) de los consumidores del adjunto de servicio, usa la CLI de Google Cloud o envía una solicitud de API.
Consola
Puedes ver los detalles de un servicio publicado. El campo Vinculación de servicio contiene el URI de la vinculación de servicio.
En la Google Cloud consola, ve a la página Private Service Connect.
Haz clic en la pestaña Servicios publicados.
Haz clic en el servicio que quieras ver.
gcloud
Para ver los detalles de un servicio publicado, usa el comando
gcloud compute service-attachments describe. El camposelfLinkcontiene el URI de la vinculación de servicio.gcloud compute service-attachments describe \ ATTACHMENT_NAME --region=REGIONHaz los cambios siguientes:
ATTACHMENT_NAME: el nombre del servicio adjunto.REGION: la región del archivo adjunto de servicio.
Para ver los detalles de un servicio publicado, incluidos los URIs de los puntos finales basados en ID que puedes usar para aceptar puntos finales individuales, usa el comando
gcloud beta compute service-attachments describe. En cada punto final de la lista de puntos finales conectados, el campoendpointWithIdcontiene el URI basado en el ID del punto final.gcloud beta compute service-attachments describe \ ATTACHMENT_NAME --region=REGION
API
Para ver los detalles de un servicio publicado, envía una solicitud
GETal métodoserviceAttachments.get. El camposelfLinkcontiene el URI de la vinculación de servicio.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
Haz los cambios siguientes:
PROJECT_ID: el proyecto del archivo adjunto de servicio.REGION: la región del archivo adjunto de servicio.ATTACHMENT_NAME: el nombre de la vinculación de servicio.
Para ver los detalles de un servicio publicado, incluidos los URIs de los puntos finales basados en ID que puedes usar para aceptar puntos finales concretos, envía una solicitud
GETa la versión beta del métodoserviceAttachments.get. En cada punto final de la lista de puntos finales conectados, el campoendpointWithIdcontiene el URI basado en el ID del punto final.GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
Eliminar un servicio publicado
Puedes eliminar un servicio publicado, aunque haya conexiones de consumidores con el adjunto de servicio. Si eliminas el servicio publicado, solo se eliminará el adjunto de servicio. El balanceador de carga asociado no se ha eliminado. Cuando eliminas un servicio publicado, ocurre lo siguiente:
El tráfico de los endpoints (basado en reglas de reenvío) ya no se envía al balanceador de carga.
El tráfico de los backends (basado en balanceadores de carga de aplicación externos globales) se envía al balanceador de carga hasta que se elimina.
Consola
En la Google Cloud consola, ve a la página Private Service Connect.
Haz clic en la pestaña Servicios publicados.
Haz clic en el servicio que quieras eliminar.
Haz clic en Eliminar.
gcloud
Usa el comando gcloud compute service-attachments delete.
gcloud compute service-attachments delete \
ATTACHMENT_NAME --region=REGION
API
Envía una solicitud DELETE al método serviceAttachments.delete.
DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
Haz los cambios siguientes:
PROJECT_ID: el proyecto del archivo adjunto de servicio.REGION: la región del archivo adjunto de servicio.ATTACHMENT_NAME: el nombre de la vinculación de servicio.
Problemas conocidos
Errores de comprobación del estado con puntos finales de consumidor de acceso global
Los consumidores pueden conectar un endpoint de acceso global a un servicio publicado que no esté configurado para el acceso global. Sin embargo, las comprobaciones del estado no funcionan correctamente en esta configuración. Por lo tanto, es posible que el tráfico se envíe a backends en mal estado y se elimine.
Si publicas un servicio con un balanceador de carga de red de paso a través interno o un reenvío de protocolo interno (instancia de destino) y tu servicio se ve afectado por este problema, haz lo siguiente.
- Si quieres usar el acceso global, haz lo siguiente:
- Habilita el acceso global para la regla de reenvío del balanceador de carga.
- Si Google Kubernetes Engine gestiona el balanceador de carga, también debes actualizar el manifiesto de servicio correspondiente y aplicarlo al clúster. Para obtener más información sobre esta configuración específica de GKE, consulta Acceso global.
- Actualiza cualquier automatización para que los nuevos balanceadores de carga de productor que admitan endpoints de Private Service Connect con acceso global se configuren para el acceso global.
- Si no quieres usar el acceso global, pide al consumidor que inhabilite el acceso global al endpoint.
Activar el acceso global de un servicio publicado no interrumpe el tráfico de red.
Errores de comprobación de estado con NEGs de Private Service Connect con acceso global
Hay un problema conocido con los NEGs de Private Service Connect de consumidores que están configurados para el acceso global. Una NEG de Private Service Connect se configura para el acceso global si está asociada a un servicio de backend global.
Si un consumidor conecta un NEG de Private Service Connect configurado para el acceso global a un balanceador de carga de productor y el productor de servicios inhabilita el acceso global para ese balanceador de carga, las comprobaciones de estado no funcionarán correctamente. Por lo tanto, es posible que el tráfico se envíe a backends en mal estado y se descarte.
Si publicas un servicio con un balanceador de carga interno que admite el acceso global y tu servicio se ve afectado por este problema, haz lo siguiente.
- Si quieres usar el acceso global, haz lo siguiente:
- Habilita el acceso global en la regla de reenvío del balanceador de carga.
- Si el balanceador de carga está gestionado por Google Kubernetes Engine, también debes actualizar el manifiesto de servicio correspondiente y aplicarlo a tu clúster. Para obtener más información sobre esta configuración específica de GKE, consulta Acceso global.
- Actualiza cualquier automatización para que los nuevos balanceadores de carga de productor que admitan NEGs de Private Service Connect con acceso global se configuren para el acceso global.
- Si no quieres usar el acceso global, pide al consumidor que vuelva a configurar el NEG de Private Service Connect para que tenga acceso regional. Para ello, el consumidor debe quitar su NEG de Private Service Connect del servicio de backend global y, a continuación, asociar el NEG a un servicio de backend regional.
Activar el acceso global de un servicio publicado no interrumpe el tráfico de red.
Desconexiones después de actualizar el proveedor de Google para Terraform
Si has usado el proveedor de Google para Terraform con versiones anteriores a la 4.76.0 para crear adjuntos de servicio, no actualices a las versiones de la 4.76.0 a la 4.81.x. Cuando ejecutas terraform apply después de actualizar a las versiones de la 4.76.0 a la 4.81.x, Terraform puede eliminar y volver a crear por error los elementos ServiceAttachment y cerrar las conexiones de Private Service Connect. Las vinculaciones de servicio recreadas no vuelven a establecer automáticamente las conexiones de Private Service Connect.
Si actualizas a la versión 4.82.0 y, a continuación, ejecutas terraform apply, los archivos adjuntos de tu servicio no se eliminarán, pero el ajuste reconcile
connections
se establecerá en true. Si el valor de este ajuste era false, es posible que se cierren algunas conexiones de Private Service Connect.
Actualización a las versiones 4.76.0 a 4.81.x del proveedor de Google. En este caso, el resultado de
terraform planincluye lo siguiente:-/+ resource "google_compute_service_attachment" "SERVICE_NAME" { ... ~ reconcile_connections = false -> true # forces replacement ...Para evitar este problema, siga la solución alternativa.
Actualización a las versiones 4.82.0 de los proveedores de Google En este caso, el resultado de
terraform planincluye lo siguiente:~ reconcile_connections = false -> true
Si ignoras esta advertencia y aplicas los cambios, Terraform actualizará el archivo adjunto de servicio para activar la conciliación de conexiones. En función del estado de la conexión, cambiar de
falseatruepuede cerrar algunas conexiones. Para obtener más información, consulta Reconciliación de conexiones.Para evitar este problema, siga la solución alternativa.
Solución
Te recomendamos que actualices el proveedor de Google para Terraform a la versión 4.82.0 o posterior. Esta versión evita que se eliminen y se vuelvan a crear archivos adjuntos de servicio por error.
Si no puedes actualizar inmediatamente o si puedes hacerlo, pero también quieres evitar que Terraform cambie el ajuste de conciliación de conexiones, actualiza la configuración de Terraform para definir explícitamente el ajuste de conciliación de conexiones.
Consulta la configuración detallada del adjunto de servicio y anota el ajuste
reconcileConnections.gcloud compute service-attachments describe SERVICE_NAME --region=REGION
El resultado incluye el campo
reconcileConnections, que puede ser true o false.reconcileConnections: false
Actualiza el archivo de configuración de Terraform para que use explícitamente el mismo ajuste que se utiliza en el adjunto de servicio.
resource "google_compute_service_attachment" "SERVICE_NAME" { ... reconcile_connections = false }Para ver un ejemplo de configuración, consulta Service Attachment Reconcile Connections en GitHub.
Errores de TLS con el protocolo PROXY
Si publicas un servicio con el protocolo PROXY habilitado, pero tu servicio de destino no admite este protocolo, los consumidores podrán conectarse a tu servicio con endpoints. Sin embargo, el tráfico no fluye a través de la conexión y las cargas de trabajo reciben errores relacionados con TLS.
Para solucionar este problema, actualice el adjunto de servicio para inhabilitar el protocolo PROXY.
Para obtener información sobre los tipos de servicios de destino que admiten el protocolo PROXY, consulta Funciones y compatibilidad.
Solución de problemas
Error al actualizar un archivo adjunto de servicio
Si ves el siguiente mensaje de error al actualizar un adjunto de servicio, es posible que la lista de aceptación o la lista de rechazo incluyan proyectos eliminados: The
resource PROJECT was not found.
Para resolver el problema, quite los proyectos eliminados de la configuración del adjunto de servicio.
Usa el comando
gcloud compute service-attachments describepara mostrar la configuración del adjunto de servicio que quieras modificar.Para generar la lista de aceptación en un formato que puedas usar más adelante para actualizar el adjunto de servicio, haz lo siguiente:
gcloud compute service-attachments describe ATTACHMENT_NAME \ --region=REGION --flatten="consumerAcceptLists[]" \ --format="csv[no-heading,separator='='](consumerAcceptLists.projectIdOrNum,consumerAcceptLists.connectionLimit)" \ | xargs | sed -e 's/ /,/g'La salida de la lista de elementos aceptados es similar a la siguiente:
PROJECT_1=LIMIT_1,PROJECT_2=LIMIT_2,PROJECT_3=LIMIT_3
Para generar la lista de rechazo en un formato que puedas usar más adelante para actualizar el adjunto de servicio, haz lo siguiente:
gcloud compute service-attachments describe ATTACHMENT_NAME \ --region=REGION \ --format="value[delimiter=','](consumerRejectLists[])"La salida de la lista de rechazo es similar a la siguiente:
PROJECT_1,PROJECT_2,PROJECT_3
Edita el resultado del comando para quitar los proyectos eliminados de la lista de aceptados y de la lista de rechazados.
Actualiza el archivo adjunto de servicio para quitar los proyectos eliminados.
Para actualizar la lista de aceptación, sigue estos pasos:
gcloud compute service-attachments update ATTACHMENT_NAME \ --region=REGION \ --consumer-accept-list=UPDATED_ACCEPT_LISTPara actualizar la lista de rechazo, sigue estos pasos:
gcloud compute service-attachments update ATTACHMENT_NAME \ --region=REGION \ --consumer-reject-list=UPDATED_REJECT_LIST
No se ha establecido la conectividad
Si un consumidor ha creado un endpoint o un backend que hace referencia a tu adjunto de servicio, pero no se ha establecido la conectividad, comprueba el estado de la conexión del adjunto de servicio. El estado de la conexión puede indicar los pasos que puedes seguir para resolver el problema.
Se agota el tiempo de espera de las conexiones de los consumidores
Si las conexiones de los consumidores agotan el tiempo de espera, comprueba si tu servicio requiere conexiones de larga duración. El tiempo de espera de inactividad de la conexión TCP establecida para la NAT de Private Service Connect es de 20 minutos. Si tu servicio necesita un tiempo de espera más largo, es posible que tengas que hacer algunos cambios en la configuración para asegurarte de que las conexiones no se agoten. Para obtener más información, consulta las especificaciones de NAT.
Errores de conexión propagados
Para obtener información sobre cómo solucionar problemas de conexiones propagadas, consulta el artículo Solucionar errores de propagación de conexiones de Private Service Connect.
El servicio publicado tiene problemas de rendimiento o se agota el tiempo de espera de la conexión
Si tu servicio publicado tiene problemas de rendimiento o tiempos de espera de conexión intermitentes, puede deberse a paquetes perdidos. Para investigar los paquetes perdidos, consulta las métricas que se describen en las siguientes secciones.
Paquetes descartados de consumidores
La métrica private_service_connect/producer/dropped_received_packets_count monitoriza los paquetes de un punto final o un backend a un servicio publicado que se han descartado porque el punto final o el backend han superado el número máximo de conexiones al servicio.
Si un servicio publicado informa de valores para esta métrica, considere las siguientes soluciones:
- Aumentar la capacidad del servicio publicado, por ejemplo, añadiendo más instancias de máquina virtual o endpoints de red.
- Pide al consumidor del servicio que cree puntos finales o backends adicionales que se conecten al servicio publicado.
- Pide al consumidor del servicio que reduzca el número de conexiones a través de su endpoint o backend.
Paquetes descartados a los consumidores
La métrica private_service_connect/producer/dropped_sent_packets_count
monitoriza los paquetes enviados desde un servicio publicado a un punto final o backend que se
han descartado porque Private Service Connect no encuentra una conexión
que coincida con los paquetes de respuesta.
Private Service Connect solo permite las conexiones que se inician desde la red de VPC del consumidor. Cuando un consumidor inicia una conexión, esta se monitoriza para asociar los paquetes de respuesta del servicio publicado con una conexión existente. Si Private Service Connect no encuentra ninguna coincidencia para un paquete de respuesta, el paquete se descarta.
Esto puede ocurrir si un servicio publicado envía paquetes de respuesta después de que se haya agotado el tiempo de espera de una conexión. Para obtener información sobre cómo evitar problemas con el tiempo de espera de las conexiones, consulta las especificaciones de NAT.