Prima di creare un job di trasferimento del file system, dovrai abilitare le API richieste e installare Docker.
Se ricevi errori durante la configurazione iniziale, verifica che l'utente con cui hai eseguito l'accesso disponga delle autorizzazioni necessarie per eseguire la procedura di configurazione. In molti casi, queste autorizzazioni non sono disponibili per tutti gli utenti e potresti dover contattare un amministratore del progetto per ricevere assistenza.
Requisiti di sistema
Per utilizzare Storage Transfer Service per i trasferimenti di file system, devi disporre di:
Un'origine e/o una destinazione conformi a POSIX.
Un bucket Cloud Storage senza un criterio di conservazione. Per eseguire il trasferimento a un bucket con un criterio di conservazione, vedi Trasferire a un bucket con un criterio di conservazione.
Le porte TCP 80 (HTTP) e 443 (HTTPS) sono aperte per le connessioni in uscita.
I requisiti della macchina dell'agente di trasferimento sono elencati di seguito:
Un server Linux o una macchina virtuale a 64 bit supportato da Docker che può accedere ai dati che prevedi di trasferire. Docker Community Edition supporta i sistemi operativi CentO, Debian, Fedora e Ubuntu.
Per utilizzare altri sistemi operativi Linux, consulta Docker Enterprise.
Almeno 8 GB di memoria per container e almeno quattro CPU per essere più efficaci.
Tutti i vincoli a livello di sistema o di utente sul numero di ID processo consentiti, come configurati con
ulimit -u
, devono tenere conto del numero di agenti che vuoi eseguire. Ogni processo dell'agente può creare fino a centinaia di centinaia di thread. Consigliamo di rimuovere i limiti degli ID processo durante l'esecuzione degli agenti di trasferimento.I clienti che utilizzano Podman per creare container agente devono specificare un valore
--pids-limit
sufficientemente elevato per supportare i thread degli agenti Storage Transfer Service. Il valore predefinito di--pids-limit
è 2048, il che può causare problemi durante l'esecuzione di più agenti. Ti consigliamo di impostare--pids-limit=-1
per consentire ID di processo illimitati per container.
Limitazioni di scalabilità su job e agenti
Storage Transfer Service prevede le seguenti restrizioni di scalabilità per i job e gli agenti di trasferimento:
- Meno di un miliardo di file per job
- Fino a 100 agenti per pool di agenti
- Il limite di larghezza di banda deve essere superiore a 1 MBps
Inoltre, il numero di agenti e pool di agenti per progetto è limitato dal numero di sottoscrizioni Pub/Sub che utilizzano:
- Ogni progetto supporta fino a 10.000 sottoscrizioni.
- Un pool di agenti richiede 20 abbonamenti.
- Ogni agente richiede 1 abbonamento.
Ad esempio, un pool di agenti contenente 100 agenti richiede 120 sottoscrizioni.
Pertanto, un progetto può supportare 83 pool di agenti su 100 agenti (10,000 / 120 = 83.3
).
Abilita API
Attiva Google Storage Transfer API.
Attiva Pub/Sub API.
Installa Docker
Installa Docker Community Edition su una macchina Linux fisica o virtuale:
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo systemctl enable docker
Se si verifica un errore di installazione, consulta la sezione Risoluzione dei problemi.
Consenti a Docker di eseguire l'autenticazione
Per consentire al container Docker di eseguire l'autenticazione con le credenziali predefinite di gcloud
, crea un volume Docker contenente un file con le credenziali predefinite dell'applicazione eseguendo questo comando:
sudo docker run -ti --name gcloud-config google/cloud-sdk gcloud auth application-default login
Quali sono i passaggi successivi?
- Configurare le autorizzazioni Google Cloud
- Crea un pool di agenti
- Installare gli agenti di trasferimento
- Crea un job di trasferimento
- Massimizzare le prestazioni dell'agente di trasferimento