Requisiti per i trasferimenti del file system

Prima di creare un job di trasferimento del file system, devi 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 i passaggi 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 del file system, devi disporre di:

Di seguito sono elencati i requisiti della macchina dell'agente di trasferimento:

  • Un server o una macchina virtuale Linux a 64 bit supportato da Docker in grado di accedere ai dati che prevedi di trasferire. Docker Community Edition, supporta i sistemi operativi CentOS, Debian, Fedora e Ubuntu.

    Per utilizzare altri sistemi operativi Linux, vedi Docker Enterprise.

  • Almeno 8 GB di memoria per container e almeno quattro CPU per la massima efficacia.

  • Eventuali vincoli a livello di sistema o utente sul numero di ID processo consentiti, ad esempio configurati con ulimit -u, devono tenere conto del numero di agenti che prevedi di eseguire. Ogni processo dell'agente può creare fino a centinaia di thread. Ti consigliamo di rimuovere i limiti dell'ID processo quando esegui gli agenti di trasferimento.

    I clienti che utilizzano Podman per creare container di agenti di servizio devono specificare un --pids-limit valore sufficientemente elevato da ospitare i thread degli agenti di Storage Transfer Service. Il valore predefinito di --pids-limit è 2048, il che potrebbe causare problemi durante l'esecuzione di più agenti. Ti consigliamo di impostare --pids-limit=-1 per consentire ID processo illimitati per container.

Endpoint richiesti

L'agente di trasferimento deve poter accedere ai seguenti endpoint DNS. Sebbene un agente possa utilizzare solo un sottoinsieme di questi endpoint a seconda della sua configurazione, tutti gli endpoint devono essere consentiti per garantire la funzionalità completa.

Endpoint Google

Questo elenco di endpoint richiesti è soggetto a modifiche. Per evitare interruzioni del trasferimento, ti consigliamo di consentire il dominio di base googleapis.com e gcr.io, a condizione che le policy di sicurezza della tua organizzazione lo consentano.

Endpoint Servizio Finalità
storagetransfer.googleapis.com Storage Transfer Service Utilizzato dall'agente per connettersi a Storage Transfer Service, ricevere attività di trasferimento e segnalare il suo stato di integrità.
storage.googleapis.com Cloud Storage Utilizzato per eseguire le operazioni di trasferimento dei dati principali, tra cui l'elenco, la lettura e la scrittura degli oggetti nei bucket Cloud Storage.
www.googleapis.com API di Google Utilizzato per scaricare gli aggiornamenti di versione per l'agente di trasferimento.
monitoring.googleapis.com Cloud Monitoring Utilizzato per esportare le metriche sul rendimento del trasferimento e sull'integrità dell'agente.
logging.googleapis.com Cloud Logging Utilizzato per pubblicare i log di sistema e delle attività dell'agente.
oauth2.googleapis.com Google OAuth 2.0 Utilizzato per scambiare in modo sicuro le credenziali e recuperare i token di accesso di breve durata per l'autorizzazione API.
iamcredentials.googleapis.com Credenziali dell'account di servizio IAM Utilizzato per generare credenziali temporanee quando l'agente è configurato per assumere l'identità di un account di servizio specifico.
cloudresourcemanager.googleapis.com Resource Manager Utilizzato durante l'installazione e la configurazione dell'agente per verificare la configurazione e le autorizzazioni del progetto.
gcr.io Container Registry Utilizzato per scaricare l'immagine container dell'agente di Storage Transfer Service durante l'installazione.

Per ottimizzare il rendimento del trasferimento, l'agente può utilizzare diversi protocolli HTTP, tra cui HTTP/1.1 e HTTP/2, come minimo, quando comunica con vari endpoint. Assicurati che i proxy o i firewall configurati supportino correttamente e siano efficienti in tutti questi tipi di protocollo.

Endpoint regionali

Se hai configurato gli agenti in modo che utilizzino endpoint regionali (ad es. storage.REGION.rep.googleapis.com), i nomi di dominio specifici devono essere consentiti dalle regole del proxy o del firewall anziché dall'endpoint standard storage.googleapis.com.

Endpoint di archiviazione di origine e destinazione

L'agente richiede anche l'accesso alla rete ai sistemi di archiviazione di origine e destinazione specifici, come le API compatibili con S3, i cluster HDFS o NFS per POSIX.

Limitazioni di scalabilità per job e agenti

Storage Transfer Service presenta le seguenti limitazioni di scalabilità per i job e gli agenti di trasferimento:

  • Meno di un miliardo di file per job
  • Il limite di larghezza di banda deve essere superiore a 1 MBps
  • Fino a 100 agenti per pool di agenti
  • Fino a 800 pool di agenti per progetto

Abilita API

  1. Abilita l'API Google Storage Transfer.

    Ruoli richiesti per abilitare le API

    Per abilitare le API, devi disporre del ruolo IAM Amministratore utilizzo servizi (roles/serviceusage.serviceUsageAdmin), che contiene l'autorizzazione serviceusage.services.enable. Scopri come concedere i ruoli.

    Abilitare l'API

Installa Docker

Se utilizzi Google Cloud CLI o Docker per installare ed eseguire gli agenti di trasferimento, installa Docker Engine su una macchina Linux fisica o virtuale.

Se utilizzi Podman per installare ed eseguire gli agenti di trasferimento, vai direttamente a le istruzioni di installazione specifiche di Podman.

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo systemctl enable docker --now

Se si verifica un errore di installazione, vedi Risoluzione dei problemi.

Consenti l'autenticazione di Docker

Per consentire l'autenticazione di un container Docker mediante le credenziali gcloud predefinite, crea un volume Docker contenente un file con le credenziali predefinite dell'applicazione eseguendo il comando riportato di seguito:

sudo docker run -ti --name gcloud-config google/cloud-sdk gcloud auth application-default login

Passaggi successivi