Clúster de GKE con TPU de Cloud que usa una VPC compartida
En esta guía se explica cómo hacer lo siguiente:
- Configura un clúster de GKE de Cloud TPU con una red de VPC compartida.
- Configura las APIs y los intervalos de IPs necesarios para asegurar la comunicación entre el clúster, la VPC compartida y los servicios gestionados de Google.
- Crea intervalos CIDR secundarios para los pods y los servicios del clúster.
Conceptos
Estos conceptos se usarán con frecuencia a lo largo de esta guía:
Proyecto host: proyecto que contiene una o varias redes de VPC compartidas. En esta guía, este proyecto contendrá tu VPC compartida.
Proyecto de servicio: proyecto vinculado a un proyecto host por un administrador de VPC compartida. Este adjunto le permite participar en la VPC compartida. En esta guía, este proyecto contendrá tu clúster de Cloud TPU.
Requisitos
Habilitar APIs
Habilita las siguientes APIs en la Google Cloud consola de tu proyecto host:
Habilita las siguientes APIs en la Google Cloud consola de tu proyecto de servicio:
Configurar el intervalo de direcciones IP para el emparejamiento de VPC con servicios gestionados de Google
Sigue estos pasos para reservar un intervalo de IP en la red de VPC compartida del proyecto host. Todos los servicios gestionados de Google de esta red VPC usarán el intervalo. TPU de Cloud es uno de los servicios gestionados de Google.
Lista los intervalos de IP de la red de VPC compartida.
$ gcloud beta compute networks list-ip-addresses network \ --project=host-project-id
Elige un intervalo disponible y resérvalo en la red de VPC compartida.
$ gcloud beta compute addresses create peering-name \ --global \ --prefix-length=16 \ --network=network \ --purpose=VPC_PEERING \ --project=host-project-id
peering-name especifica el nombre de la conexión de VPC peering. El nombre se usará en el siguiente paso.
Crea una conexión de emparejamiento de redes de VPC entre el proyecto host y los servicios gestionados por Google.
$ gcloud beta services vpc-peerings connect \ --service=servicenetworking.googleapis.com \ --network=network \ --ranges=peering-name \ --project=host-project-id
Crear intervalos de IP secundarios para el clúster
En tu red de VPC compartida, selecciona o crea una subred y añade dos intervalos CIDR secundarios para los pods y los servicios del clúster.
Estos intervalos corresponden a los pods y servicios de tu clúster, respectivamente. Los nombres de los intervalos se usarán en los pasos siguientes.
subnet será la subred de network de tu proyecto del host.
tier-1-name será el nombre del intervalo secundario que usen los pods de GKE en subnet.
tier-2-name será el nombre del intervalo secundario que utilicen los servicios de GKE en subnet.
Crear un clúster de GKE con Cloud TPU
El siguiente comando muestra cómo crear un clúster de GKE con los intervalos CIDR de tu red de VPC compartida y habilitar Cloud TPU:
$ gcloud beta container clusters create cluster-name \ --enable-ip-alias \ --network projects/host-project-id/global/networks/network \ --subnetwork projects/host-project-id/regions/region/subnetworks/subnet \ --cluster-secondary-range-name tier-1-name \ --services-secondary-range-name tier-2-name \ --scopes=cloud-platform \ --enable-tpu \ --enable-tpu-service-networking \ --project=service-project-id
- Consulta la guía de referencia de comandos
gcloud beta container clusters createpara obtener más información sobre estas marcas.
Sigue los pasos de la sección Especificación de pod de la guía Ejecutar aplicaciones de TPU de Cloud en GKE para crear un trabajo que use recursos de TPU de Cloud.
Limpieza
Cuando hayas terminado de usar TPU de Cloud en GKE, elimina los recursos para evitar que se apliquen cargos adicionales a tu cuenta de facturación de Cloud.
Elimina el intervalo de direcciones IP de intercambio de tráfico reservado.
$ gcloud beta compute addresses delete peering-name \ --global \ --project=host-project-id
Sigue las instrucciones de la sección Limpieza del artículo Configurar clústeres con una VPC compartida para eliminar el clúster y los recursos de red.