Clúster de GKE con Cloud TPU mediante una VPC compartida
En esta guía, se describe cómo hacer las siguientes acciones:
- Configura un clúster de GKE con Cloud TPU mediante una red de VPC compartida.
- Configura las APIs y los rangos de IP necesarios para garantizar la comunicación entre el clúster, la VPC compartida y los servicios administrados por Google.
- Crea rangos de CIDR secundarios para los pods y los servicios del clúster.
Conceptos
Estos conceptos se usarán con frecuencia en esta guía:
Proyecto host: Es un proyecto que contiene una o más redes de VPC compartida. En esta guía, este proyecto contendrá tu VPC compartida.
Proyecto de servicio: Es un proyecto que un administrador de la VPC compartida vincula a un proyecto host. Este adjunto le permite participar en la VPC compartida. En esta guía, este proyecto contendrá tu clúster de Cloud TPU.
Requisitos
Habilita las APIs
Habilita las siguientes APIs en la consola de Google Cloud para tu proyecto de host:
Habilita las siguientes APIs en la consola de Google Cloud para tu proyecto de servicio:
Configura el rango de IP para el intercambio de tráfico entre VPC y los servicios administrados de Google
Sigue estos pasos para reservar un rango de IP en la red de VPC compartida en el proyecto host. Todos los servicios administrados por Google en esta red de VPC usarán el rango. Cloud TPU es uno de los servicios administrados de Google.
Muestra una lista de los rangos de IP existentes en la red de VPC compartida.
$ gcloud beta compute networks list-ip-addresses network \ --project=host-project-id
Elige un rango 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 intercambio de tráfico de VPC. El nombre se usará en el siguiente paso.
Crea una conexión de intercambio de tráfico entre redes de VPC entre el proyecto host y los servicios administrados de Google.
$ gcloud beta services vpc-peerings connect \ --service=servicenetworking.googleapis.com \ --network=network \ --ranges=peering-name \ --project=host-project-id
Crea rangos de IP secundarios para el clúster
En tu red de VPC compartida, selecciona o crea una subred y agrega dos rangos de CIDR secundarios para los pods y servicios del clúster.
Estos rangos son para los pods y los servicios de tu clúster, respectivamente. Los nombres de rango se usarán en los siguientes pasos.
subnet será la subred en el network de tu proyecto host.
tier-1-name será el nombre del rango secundario que usan los pods de GKE en subnet.
tier-2-name será el nombre del rango secundario que usan los servicios de GKE en subnet.
Crea un clúster de GKE con Cloud TPU
En el siguiente comando, se muestra cómo crear un GKE con los rangos de CIDR existentes en tu red de VPC compartida, lo que habilita 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 del comando
gcloud beta container clusters create
para obtener más detalles sobre estas marcas.
Sigue los pasos de la especificación del pod en la guía Ejecuta aplicaciones de Cloud TPU en GKE para compilar una tarea que use recursos de Cloud TPU.
Realiza una limpieza
Una vez que termines con Cloud TPU en GKE, limpia los recursos a fin de evitar que se apliquen cargos adicionales a la cuenta de Facturación de Cloud
Borra el rango de IP de intercambio de tráfico reservado.
$ gcloud beta compute addresses delete peering-name \ --global \ --project=host-project-id
Sigue las instrucciones sobre limpieza en Cómo configurar clústeres con una VPC compartida para borrar el clúster y los recursos de red.