Gestisci pool di agenti

Un pool di agenti è una raccolta di agenti che utilizzano la stessa configurazione, con accesso e visibilità uniformi rispetto all'origine e alla destinazione. I pool di agenti forniscono anche il controllo sui limiti della larghezza di banda di trasferimento.

Tutti gli agenti devono appartenere a un pool di agenti.

Questa guida descrive come utilizzare i pool di agenti.

Prima di iniziare

Devi disporre delle autorizzazioni corrette sul progetto per utilizzare i pool di agenti. Per maggiori dettagli, consulta Controllo dell'accesso con IAM.

Puoi visualizzare le tue autorizzazioni attuali.

Per utilizzare i comandi gcloud, installa lo strumento a riga di comando gcloud.

Crea un pool di agenti

Non includere informazioni sensibili come informazioni che consentono l'identificazione personale (PII) o dati di sicurezza nel nome del pool di agenti. I nomi delle risorse possono essere propagati ai nomi di altre risorse Google Cloud ed essere esposti a sistemi interni di Google al di fuori del tuo progetto.

Per creare un pool di agenti:

Console Google Cloud

  1. Nella console Google Cloud, vai alla pagina Pool di agenti.

    Vai a Pool di agenti

    Viene visualizzata la pagina Pool di agenti, in cui sono elencati i pool di agenti esistenti.

  2. Fai clic su Crea un altro pool.

  3. Assegna un nome al pool e, se vuoi, descrivilo.

  4. Puoi scegliere di impostare un limite di larghezza di banda da applicare all'intero pool. La larghezza di banda specificata in MB/s verrà suddivisa tra tutti gli agenti nel pool. Per ulteriori informazioni, consulta Gestione della larghezza di banda della rete.

  5. Fai clic su Crea.

API REST

Utilizza projects.agentPools.create:

POST https://storagetransfer.googleapis.com/v1/projects/PROJECT_ID/agentPools?agent_pool_id=AGENT_POOL_ID

Dove:

  • PROJECT_ID: l'ID progetto in cui stai creando il pool di agenti.
  • AGENT_POOL_ID: l'ID pool di agenti che stai creando.

Se un pool di agenti è bloccato nello stato Creating per più di 30 minuti, ti consigliamo di eliminarlo e di crearlo di nuovo.

La revoca delle autorizzazioni necessarie di Storage Transfer Service da un progetto mentre un pool di agenti è nello stato Creating comporta un comportamento errato del servizio.

Interfaccia a riga di comando gcloud

Per creare un pool di agenti con lo strumento a riga di comando gcloud, esegui gcloud transfer agent-pools create.

gcloud transfer agent-pools create NAME \
  [--no-async] \
  [--bandwidth-limit=BANDWIDTH_LIMIT] \
  [--display-name=DISPLAY_NAME]

Dove sono disponibili le seguenti opzioni:

  • NAME è un identificatore univoco e permanente di questo pool.

  • --no-async blocca altre attività nel terminale finché non viene creato il pool. Se non è inclusa, la creazione dei pool viene eseguita in modo asincrono.

  • --bandwidth-limit definisce la quantità di larghezza di banda in MB/s da rendere disponibile agli agenti di questo pool. Un limite di larghezza di banda si applica a tutti gli agenti in un pool e può aiutare a evitare che il carico di lavoro di trasferimento del pool interrompa altre operazioni che condividono la larghezza di banda. Ad esempio, inserisci "50" per impostare un limite di larghezza di banda di 50 MB/s. Se non specifichi questo flag, gli agenti di questo pool utilizzeranno tutta la larghezza di banda disponibile.

  • --display-name è un nome modificabile per aiutarti a identificare questo pool. Puoi includere dettagli che potrebbero non rientrare nel nome completo della risorsa del pool.

Assegnare agenti a un pool

I nuovi pool di agenti sono vuoti e devono avere agenti assegnati. Un agente può essere assegnato a un pool di agenti solo al momento della creazione dell'agente.

Se non viene specificato un pool di agenti, l'agente viene assegnato al pool transfer_service_default.

Per creare un agente e assegnarlo a un pool:

Console Google Cloud

  1. Nella pagina Pool di agenti, seleziona il pool a cui assegnare gli agenti.

  2. Fai clic su Installa agente. Viene visualizzata la guida all'installazione dell'agente.

  3. Segui le istruzioni per creare l'agente in questo pool di agenti.

Interfaccia a riga di comando gcloud

Per utilizzare lo strumento a riga di comando gcloud per creare un agente e assegnarlo a un pool, esegui gcloud transfer agents install. L'agente deve essere installato su una macchina con accesso root al file system.

gcloud transfer agents install --pool=AGENT_POOL

Per installare gli agenti da utilizzare con un'origine compatibile con S3, fornisci le credenziali di accesso come variabili di ambiente come valori di AWS_ACCESS_KEY_ID e AWS_SECRET_ACCESS_KEY oppure archiviate come credenziali predefinite nei file di configurazione del sistema.

export AWS_ACCESS_KEY_ID=ID
export AWS_SECRET_ACCESS_KEY=SECRET
gcloud transfer agents install --pool=POOL_NAME

Per ulteriori dettagli, consulta Gestire gli agenti di trasferimento.

Per ulteriori opzioni, consulta Opzioni avanzate dell'agente.

Per gestire gli agenti, consulta Gestire gli agenti di trasferimento.

Assegna un pool di agenti a un job

Una volta creato, il pool di agenti può essere assegnato a un job durante la creazione o l'aggiornamento del job.

Aggiorna un pool di agenti

Puoi aggiornare il nome visualizzato e il limite di larghezza di banda di un pool di agenti.

Per aggiornare un pool di agenti:

Console Google Cloud

Nella console Google Cloud, vai alla pagina Pool di agenti.

Vai a Pool di agenti

Puoi modificare i seguenti elementi:

  • Il nome visualizzato del pool di agenti: fai clic su Modifica accanto al nome del pool di agenti attuale.

  • Il limite di larghezza di banda del pool di agenti: fai clic su Imposta limite di larghezza di banda e inserisci un nuovo limite di larghezza di banda nella finestra di dialogo Imposta limite di larghezza di banda. Fai clic su Imposta limite per applicare il nuovo limite della larghezza di banda. La larghezza di banda è condivisa tra tutti gli agenti nel pool.

API REST

Per aggiornare un pool di agenti, utilizza projects.agentPools.patch con una maschera dei campi da aggiornare. I seguenti campi del pool di agenti possono essere aggiornati:

Ad esempio, per aggiornare displayName in my-transfer, devi fornire la maschera di campo "displayName,my-transfer".

Di seguito è riportata una richiesta di patch di esempio per aggiornare il nome visualizzato:

PATCH https://storagetransfer.googleapis.com/v1/projects/{PROJECT_ID}/agentPools/{AGENT_POOL_ID}:"displayName,NEW_NAME"

Dove:

  • PROJECT_ID: l'ID progetto in cui stai aggiornando il pool di agenti.
  • AGENT_POOL_ID: l'ID pool di agenti che stai aggiornando.
  • NEW_NAME: il nuovo nome visualizzato per questo pool di agenti.

Di seguito è riportata una richiesta di patch di esempio per aggiornare il limite di larghezza di banda:

PATCH https://storagetransfer.googleapis.com/v1/projects/{PROJECT_ID}/agentPools/{AGENT_POOL_ID}:"bandwidthLimit,NEW_LIMIT"

Dove:

  • PROJECT_ID: l'ID progetto in cui stai aggiornando il pool di agenti.
  • AGENT_POOL_ID: l'ID pool di agenti che stai aggiornando.
  • NEW_LIMIT: il nuovo limite di larghezza di banda per questo pool di agenti.

Interfaccia a riga di comando gcloud

Per utilizzare lo strumento a riga di comando gcloud per aggiornare un pool di agenti, esegui gcloud transfer agent-pools update.

gcloud transfer agent-pools update NAME \
  [--bandwidth-limit=NEW_BANDWIDTH_LIMIT] [--clear-bandwidth-limit] \
  [--clear-display-name] [--display-name=NEW_DISPLAY_NAME]

L'argomento seguente è obbligatorio:

  • NAME è l'identificatore univoco e permanente di questo pool. NAME identifica il pool di agenti da aggiornare e non può essere aggiornato.

I seguenti flag possono essere specificati con questo comando:

  • --bandwidth-limit può essere aggiornato o rimosso specificando --clear-bandwidth-limit. Per ulteriori dettagli sui limiti di larghezza di banda, consulta Creare un pool di agenti.

  • --display-name può essere aggiornato o eliminato con il flag --clear-display-name.

Elimina un pool di agenti

Puoi eliminare un pool di agenti che non ha agenti attivi e che non sono in esecuzione job attivi.

Per eliminare un pool di agenti:

Console Google Cloud

  1. Nella console Google Cloud, vai alla pagina Pool di agenti.

    Vai a Pool di agenti

  2. Fai clic su Elimina. Leggi il popup, quindi fai clic su Elimina per confermare.

    Se il pulsante Elimina non è attivo, devi arrestare tutti gli agenti e i job associati a questo pool.

API REST

Utilizza projects.agentPools.delete:

DELETE https://storagetransfer.googleapis.com/v1/{name=PROJECT_ID/*/agentPools/}

Dove:

  • PROJECT_ID: l'ID progetto da cui stai eliminando il pool di agenti.

Interfaccia a riga di comando gcloud

Per utilizzare lo strumento a riga di comando gcloud al fine di eliminare un pool di agenti, esegui gcloud transfer agent-pools delete.

gcloud transfer agent-pools delete NAME

L'argomento seguente è obbligatorio:

  • NAME è l'identificatore univoco e permanente di questo pool.

Prima di poter eliminare un pool, tutti gli agenti nel pool devono essere arrestati, i job del pool devono essere disabilitati e non devono essere in corso operazioni di trasferimento per questo pool.

Per visualizzare tutti i job associati a un pool, seleziona il pool nella console Google Cloud e fai clic sulla scheda Job di trasferimento.

Ottieni un pool di agenti

Per ottenere un pool di agenti:

Console Google Cloud

Nella console Google Cloud, vai alla pagina Pool di agenti.

Vai a Pool di agenti

La pagina mostra un elenco di tutti i pool di agenti associati al progetto, nonché le seguenti informazioni per ogni pool di agenti:

  • Nome pool di agenti
  • Stato della connessione
  • Numero di agenti connessi
  • Limite di larghezza di banda, se impostato
  • Numero di job di trasferimento associati
  • Il nome visualizzato del pool di agenti

Per visualizzare un pool di agenti specifico, fai clic sul suo nome.

Le seguenti azioni sono disponibili nella pagina delle informazioni di un pool di agenti:

  • Agente di installazione: mostra le istruzioni per l'installazione degli agenti di trasferimento.
  • Arresta agente: seleziona un agente nella tabella, quindi fai clic su Arresta agente.
  • Elenca job di trasferimento: fai clic su Trasferisci job per visualizzare i job di trasferimento a cui sono connessi gli agenti in questo pool.

API REST

Utilizza projects.agentPools.get:

GET https://storagetransfer.googleapis.com/v1/{name=PROJECT_ID/*/agentPools/}

Dove:

  • PROJECT_ID: l'ID progetto di cui stai ottenendo un pool di agenti.

Interfaccia a riga di comando gcloud

Per utilizzare lo strumento a riga di comando gcloud per recuperare un pool di agenti, esegui gcloud transfer agent-pools describe.

gcloud transfer agent-pools describe NAME

L'argomento seguente è obbligatorio:

  • NAME è l'identificatore univoco e permanente di questo pool.

Elenca pool di agenti

Per elencare i pool di agenti:

Console Google Cloud

Nella console Google Cloud, vai alla pagina Pool di agenti.

Vai a Pool di agenti

Sono visualizzati tutti i pool di agenti.

API REST

Utilizza projects.agentPools.list:

GET https://storagetransfer.googleapis.com/v1/projects/{project_id=PROJECT_ID}/agentPools

Dove:

  • PROJECT_ID: l'ID progetto di cui stai ottenendo un pool di agenti.

Interfaccia a riga di comando gcloud

Per utilizzare lo strumento a riga di comando gcloud per elencare i pool di agenti, esegui gcloud transfer agent-pools list.

gcloud transfer agent-pools list \
  [--limit=LIMIT] \
  [--names=[NAMES,...]] \
  [--page-size=PAGE_SIZE]

I seguenti flag possono essere specificati con questo comando:

  • --limit definisce il numero massimo di pool di agenti da restituire.

  • --names specifica i nomi dei pool di agenti da elencare. Separa più nomi con delle virgole, ad esempio --names=foo,bar. Se non specificato, vengono elencati tutti i pool di agenti nel progetto attuale.

  • --page-size definisce il comportamento di raggruppamento per questo comando. Per impostazione predefinita, il comando list raggruppa le risposte in 256 elementi, recuperando automaticamente il batch successivo fino a quando non vengono elencati tutti gli elementi o non viene raggiunto limit.

Il comando restituisce un elenco di pool di agenti corrispondenti e i relativi dettagli di configurazione. L'esempio seguente mostra una risposta di esempio.

name: projects/my-project-123/agentPools/my-first-pool
state: CREATED
---
bandwidthLimit:
  limitMbps: '120'
displayName: Source A to destination Z.
name: projects/my-project-123/agentPools/a2z-pool
state: CREATED