Questa pagina mostra come trasferire dati tra due file system POSIX. Comuni di questi casi d'uso includono:
- Passa al cloud e HPC ibrido: trasferisci rapidamente set di dati di grandi dimensioni da on-premise al cloud per l'elaborazione.
- Migrazione e sincronizzazione in Filestore: esegui la migrazione o la sincronizzazione dei dati da un file system on-premise a Filestore.
- Trasferimento file gestito: trasferisci i dati in modo sicuro e affidabile tra data center o tra due file system in cloud.
Linee guida sul rendimento del trasferimento
Le seguenti linee guida possono aiutarti a massimizzare le prestazioni durante il file system ai trasferimenti del file system.
Deployment degli agenti
In generale, consigliamo di utilizzare tre agenti in ciascuna delle origini dati pool di agenti di destinazione. Monitora il trasferimento e, se necessario, aggiungi altri agenti. Ogni agente ha bisogno di 4 vCPU e 8 GiB di RAM.
Se stai eseguendo la migrazione a un'istanza Filestore, Filestore
consiglia di utilizzare il tipo di istanza n2-standard-8
per ogni agente. Specifica
nconnect=2
quando installi l'istanza su una VM di Compute Engine. Consulta
Linee guida sulle prestazioni di Filestore per
e scoprire di più su come ottimizzare e testare le prestazioni delle istanze.
Trasferimento di grandi quantità di file di piccole dimensioni
Per migliorare le prestazioni durante il trasferimento di un numero elevato di file di piccole dimensioni, consigliamo di suddividere i file in più directory ed evitare una singola con milioni di file.
Prima di iniziare
Prima di poter eseguire le attività descritte in questa pagina, completa le passaggi del prerequisito.
Crea pool di agenti e installa gli agenti
Per i trasferimenti da un file system all'altro, devi creare pool di agenti e agenti sia per il file system di origine che per quello di destinazione. Agenti per l'agente di origine il pool deve essere installato su macchine o VM che hanno accesso al file di origine di un sistema operativo completo. Gli agenti per il pool di agenti di destinazione devono essere installati sulle macchine o VM che hanno accesso al file system di destinazione.
Non includere informazioni sensibili come informazioni che consentono l'identificazione personale (PII) o dati di sicurezza nel prefisso dell'ID agente o nel nome del pool di agenti. I nomi delle risorse possono essere propagati ai nomi di altre risorse Google Cloud e potrebbero essere esposti a sistemi interni di Google al di fuori del tuo progetto.
Crea un pool di agenti di origine
Crea un pool di agenti di origine utilizzando uno dei seguenti metodi:
Interfaccia a riga di comando gcloud
Crea un pool di agenti di origine eseguendo:
gcloud transfer agent-pools create SOURCE_AGENT_POOL
Sostituisci SOURCE_AGENT_POOL con il nome che vuoi assegnare dal pool di agenti di origine.
Console Google Cloud
Nella console Google Cloud, vai alla pagina Pool di agenti.
Viene visualizzata la pagina Pool di agenti, che elenca i pool di agenti esistenti.
Fai clic su Crea un altro pool.
Inserisci un nome per il pool.
Fai clic su Crea.
Installa agenti per il pool di agenti di origine
Installa gli agenti per il pool di agenti di origine su una macchina o una VM che ha accesso a il file system di origine:
Interfaccia a riga di comando gcloud
Installa gli agenti per il pool di agenti di origine eseguendo:
gcloud transfer agents install --pool=SOURCE_AGENT_POOL --count=NUMBER_OF_AGENTS \
--mount-directories=MOUNT_DIRECTORIES
Sostituisci quanto segue:
- SOURCE_AGENT_POOL con il nome del pool di agenti di origine.
- NUMBER_OF_AGENTS con il numero di agenti che vuoi per il pool di agenti di origine. determinare il numero ottimale di agenti per il tuo ambiente, vedi Requisiti e best practice degli agenti.
- MOUNT_DIRECTORIES con un elenco di directory separate da virgole attive il file system di origine da cui copiare. Se ometti questo flag, viene montata la l'intero file system, presenti un rischio per la sicurezza.
Console Google Cloud
Nella console Google Cloud, vai alla pagina Pool di agenti.
Viene visualizzata la pagina Pool di agenti, che elenca i pool di agenti esistenti.
Fai clic sul nome del pool di agenti di origine appena creato.
Nella scheda Agenti, fai clic su Installa agente.
Segui le istruzioni nella console Google Cloud per installare Docker e avviare l'agente.
Crea un pool di agenti di destinazione e installa gli agenti
Ripeti i passaggi precedenti per creare un pool di agenti di destinazione e installare gli agenti.
crea un bucket Cloud Storage come intermediario
I trasferimenti da file system a file system richiedono un bucket Cloud Storage come intermediario per il trasferimento dei dati.
Crea un cluster Cloud Storage il bucket della classe Standard con le seguenti impostazioni:
- Crittografia: puoi specificare un chiave di crittografia gestita dal cliente (CMEK). Altrimenti, Viene utilizzata una chiave di proprietà di Google.
- Controllo delle versioni degli oggetti, Blocco bucket e blocchi degli oggetti predefiniti: Keep queste funzionalità sono state disattivate.
Concedi le autorizzazioni e i ruoli utilizzando uno dei seguenti metodi:
- Concedi
l'account di servizio Storage Transfer Service, il ruolo Storage Admin
(
roles/storage.admin
) per il bucket. Usa
gcloud transfer authorize
per autorizzare il tuo account per tutti Funzionalità di Storage Transfer Service. Questo comando concede le autorizzazioni di amministratore dello spazio di archiviazione per l'intero progetto:gcloud transfer authorize --add-missing
- Concedi
l'account di servizio Storage Transfer Service, il ruolo Storage Admin
(
Creare un job di trasferimento
Interfaccia a riga di comando gcloud
Per creare un trasferimento dal file system di origine al file system di destinazione: corsa
gcloud transfer jobs create SOURCE_DIRECTORY DESTINATION_DIRECTORY \
--source-agent-pool=SOURCE_AGENT_POOL \
--destination-agent-pool=DESTINATION_AGENT_POOL \
--intermediate-storage-path= gs://STORAGE_BUCKET/FOLDER/
Sostituisci le seguenti variabili:
- SOURCE_DIRECTORY con il percorso della directory di origine.
- DESTINATION_DIRECTORY con il percorso della directory di destinazione.
- SOURCE_AGENT_POOL con il nome del pool di agenti di origine.
- DESTINATION_AGENT_POOL con il nome del pool di agenti di destinazione.
- STORAGE_BUCKET con il nome del bucket Cloud Storage.
- FOLDER con il nome della cartella in cui inserire i dati in cui è stato trasferito l'account.
Quando avvii un job di trasferimento, il sistema calcola innanzitutto i dati di origine e di destinazione per determinare quelli di origine nuovi o aggiornati dal trasferimento precedente. Vengono trasferiti solo i nuovi dati.
Librerie client
Vai
Java
Node.js
Python
Gestisci bucket intermedi
Al termine di un job di trasferimento, Storage Transfer Service salva nel bucket log di trasferimento che elencano i dati trasferiti e quelli di cui non è stato eseguito il trasferimento. Al termine del trasferimento, vengono avviate automaticamente le attività di pulizia per eliminare i dati intermedi. In alcuni casi, le attività di pulizia non eliminano tutti i dati nel bucket. Per eliminare i dati che non sono stati cancellati durante la pulizia, attieniti alle istruzioni riportate di seguito: eliminare i dati manualmente o impostare una regola del ciclo di vita per eliminarli automaticamente.
Pulizia manuale
Elimina i dati dal bucket intermedio eseguendo i seguenti comandi in base al tipo di dati che vuoi eliminare.
Cancellare nel bucket intermediario i dati che non sono stati eliminati durante esegui questo comando:
gcloud storage rm gs://STORAGE_BUCKET/PREFIX**
Per eliminare tutti i dati, inclusi i log di trasferimento, specifica la radice del utilizzando il carattere jolly match-all (*).
gcloud storage rm gs://STORAGE_BUCKET/*
Per eliminare il bucket, esegui il comando seguente:
gcloud storage rm gs://STORAGE_BUCKET
Sostituisci le seguenti variabili:
STORAGE_BUCKET con il nome del bucket intermedio.
PREFIX con il nome della cartella in cui sono stati trasferiti i dati all'interno del bucket intermedio.
Imposta una regola del ciclo di vita
Per eliminare i dati che non sono stati cancellati dal ciclo di pulizia automatica, imposta un'opzione
regola del ciclo di vita per il bucket Cloud Storage. Utilizza la
age
condizione per cancellare i dati intermedi in
il bucket specificando un periodo più lungo rispetto al job di trasferimento più lungo che
e utilizza il bucket come intermediario. Se l'età specificata
è più breve del tempo necessario per scaricare il file
di destinazione, il trasferimento del file non va a buon fine.
Facoltativamente, utilizza la condizione matchesPrefix
per cancellare i dati nella cartella specificata per il bucket intermedio. A
eliminare i log di trasferimento insieme ai dati nel bucket, matchesPrefix
non è obbligatoria.
Conservazione dei metadati dei file
Per conservare i metadati dei file, inclusi UID numerico, GID, MODE e link simbolici:
Interfaccia a riga di comando gcloud
Utilizza il campo --preserve-metadata
per specificare il comportamento di conservazione per
questo trasferimento. Le opzioni applicabili ai trasferimenti del file system sono: gid
,
mode
, symlink
e uid
.
API REST
Specifica le opzioni appropriate in una
metadataOptions
.
Consulta Conservare gli attributi POSIX facoltativi per ulteriori informazioni.
Trasferimento di esempio con gcloud CLI
In questo esempio, i dati vengono trasferiti dalla directory /tmp/datasource
sulla VM1 a
/tmp/destination
su VM2.
Configura l'origine del trasferimento.
Crea il pool di agenti di origine:
gcloud transfer agent-pools create source_agent_pool
Nella VM1, installa gli agenti per
source_agent_pool
eseguendo:gcloud transfer agents install --pool=source_agent_pool \ --count=1 \ --mount-directories="/tmp/datasource"
Configura la destinazione del trasferimento.
Crea il pool di agenti di destinazione:
gcloud transfer agent-pools create destination_agent_pool
Nella VM2, installa gli agenti per
destination_agent_pool
eseguendo:gcloud transfer agents install --pool=destination_agent_pool \ --count=3 \ --mount-directories="/tmp/destination"
Creare un bucket Cloud Storage intermediario.
Crea un bucket denominato
my-intermediary-bucket
:gcloud storage buckets create gs://my-intermediary-bucket
Autorizza il tuo account per tutte le funzionalità di Storage Transfer Service entro il giorno in esecuzione:
gcloud transfer authorize --add-missing
Crea un job di trasferimento eseguendo:
gcloud transfer jobs create posix:///tmp/datasource posix:///tmp/destination \ --source-agent-pool=source_agent_pool \ --destination-agent-pool=destination_agent_pool \ --intermediate-storage-path=gs://my-intermediary-bucket
Passaggi successivi
- Scopri di più sulla gestione dei lavori.