Connessione ai bucket di Cloud Storage
Questa pagina illustra Cloud Storage come opzione per l'archiviazione dei dati di machine learning e dell'output dell'addestramento e descrive come concedere a Cloud TPU l'accesso agli oggetti dati su Cloud Storage.
Prima di iniziare
Per accedere a un bucket Cloud Storage, hai bisogno di un service account Cloud TPU.
Crea un account di servizio Cloud TPU per il tuo progetto.
gcloud beta services identity create --service tpu.googleapis.com --project project-id
Il comando restituisce un account di servizio Cloud TPU con il seguente formato:
service-project-number@cloud-tpu.iam.gserviceaccount.com
Segui le istruzioni riportate nelle guide di avvio rapido di Cloud TPU o in Gestire le TPU per configurare il tuo Google Cloud progetto e creare le risorse VM e TPU di Cloud TPU.
Scrivi dati in Cloud Storage
Console
Vai alla pagina Cloud Storage nella console Google Cloud.
Crea un nuovo bucket specificando le seguenti opzioni:
- Un nome univoco a tua scelta.
- Classe di archiviazione predefinita:
Standard
- Posizione: la regione in cui hai creato la Cloud TPU. Per ulteriori informazioni sulle regioni e sulla disponibilità delle TPU, consulta Regioni e zone TPU.
Interfaccia a riga di comando
Utilizza il comando
gcloud storage buckets create
per creare un bucket Cloud Storage:gcloud storage buckets create gs://bucket-name --location region
dove:
region è la regione in cui hai creato la Cloud TPU. Per saperne di più sulle regioni e sulla disponibilità delle TPU, consulta Regioni e zone delle TPU.
bucket-name è il nome del bucket che vuoi creare.
Utilizza il comando
gcloud storage cp
per scrivere file nel bucket Cloud Storage:gcloud storage cp -r local-data-dir gs://bucket-name
dove local-data-dir è un percorso locale per i dati. Ad esempio:
$HOME/your-data
Concedi a Cloud TPU l'accesso a Cloud Storage
Devi concedere a Cloud TPU l'accesso in lettura e scrittura ai tuoi oggetti Cloud Storage. Per farlo, devi concedere l'accesso richiesto all'account di servizio Cloud TPU utilizzato da Cloud TPU. Le sezioni seguenti mostrano come trovare l'account di servizio Cloud TPU e grante l'accesso necessario.
Autorizza l'account di servizio Cloud TPU
Il modo consigliato per autorizzare l'account di servizio Cloud TPU è utilizzare elenchi di controllo dell'accesso (ACL) granulari. Puoi anche concedere autorizzazioni più ampie utilizzando le autorizzazioni IAM.
Utilizzo di ACL granulari per Cloud TPU (opzione consigliata)
Se archivi i dati di addestramento su Cloud Storage, l'account di servizio Cloud TPU deve disporre dell'autorizzazione di lettura e scrittura sul bucket.
Console
Vai alla pagina del browser di Cloud Storage per visualizzare i bucket di tua proprietà.
Seleziona il bucket di cui vuoi modificare l'ACL.
Seleziona la scheda Autorizzazioni.
Seleziona Concedi accesso per aggiungere una nuova autorizzazione e digita il nome completo dell'account di servizio nella casella di modifica Nuove entità.
Se leggi da questo bucket, devi autorizzare l'account di servizio TPU a leggere dalla risorsa. Per farlo, concedi all'account di servizio il ruolo
Storage Legacy > Storage Legacy Bucket Reader
.Se scrivi in questo bucket, devi autorizzare l'account di servizio TPU a scrivere nella risorsa. Per farlo, concedi all'account di servizio il ruolo
Storage Legacy > Storage Legacy Bucket Writer
.
Interfaccia a riga di comando
Se stai leggendo da questo bucket, concedi l'autorizzazione di lettura per l'account di servizio Cloud TPU:
gcloud storage buckets add-iam-policy-binding gs://bucket-name --member=serviceAccount:service-account --role=roles/storage.objectViewer
Se scrivi in questo bucket, concedi l'autorizzazione in scrittura per l'account di servizio Cloud TPU:
gcloud storage buckets add-iam-policy-binding gs://bucket-name --member=serviceAccount:service-account --role=roles/storage.objectCreator
Utilizzo delle autorizzazioni IAM per Cloud TPU (alternativa)
Se vuoi concedere autorizzazioni più ampie invece di concedere esplicitamente l'accesso a ogni bucket, puoi concedere il ruolo Amministratore Storage di Identity Access Management (IAM) all'account di servizio Cloud TPU.
Fai clic sul pulsante Concedi l'accesso per aggiungere entità al progetto.
Inserisci i nomi dell'account di servizio Cloud TPU nella casella di testo Principali.
Fai clic sull'elenco a discesa Ruoli.
Attiva i seguenti ruoli:
Progetto > Visualizzatore
Spazio di archiviazione > Amministratore archiviazione
Cloud Storage FUSE
Cloud Storage FUSE ti consente di montare e accedere ai bucket Cloud Storage come file system locali. In questo modo, le applicazioni possono leggere e scrivere oggetti nel bucket utilizzando la semantica del filesystem standard.
Consulta la documentazione di Cloud Storage FUSE per informazioni dettagliate sul funzionamento di Cloud Storage FUSE e una descrizione di come le operazioni di Cloud Storage FUSE vengono mappate alle operazioni di Cloud Storage. Puoi trovare altre informazioni su come utilizzare Cloud Storage FUSE, ad esempio su come installare l'interfaccia a riga di comando gcsfuse e montare i bucket su GitHub.
Esegui la pulizia
Se non l'hai ancora fatto, scollega la Cloud TPU:
(vm)$ exit
In Cloud Shell, elimina la Cloud TPU:
gcloud compute tpus tpu-vm delete tpu-name --zone=zone
Verifica che la VM sia stata eliminata eseguendo
gcloud compute tpus tpu-vm list
. L'eliminazione potrebbe richiedere alcuni minuti.gcloud compute tpus tpu-vm list --zone=zone
Una risposta simile alla seguente indica che le istanze sono state eliminate correttamente.
Listed 0 items
Esegui il comando seguente per eliminare il bucket Cloud Storage e i relativi contenuti, sostituendo bucket-name con il nome del bucket che hai creato:
gcloud storage rm --recursive gs://bucket-name
Passaggi successivi
- Per ulteriori informazioni sulla creazione di bucket Cloud Storage e sulla scrittura di dati in questi bucket, consulta la documentazione sulla creazione di bucket Cloud Storage.
- Per ulteriori informazioni sui service account, consulta la panoramica dell'autenticazione.