Cluster GKE con Cloud TPU mediante un VPC condiviso

Questa guida descrive come:

Concetti

Questi concetti verranno utilizzati di frequente in questa guida:

  • Progetto host: un progetto che contiene una o più reti VPC condiviso. In questa guida, questo progetto conterrà il tuo VPC condiviso.

  • Progetto di servizio: un progetto collegato a un progetto host da un amministratore di VPC condiviso. Questo collegamento gli consente di partecipare al VPC condiviso. In questa guida, questo progetto conterrà il tuo cluster Cloud TPU.

Requisiti

Abilita API

  1. Abilita le seguenti API nella console Google Cloud per il tuo progetto host:

  2. Abilita le seguenti API nella console Google Cloud per il tuo progetto di servizio:

Configura l'intervallo IP per il peering VPC ai servizi gestiti da Google

Segui questi passaggi per prenotare un intervallo IP nella rete VPC condiviso nel progetto host. L'intervallo verrà utilizzato da tutti i servizi gestiti da Google in questa rete VPC. Cloud TPU è uno dei servizi gestiti da Google.

  1. Elenca gli intervalli IP esistenti nella rete VPC condiviso.

    $ gcloud beta compute networks list-ip-addresses network \
    --project=host-project-id
    
  2. Scegli un intervallo disponibile e prenotalo nella rete VPC condiviso.

    $ gcloud beta compute addresses create peering-name \
      --global \
      --prefix-length=16 \
      --network=network \
      --purpose=VPC_PEERING \
      --project=host-project-id
    

    peering-name specifica il nome della connessione di peering VPC. Il nome verrà utilizzato nel passaggio successivo.

  3. Crea una connessione peering di rete VPC tra il progetto host e i servizi gestiti di Google.

    $ gcloud beta services vpc-peerings connect \
      --service=servicenetworking.googleapis.com \
      --network=network \
      --ranges=peering-name \
      --project=host-project-id
    

Crea intervalli IP secondari per il cluster

Nella tua rete VPC condiviso, seleziona o crea una subnet e aggiungi due intervalli CIDR secondari per i pod e i servizi del cluster.

Questi intervalli riguardano rispettivamente i pod e i servizi del cluster. I nomi degli intervalli verranno utilizzati nei passaggi seguenti.

  • subnet sarà la subnet nella network del progetto host.

  • tier-1-name sarà il nome dell'intervallo secondario utilizzato dai pod GKE in subnet.

  • tier-2-name sarà il nome dell'intervallo secondario utilizzato dai servizi GKE in subnet.

Crea un cluster GKE con Cloud TPU

Il comando seguente mostra come creare un GKE utilizzando gli intervalli CIDR esistenti nella rete VPC condiviso, abilitando 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

Segui i passaggi relativi alle specifiche dei pod nella guida Eseguire applicazioni Cloud TPU su GKE per creare un job che utilizza le risorse Cloud TPU.

Esegui la pulizia

Quando hai finito di utilizzare Cloud TPU su GKE, elimina le risorse per evitare addebiti aggiuntivi sul tuo account di fatturazione Cloud.

  1. Elimina l'intervallo IP di peering riservato.

    $ gcloud beta compute addresses delete peering-name \
      --global \
      --project=host-project-id
    
  2. Segui le istruzioni in Pulizia in Configurazione di cluster con VPC condiviso per eliminare il cluster e le risorse di rete.