Gérer les pools d'agents

Un pool d'agents est un ensemble d'agents qui utilisent la même configuration, avec un accès et une visibilité uniformes sur votre source et votre destination. Les pools d'agents permettent également de contrôler les limites de bande passante de transfert.

Tous les agents doivent appartenir à un pool d'agents.

Ce guide explique comment utiliser les pools d'agents.

Avant de commencer

Vous devez disposer des autorisations appropriées sur votre projet pour utiliser des pools d'agents. Pour plus de détails, consultez la section Contrôle des accès avec IAM.

Vous pouvez afficher vos autorisations actuelles.

Pour utiliser les commandes gcloud, installez l'outil de ligne de commande gcloud.

Créer un pool d'agents

N'incluez pas d'informations sensibles telles que des informations permettant d'identifier personnellement l'utilisateur ou des données de sécurité dans le nom de votre pool d'agents. Les noms de ressources peuvent être propagés aux noms d'autres ressources Google Cloud et exposés aux systèmes internes de Google en dehors de votre projet.

Pour créer un pool d'agents, procédez comme suit :

Console Google Cloud

  1. Dans la console Google Cloud, accédez à la page Pools d'agents.

    Accéder aux pools d'agents

    La page Pools d'agents s'affiche. Elle répertorie vos pools d'agents existants.

  2. Cliquez sur Créer un autre pool.

  3. Nommez votre pool, puis fournissez une description si vous le souhaitez.

  4. Vous pouvez choisir de définir une limite de bande passante qui s'appliquera au pool dans son ensemble. La bande passante spécifiée en Mo/s sera répartie entre tous les agents du pool. Pour en savoir plus, consultez la page Gérer la bande passante réseau.

  5. Cliquez sur Créer.

API REST

Utilisez la méthode projects.agentPools.create :

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

Où :

  • PROJECT_ID : ID du projet dans lequel vous créez le pool d'agents.
  • AGENT_POOL_ID : ID du pool d'agents que vous créez.

Si un pool d'agents est bloqué à l'état Creating pendant plus de 30 minutes, nous vous recommandons de le supprimer et de le recréer.

La révocation des autorisations requises pour le service de transfert de stockage d'un projet alors qu'un pool d'agents est à l'état Creating entraîne un comportement de service incorrect.

gcloud CLI

Pour créer un pool d'agents avec l'outil de ligne de commande gcloud, exécutez gcloud transfer agent-pools create.

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

Les options suivantes sont disponibles :

  • NAME est l'identifiant unique et permanent de ce pool.

  • --no-async bloque d'autres tâches dans votre terminal jusqu'à la création du pool. Si cette option n'est pas incluse, la création du pool s'exécute de manière asynchrone.

  • --bandwidth-limit définit la quantité de bande passante en Mo/s à mettre à la disposition des agents de ce pool. Une limite de bande passante s'applique à tous les agents d'un pool et peut empêcher la charge de travail de transfert du pool d'interrompre les autres opérations qui partagent votre bande passante. Par exemple, saisissez "50" pour définir une limite de bande passante de 50 Mo/s. Si vous ne définissez pas cette option, les agents de ce pool utiliseront toute la bande passante disponible.

  • --display-name est un nom modifiable pour vous aider à identifier ce pool. Vous pouvez inclure des détails qui ne correspondent peut-être pas au nom complet de la ressource du pool.

Attribuer des agents à un pool

Les nouveaux pools d'agents sont vides et des agents doivent leur être attribués. Un agent ne peut être attribué à un pool d'agents qu'au moment de sa création.

Si aucun pool d'agents n'est spécifié, l'agent est attribué au pool transfer_service_default.

Pour créer un agent et l'attribuer à un pool :

Console Google Cloud

  1. Sur la page Pools d'agents, sélectionnez le pool auquel attribuer le ou les agents.

  2. Cliquez sur Installer l'agent. Le guide d'installation de l'agent s'affiche.

  3. Suivez les instructions pour créer l'agent dans ce pool d'agents.

gcloud CLI

Pour créer un agent et l'attribuer à un pool à l'aide de l'outil de ligne de commande gcloud, exécutez la commande gcloud transfer agents install. L'agent doit être installé sur une machine disposant d'un accès racine au système de fichiers.

gcloud transfer agents install --pool=AGENT_POOL

Pour installer des agents à utiliser avec une source compatible S3, fournissez des identifiants d'accès en tant que variables d'environnement en tant que valeurs de AWS_ACCESS_KEY_ID et AWS_SECRET_ACCESS_KEY, ou stockés en tant qu'identifiants par défaut dans les fichiers de configuration de votre système.

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

Pour en savoir plus, consultez la page Gérer les agents de transfert.

Pour obtenir plus d'options, consultez la section Options avancées de l'agent.

Pour gérer les agents, consultez la page Gérer les agents de transfert.

Attribuer un pool d'agents à une tâche

Une fois le pool d'agents créé, il peut être attribué à une tâche au moment de la création ou la mise à jour de la tâche.

Mettre à jour un pool d'agents

Vous pouvez mettre à jour le nom à afficher et la limite de bande passante d'un pool d'agents.

Pour mettre à jour un pool d'agents, procédez comme suit :

console Google Cloud

Dans la console Google Cloud, accédez à la page Pools d'agents.

Accéder aux pools d'agents

Vous pouvez modifier les éléments suivants :

  • Nom à afficher du pool d'agents : cliquez sur Modifier à côté du nom actuel du pool d'agents.

  • Limite de bande passante du pool d'agents : cliquez sur Définir une limite de bande passante, puis saisissez une nouvelle limite de bande passante dans la boîte de dialogue Définir une limite de bande passante. Cliquez sur Définir une limite pour appliquer la nouvelle limite de bande passante. La bande passante est partagée par tous les agents du pool.

API REST

Pour mettre à jour un pool d'agents, utilisez projects.agentPools.patch avec un masque de champ pour les champs à mettre à jour. Les champs de pool d'agent suivants peuvent être mis à jour :

Par exemple, pour remplacer displayName par my-transfer, vous devez indiquer le masque de champ "displayName,my-transfer".

Voici un exemple de requête "patch" permettant de mettre à jour le nom à afficher :

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

Où :

  • PROJECT_ID : ID du projet dans lequel vous mettez à jour le pool d'agents.
  • AGENT_POOL_ID : ID du pool d'agents que vous mettez à jour.
  • NEW_NAME : nouveau nom à afficher pour ce pool d'agents.

Voici un exemple de requête "patch" permettant de mettre à jour la limite de bande passante :

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

Où :

  • PROJECT_ID : ID du projet dans lequel vous mettez à jour le pool d'agents.
  • AGENT_POOL_ID : ID du pool d'agents que vous mettez à jour.
  • NEW_LIMIT : nouvelle limite de bande passante pour ce pool d'agents.

CLI gcloud

Pour mettre à jour le pool d'agents à l'aide de l'outil de ligne de commande gcloud, exécutez la commande 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'argument suivant est obligatoire :

  • NAME est l'identifiant unique et permanent de ce pool. NAME identifie le pool d'agents à mettre à jour et ne peut pas être mis à jour lui-même.

Les options suivantes peuvent être spécifiées à l'aide de cette commande :

  • Vous pouvez mettre à jour ou supprimer --bandwidth-limit en spécifiant --clear-bandwidth-limit. Pour en savoir plus sur les limites de bande passante, consultez la section Créer un pool d'agents.

  • Vous pouvez mettre à jour ou supprimer --display-name à l'aide de l'option --clear-display-name.

Supprimer un pool d'agents

Vous pouvez supprimer un pool d'agents sans agent ni exécution de tâche active.

Pour supprimer un pool d'agents, procédez comme suit :

Console Google Cloud

  1. Dans la console Google Cloud, accédez à la page Pools d'agents.

    Accéder aux pools d'agents

  2. Cliquez sur Supprimer. Lisez le pop-up, puis cliquez sur Supprimer pour confirmer.

    Si le bouton de suppression n'est pas actif, vous devez arrêter tous les agents et tâches associés à ce pool.

API REST

Utilisez la méthode projects.agentPools.delete :

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

Où :

  • PROJECT_ID : ID du projet à partir duquel vous supprimez le pool d'agents.

gcloud CLI

Pour supprimer un pool d'agents à l'aide de l'outil de ligne de commande gcloud, exécutez la commande gcloud transfer agent-pools delete.

gcloud transfer agent-pools delete NAME

L'argument suivant est obligatoire :

  • NAME est l'identifiant unique et permanent de ce pool.

Pour pouvoir supprimer un pool, tous les agents du pool doivent être arrêtés, ses tâches doivent être désactivées et il ne doit y avoir aucune opération de transfert en cours pour ce pool.

Pour afficher toutes les tâches associées à un pool, sélectionnez votre pool dans Google Cloud Console et cliquez sur l'onglet Tâches de transfert.

Obtenir un pool d'agents

Pour obtenir un pool d'agents, procédez comme suit :

Console Google Cloud

Dans la console Google Cloud, accédez à la page Pools d'agents.

Accéder aux pools d'agents

La page affiche la liste de tous les pools d'agents associés à votre projet, ainsi que les informations suivantes pour chaque pool d'agents :

  • Nom du pool d'agents
  • État de la connexion
  • Nombre d'agents connectés
  • Limite de bande passante, le cas échéant
  • Nombre de tâches de transfert associées
  • Nom à afficher du pool d'agents

Pour afficher un pool d'agents spécifique, cliquez sur le nom du pool d'agents.

Les actions suivantes sont disponibles à partir de la page d'informations d'un pool d'agents :

  • Installer un agent: affiche les instructions d'installation des agents de transfert.
  • Arrêter l'agent : sélectionnez un agent dans la table, puis cliquez sur Arrêter l'agent.
  • Répertorier des tâches de transfert : cliquez sur Tâches de transfert pour afficher les tâches de transfert auxquelles les agents de ce pool sont connectés.

API REST

Utilisez projects.agentPools.get :

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

Où :

  • PROJECT_ID : ID du projet à partir duquel vous obtenez un pool d'agents.

gcloud CLI

Pour récupérer le pool d'agents à l'aide de l'outil de ligne de commande gcloud, exécutez la commande gcloud transfer agent-pools describe.

gcloud transfer agent-pools describe NAME

L'argument suivant est obligatoire :

  • NAME est l'identifiant unique et permanent de ce pool.

Répertorier des pools d'agents

Pour répertorier vos pools d'agents, procédez comme suit :

Console Google Cloud

Dans la console Google Cloud, accédez à la page Pools d'agents.

Accéder aux pools d'agents

Tous les pools d'agents sont affichés.

API REST

Utilisez projects.agentPools.list :

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

Où :

  • PROJECT_ID : ID du projet à partir duquel vous obtenez un pool d'agents.

CLI gcloud

Pour répertorier les pools d'agents à l'aide de l'outil de ligne de commande gcloud, exécutez la commande gcloud transfer agent-pools list.

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

Les options suivantes peuvent être spécifiées à l'aide de cette commande :

  • --limit définit le nombre maximal de pools d'agents à renvoyer.

  • --names spécifie les noms des pools d'agents à répertorier. Séparez les différents noms par des virgules, par exemple : --names=foo,bar. Si cette option n'est pas spécifiée, tous les pools d'agents de votre projet actuel sont répertoriés.

  • --page-size définit le comportement de traitement par lot de cette commande. Par défaut, la commande list regroupe les réponses dans 256 éléments, récupérant automatiquement le lot suivant jusqu'à ce que tous les éléments soient répertoriés ou que limit soit atteint.

La commande renvoie la liste des pools d'agents correspondants, ainsi que les détails de leur configuration. L'exemple suivant illustre un exemple de réponse.

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