Avant de créer une tâche de transfert de système de fichiers, vous devez activer les API requises et installer Docker.
Si vous recevez des messages d'erreur lors de la configuration initiale, vérifiez que l'utilisateur avec lequel vous vous êtes connecté dispose des autorisations nécessaires pour effectuer la configuration. Dans de nombreux cas, ces autorisations ne sont pas disponibles pour tous les utilisateurs et vous devrez peut-être contacter un administrateur de projet pour obtenir de l'aide.
Configuration requise
Pour utiliser le service de transfert de stockage pour les transferts du système de fichiers, vous avez besoin des éléments suivants:
Une source et/ou une destination compatibles avec POSIX.
Un bucket Cloud Storage sans règle de conservation Pour transférer vers un bucket avec une règle de conservation, consultez la section Transférer vers un bucket avec une règle de conservation.
Les ports TCP 80 (HTTP) et 443 (HTTPS) sont ouverts pour les connexions sortantes.
Les exigences de la machine de l'agent de transfert sont répertoriées ci-dessous:
Un serveur ou une machine virtuelle Linux 64 bits compatible avec Docker qui peut accéder aux données que vous prévoyez de transférer. Docker Community Edition, est compatible avec les systèmes d'exploitation CentOs, Debian, Fedora et Ubuntu.
Pour utiliser d'autres systèmes d'exploitation Linux, consultez la page sur Docker Enterprise.
Au minimum 8 Go de mémoire par conteneur et au moins quatre processeurs pour être plus efficace.
Toutes les contraintes au niveau du système ou de l'utilisateur sur le nombre d'ID de processus autorisés, telles que configurées avec
ulimit -u
, doivent tenir compte du nombre d'agents que vous prévoyez d'exécuter. Chaque processus d'agent peut créer jusqu'à plusieurs centaines de threads. Nous vous recommandons de supprimer les limites d'ID de processus lorsque vous exécutez les agents de transfert.Les clients utilisant Podman pour créer des conteneurs d'agents doivent spécifier une valeur
--pids-limit
suffisamment élevée pour accueillir les threads de l'agent de service de transfert de stockage. La valeur--pids-limit
par défaut est 2 048, ce qui peut entraîner des problèmes lors de l'exécution de plusieurs agents. Nous vous recommandons de définir--pids-limit=-1
pour autoriser un nombre illimité d'ID de processus par conteneur.
Restrictions liées au scaling des tâches et des agents
Le service de transfert de stockage présente les restrictions de scaling suivantes pour les agents et les tâches de transfert:
- Le nombre de fichiers par tâche doit être inférieur à un milliard.
- Jusqu'à 100 agents par pool d'agents
- La limite de bande passante doit être supérieure à 1 Mbit/s.
De plus, le nombre d'agents et de pools d'agents par projet est limité par le nombre d'abonnements Pub/Sub qu'ils consomment:
- Chaque projet accepte jusqu'à 10 000 abonnements.
- Un pool d'agents nécessite 20 abonnements.
- Chaque agent nécessite un abonnement.
Par exemple, un pool d'agents contenant 100 agents nécessite 120 abonnements.
Par conséquent, un projet peut accepter 83 pools d'agents de 100 agents (10,000 / 120 = 83.3
).
Activer les API
Activez Google Storage Transfer API.
Activez Pub/Sub API.
Installer Docker
Installez Docker Community Edition sur une machine Linux physique ou virtuelle en procédant comme suit :
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo systemctl enable docker
Si des erreurs se produisent pendant l'installation, consultez la section Dépannage.
Autoriser l'authentification de Docker
Pour permettre au conteneur Docker de s'authentifier avec vos identifiants par défaut gcloud
, créez un volume Docker contenant un fichier avec les identifiants par défaut de votre application en exécutant la commande suivante:
sudo docker run -ti --name gcloud-config google/cloud-sdk gcloud auth application-default login
Étape suivante
- Configurer les autorisations Google Cloud
- Créer un pool d'agents
- Installer des agents de transfert
- Créer une tâche de transfert
- Maximiser les performances de l'agent de transfert