En esta página, se describe cómo crear y administrar recursos de conexión de VPN de Google Distributed Cloud en una zona de Distributed Cloud.
Para obtener más información sobre las conexiones VPN de Distributed Cloud, consulta Cómo funciona Distributed Cloud.
Ten en cuenta lo siguiente:
Debes configurar tu red para permitir el tráfico requerido por las conexiones de VPN de Distributed Cloud.
Cuando creas una conexión de VPN de Distributed Cloud, Distributed Cloud crea los recursos necesarios de la puerta de enlace de Cloud VPN y de Cloud Router. El nombre de la puerta de enlace de Cloud VPN tiene el prefijo
anthos-mcc. El nombre del Cloud Router tiene el prefijogdce. No debes modificar estos recursos; de lo contrario, es posible que la conexión de Distributed Cloud VPN deje de funcionar. Si modificas estos recursos por accidente, debes borrar y volver a crear la conexión de Distributed Cloud VPN afectada.Distributed Cloud crea un solo Cloud Router por Google Cloud proyecto y por región cuando creas tu primera conexión de VPN de Distributed Cloud en eseGoogle Cloud proyecto y región. Todas las conexiones de VPN que se creen posteriormente en ese Google Cloud proyecto y región reutilizarán ese mismo recurso de Cloud Router.
Un recurso de Cloud Router solo se puede borrar cuando no hay interfaces de red secundarias conectadas a él. Distributed Cloud borra automáticamente un Cloud Router cuando borras la última conexión de VPN restante adjunta a él.
Las conexiones de Cloud VPN distribuida solo admiten direcciones IPv4.
Solo puedes crear una conexión de VPN por clúster de Distributed Cloud.
Si tu red local usa varias puertas de enlace de traducción de direcciones de red (NAT), debes configurarlas de modo que tu instalación de Distributed Cloud use una sola dirección IP para el tráfico saliente a tu red de nube privada virtual (VPC).
De forma predeterminada, Distributed Cloud configura un solo cliente de VPN en un solo nodo para conectarse a Google Cloud con dos túneles VPN, también conocidos como VPN con alta disponibilidad en el extremo de Google Cloud . Puedes aumentar aún más la disponibilidad de la conexión de VPN con la marca
--high-availability. Esta marca indica a Distributed Cloud que configure dos clientes de VPN en dos nodos separados para un total de cuatro túneles de VPN.Si quieres cambiar la configuración de una conexión de VPN, debes borrarla y volver a crearla.
Puedes administrar las conexiones de VPN con Google Cloud CLI o la API de Distributed Cloud Edge Container.
Crear una conexión de VPN
Para crear una conexión de VPN de Distributed Cloud, completa los pasos de esta sección.
Para completar esta tarea, debes tener el rol de administrador de contenedores perimetrales (roles/edgecontainer.admin) en tu proyecto de Google Cloud .
gcloud
Usa el comando gcloud edge-cloud container vpn-connections create:
gcloud edge-cloud container vpn-connections create VPN_CONNECTION_NAME \
--project=PROJECT_ID \
--location=REGION \
--cluster=CLUSTER_NAME \
--vpc-network=VPC_NETWORK_NAME \
--nat-gateway-ip=NAT_GATEWAY_IP \
--router=ROUTER_NAME \
--high-availability
Reemplaza lo siguiente:
VPN_CONNECTION_NAME: Es un nombre descriptivo que identifica de forma única esta conexión de VPN.PROJECT_ID: Es el ID del proyecto Google Cloud de destino.REGION: Es la región Google Cloud en la que se crea la zona de Distributed Cloud de destino.CLUSTER_NAME: Es el nombre del clúster de Distributed Cloud de destino.VPC_NETWORK_NAME: Es el nombre de la red de VPC de destino a la que apunta esta conexión de VPN. Esta red debe estar en el mismo proyecto Google Cloud que tu instalación de Distributed Cloud.NAT_GATEWAY_IP: Es la dirección IP de la puerta de enlace NAT para el clúster de destino. Omite esta marca si no usas NAT.ROUTER_NAME(opcional): Especifica un recurso de Cloud Router existente para usar en esta conexión de VPN. De lo contrario, Distributed Cloud crea un Cloud Router automáticamente si aún no existe uno en el proyecto y la región de destino deGoogle Cloud .--high-availability(opcional): Configura esta conexión de VPN para que tenga alta disponibilidad en el clúster. Para ello, configura dos clientes de VPN independientes que se ejecutan en dos nodos separados. Para inhabilitar la alta disponibilidad, omite esta marca.
API
Realiza una solicitud POST al método projects.locations.vpnConnections.create:
POST /v1/PROJECT_ID/locations/REGION/vpnConnections?vpnConnectionId=VPN_CONNECTION_ID&requestId=REQUEST_ID
{
"name": string,
"labels": {
},
"natGatewayIp": NAT_GATEWAY,
"cluster": CLUSTER_PATH,
"vpc": VPC_NETWORK_ID
"enableHighAvailability": HA_ENABLE,
"router": ROUTER_NAME,
}
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto Google Cloud de destino.REGION: Es la Google Cloud región en la que se crea la zona de Distributed Cloud de destino.VPN_CONNECTION_ID: Es un ID único programático que identifica este recurso de grupo de nodos.REQUEST_ID: Es un ID programático único que identifica esta solicitud.VPN_CONNECTION_NAME: Es un nombre descriptivo que identifica de forma única esta conexión de VPN.NAT_GATEWAY: Es la dirección IP de tu puerta de enlace NAT.CLUSTER_PATH: Es la ruta canónica completa al clúster de destino.VPC_NETWORK_ID: Es el ID de la red de VPC de destino.HA_ENABLE: Indica si se debe configurar esta conexión de VPN para alta disponibilidad en el lado del clúster. Si se configura comoTRUE, se configuran dos clientes de VPN independientes que se ejecutan en dos nodos separados.ROUTER_NAME(opcional): Especifica un recurso de Cloud Router existente para usar en esta conexión de VPN. De lo contrario, Distributed Cloud crea un Cloud Router automáticamente si aún no existe uno en el proyecto y la región de destino deGoogle Cloud .
Enumera las conexiones de VPN
Para enumerar las conexiones de VPN aprovisionadas para un clúster de Distributed Cloud, completa los pasos de esta sección.
Para completar esta tarea, debes tener el rol de visualizador de contenedores de Edge (roles/edgecontainer.viewer) en tu proyecto de Google Cloud .
gcloud
Usa el comando gcloud edge-cloud container vpn-connections list:
gcloud edge-cloud container vpn-connections list \
--project=PROJECT_ID \
--location=REGION
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto Google Cloud de destino.REGION: Es la Google Cloud región en la que se crea la zona de Distributed Cloud de destino.
API
Realiza una solicitud GET al método projects.locations.vpnConnections.list:
GET /v1/PROJECT_ID/locations/REGION/vpnConnections?filter=FILTER&pageSize=PAGE_SIZE&orderBy=SORT_BY&pageToken=PAGE_TOKEN
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto Google Cloud de destino.REGION: Es la Google Cloud región en la que se crea la zona de Distributed Cloud de destino.FILTER: Es una expresión que limita los resultados devueltos a valores específicos.PAGE_SIZE: Es la cantidad de resultados que se mostrarán por página.SORT_BY: Es una lista delimitada por comas de los nombres de los campos por los que se ordenan los resultados devueltos. El orden de clasificación predeterminado es ascendente. Para obtener un orden de clasificación descendente, agrega el prefijo~al campo deseado.PAGE_TOKEN: Es un token que se recibe en la respuesta a la última solicitud de lista en el camponextPageTokende la respuesta. Envía este token para recibir una página de resultados.
Obtén información sobre una conexión de VPN
Para obtener información sobre una conexión de Distributed Cloud VPN, completa los pasos de esta sección.
Para completar esta tarea, debes tener el rol de visualizador de contenedores de Edge (roles/edgecontainer.viewer) en tu proyecto de Google Cloud .
gcloud
Usa el comando gcloud edge-cloud container vpn-connections describe:
gcloud edge-cloud container vpn-connections describe VPN_CONNECTION_NAME \
--project=PROJECT_ID \
--location=REGION
Reemplaza lo siguiente:
VPN_CONNECTION_NAME: Es el nombre de la conexión VPN de destino.PROJECT_ID: Es el ID del proyecto Google Cloud de destino.REGION: Es la Google Cloud región en la que se crea la zona de Distributed Cloud de destino.
API
Realiza una solicitud GET al método projects.locations.vpnConnections.get:
GET /v1/PROJECT_ID/locations/REGION/vpnConnections/VPN_CONNECTION_NAME
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto Google Cloud de destino.REGION: Es la Google Cloud región en la que se crea la zona de Distributed Cloud de destino.VPN_CONNECTION_NAME: Es el nombre de la conexión VPN de destino.
Borrar una conexión VPN
Para borrar una conexión de VPN de Distributed Cloud, completa los pasos de esta sección.
Si borras la última conexión de VPN restante asociada con un recurso de Cloud Router que Distributed Cloud creó anteriormente en el proyecto Google Cloud , se borrará automáticamente el recurso de Cloud Router asociado. Sin embargo, en esta situación, solo se borran automáticamente los recursos de Cloud Router que crea automáticamente Distributed Cloud. Distributed Cloud no borra los recursos de Cloud Router existentes que se especifican con la marca --router.
Para completar esta tarea, debes tener el rol de administrador de contenedores perimetrales (roles/edgecontainer.admin) en tu proyecto de Google Cloud .
gcloud
Usa el comando gcloud edge-cloud container vpn-connections delete:
gcloud edge-cloud container vpn-connections delete VPN_CONNECTION_NAME \
--location=REGION \
--project=PROJECT_ID
Reemplaza lo siguiente:
VPN_CONNECTION_NAME: Es un nombre descriptivo que identifica de forma única esta conexión de VPN.REGION: Es la región Google Cloud en la que se crea la zona de Distributed Cloud de destino.PROJECT_ID: Es el ID del proyecto Google Cloud de destino.
API
Realiza una solicitud DELETE al método projects.locations.vpnConnections.delete:
DELETE /v1/PROJECT_ID/locations/REGION/vpnConnections/VPN_CONNECTION_NAME?requestId=REQUEST_ID
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto Google Cloud de destino.REGION: Es la Google Cloud región en la que se crea la zona de Distributed Cloud de destino.VPN_CONNECTION_NAME: Es el nombre de la conexión VPN de destino.REQUEST_ID: Es un ID programático único que identifica esta solicitud.
Administra las conexiones de VPN entre proyectos
Distributed Cloud también te permite crear conexiones de VPN a redes de VPC en un proyecto Google Cloud que es diferente del proyecto Google Cloud que contiene tu clúster de Distributed Cloud.
Requisitos previos
Debes cumplir con los requisitos previos de esta sección antes de poder crear conexiones VPN entre proyectos.
Permisos de la cuenta de la persona que llama
La cuenta de usuario del llamador en el proyecto de VPC de destino debe tener los siguientes permisos. Estos permisos se encuentran encapsulados en el rol de administrador de IAM del proyecto (roles/resourcemanager.projectIamAdmin):
resourcemanager.projects.getresourcemanager.projects.getIamPolicyresourcemanager.projects.setIamPolicy
Para obtener información sobre cómo configurar roles y permisos de IAM, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Permisos de la cuenta de servicio de Distributed Cloud
Para permitir que Distributed Cloud cree los recursos de Cloud Router y Cloud VPN en el proyecto de VPC de destino que habilita la conexión de VPN entre proyectos, debes otorgar el rol de administrador de redes de Compute (roles/compute.networkAdmin) a la cuenta de servicio de Distributed Cloud en tu clúster de Distributed Cloud.
Para otorgar el rol de administrador de red de Compute, haz lo siguiente.
gcloud
Usa el comando gcloud projects add-iam-policy-binding:
gcloud projects add-iam-policy-binding VPC_PROJECT_ID \
--member="serviceAccount:service-PROJECT_NUM@gcp-sa-edgecontainer.iam.gserviceaccount.com" \
--role="roles/compute.networkAdmin" \
--project=VPC_PROJECT_ID
Reemplaza lo siguiente:
VPC_PROJECT_ID: Es el ID del proyecto de VPC de destino.PROJECT_NUM: Es el número del proyecto de Distributed Cloud Google Cloud de destino.
Crea una conexión de VPN entre proyectos
Para crear una conexión de VPN a una red de VPC en un proyecto deGoogle Cloud diferente, completa los pasos de esta sección.
gcloud
Usa el comando gcloud edge-cloud container vpn-connections create:
gcloud edge-cloud container vpn-connections create VPN_CONNECTION_NAME \
--project=PROJECT_ID \
--location=REGION \
--cluster=CLUSTER_NAME \
--vpc-project=VPC_PROJECT_ID \
--vpc-network=VPC_NETWORK_NAME \
--nat-gateway-ip=NAT_GATEWAY_IP \
--high-availability
Reemplaza lo siguiente:
VPN_CONNECTION_NAME: Es un nombre descriptivo que identifica de forma única esta conexión de VPN.PROJECT_ID: Es el ID del proyecto del clúster de Distributed Cloud Google Cloud de destino.REGION: Es la Google Cloud región en la que se crea la zona de Distributed Cloud de destino.CLUSTER_NAME: Es el nombre del clúster de Distributed Cloud de destino.VPC_PROJECT_ID: Es el ID del proyectoGoogle Cloud de destino que contiene la red de VPC de destino.VPC_NETWORK_NAME: Es el nombre de la red de VPC de destino a la que apunta esta conexión de VPN.NAT_GATEWAY_IP: Es la dirección IP de la puerta de enlace NAT para el clúster de destino. Omite esta marca si no usas NAT.--high-availability(opcional): Configura esta conexión de VPN para alta disponibilidad en el lado del clúster configurando dos clientes de VPN independientes que se ejecutan en dos nodos independientes. Para inhabilitar la alta disponibilidad, omite esta marca.
API
Realiza una solicitud POST al método projects.locations.vpnConnections.create:
POST /v1/PROJECT_ID/locations/REGION/vpnConnections?vpnConnectionId=VPN_CONNECTION_ID&requestId=REQUEST_ID
{
"name": string,
"labels": {
},
"natGatewayIp": NAT_GATEWAY,
"cluster": CLUSTER_PATH,
"vpc": VPC_NETWORK_ID,
"vpcProject": VPC_PROJECT_ID,
"vpcServiceAccount": var>VPC_PROJECT_SERVICE_ACCOUNT,
"enableHighAvailability": HA_ENABLE,
}
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto Google Cloud de destino.REGION: Es la Google Cloud región en la que se crea la zona de Distributed Cloud de destino.VPN_CONNECTION_ID: Es un ID único programático que identifica este recurso de grupo de nodos.REQUEST_ID: Es un ID programático único que identifica esta solicitud.VPN_CONNECTION_NAME: Es un nombre descriptivo que identifica de forma única esta conexión de VPN.NAT_GATEWAY: Es la dirección IP de tu puerta de enlace NAT.CLUSTER_PATH: Es la ruta canónica completa al clúster de destino.VPC_NETWORK_ID: Es el ID de la red de VPC de destino.VPC_PROJECT_ID: Es el ID del proyecto de destinoGoogle Cloud que contiene la red de VPC de destino.HA_ENABLE: Indica si se debe configurar esta conexión de VPN para alta disponibilidad en el lado del clúster. Si se configura comoTRUE, se configuran dos clientes de VPN independientes que se ejecutan en dos nodos separados.
Registros de auditoría de Cloud para conexiones VPN entre proyectos
Cuando creas una conexión de VPN entre proyectos, los registros de auditoría de Cloud se escriben de la siguiente manera:
- Los registros de auditoría de tu clúster de Distributed Cloud registran la operación de larga duración, la autenticación y la información de autorización para la conexión de VPN entre proyectos. Esta información incluye el llamador de la operación de creación y los permisos que se le otorgaron o denegaron.
- Los registros de auditoría del proyecto de VPC de destino registran información sobre los Google Cloud recursos que habilitan la conexión VPN entre proyectos, como los recursos de Cloud Router y Cloud VPN. El llamador que accede a estos recursos es la cuenta de servicio de Distributed Cloud a la que le otorgaste el rol de agente de servicio de Edge Container (
roles/edgecontainer.serviceAgent).
Limitaciones de las conexiones VPN
Si modificas el grupo de nodos del clúster en el que creaste una conexión de VPN en particular, debes borrar y volver a crear esa conexión de VPN. De lo contrario, es posible que se produzcan comportamientos inesperados, como los siguientes:
- Pérdida intermitente de conectividad VPN
- No se pueden crear conexiones VPN en los otros clústeres de la zona de Distributed Cloud.
Limitaciones de las conexiones VPN entre proyectos
Además, las conexiones VPN entre proyectos tienen las siguientes limitaciones:
- El recurso de conexión de VPN entre proyectos solo existe en tu clúster de Distributed Cloud.
- Si modificas los permisos de la cuenta de servicio de Distributed Cloud en el proyecto de VPC de destino, no podrás borrar la conexión de VPN entre proyectos de tu clúster de Distributed Cloud.
¿Qué sigue?
- Implementa cargas de trabajo en Google Distributed Cloud
- Administrar zonas
- Cómo crear y administrar clústeres
- Crear y administrar grupos de nodos
- Administra máquinas virtuales
- Administra cargas de trabajo de GPU