Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Amazon Elastic File System (Amazon EFS) fournit un stockage de fichiers simple et évolutif à utiliser dans le cadre de vos AWS Batch tâches. Avec Amazon EFS, la capacité de stockage est élastique. Il s'adapte automatiquement au fur et à mesure que vous ajoutez et supprimez des fichiers. Vos applications peuvent disposer de l'espace de stockage qui leur est nécessaire, au moment où elles en ont besoin.
Vous pouvez utiliser les systèmes de fichiers Amazon EFS AWS Batch pour exporter les données des systèmes de fichiers sur votre flotte d'instances de conteneurs. Ainsi, vos tâches ont accès au même stockage permanent. En revanche, vous devez configurer votre AMI de l'instance de conteneur pour monter le système de fichiers Amazon EFS avant le démarrage du démon Docker. En outre, vos définitions de tâches doivent faire référence à des montages de volumes sur l'instance de conteneur pour utiliser le système de fichiers. Les sections suivantes vous aident à commencer à utiliser Amazon EFS avec AWS Batch.
Considérations relatives aux volumes Amazon EFS
Les informations suivantes doivent être prises en compte lors de l'utilisation de volumes Amazon EFS :
-
Pour les tâches utilisant EC2 des ressources, la prise en charge du système de fichiers Amazon EFS a été ajoutée en version préliminaire publique avec la version AMI optimisée pour Amazon ECS
20191212
avec la version 1.35.0 de l'agent de conteneur. Cependant, le support du système de fichiers Amazon EFS est entré en disponibilité générale avec la version AMI optimisée pour Amazon ECS20200319
avec la version 1.38.0 de l'agent de conteneur, qui contenait le point d'accès Amazon EFS et les fonctionnalités d'autorisation IAM. Nous vous recommandons d'utiliser la version optimisée de l'AMI Amazon ECS20200319
ou une version ultérieure pour tirer parti de ces fonctionnalités. Pour plus d'informations, consultez les versions d'AMI optimisées pour Amazon ECS dans le manuel Amazon Elastic Container Service Developer Guide.Note
Si vous créez votre propre AMI, vous devez utiliser l'agent de conteneur 1.38.0 ou version ultérieure,
ecs-init
version 1.38.0-1 ou ultérieure, et exécuter les commandes suivantes sur votre instance Amazon. EC2 Tout cela est destiné à activer le plug-in de volume Amazon ECS. Les commandes varient selon que vous utilisez Amazon Linux 2 ou Amazon Linux comme image de base.- Amazon Linux 2
-
$
yum install amazon-efs-utils systemctl enable --now amazon-ecs-volume-plugin
- Amazon Linux
-
$
yum install amazon-efs-utils sudo shutdown -r now
-
Pour les tâches utilisant les ressources Fargate, la prise en charge du système de fichiers Amazon EFS a été ajoutée lors de l'utilisation de la version 1.4.0 ou ultérieure de la plateforme. Pour plus d'informations, consultez les versions AWS de la plateforme Fargate dans le guide du développeur Amazon Elastic Container Service.
-
Lorsque vous spécifiez des volumes Amazon EFS dans des tâches utilisant des ressources Fargate, Fargate crée un conteneur de supervision chargé de gérer le volume Amazon EFS. Le conteneur du superviseur utilise une petite partie de la mémoire de la tâche. Le conteneur de supervision est visible lors de l'interrogation du point de terminaison de métadonnées de tâche version 4. Pour de plus amples informations, veuillez consulter Point de terminaison des métadonnées de tâches version 4 dans le Guide de l'utilisateur Amazon Elastic Container Service pour AWS Fargate.
Utiliser les points d'accès Amazon EFS
Les points d'accès Amazon EFS sont des points d'entrée spécifiques à une application dans un système de fichiers EFS qui vous aident à gérer l'accès des applications aux ensembles de données partagés. Pour de plus amples informations sur les points d'accès Amazon EFS et sur la façon de les contrôler, veuillez consulter Utilisation des points d'accès Amazon EFS dans le Guide de l'utilisateur Amazon Elastic File System.
Les points d’accès peuvent appliquer de manière forcée une identité d’utilisateur, y compris les groupes POSIX de l’utilisateur, pour toutes les demandes de système de fichiers effectuées via le point d’accès. Les points d’accès peuvent également appliquer de manière forcée un répertoire racine différent pour le système de fichiers afin que les clients puissent uniquement accéder aux données stockées dans le répertoire spécifié ou dans les sous-répertoires.
Note
Lors de la création d'un point d'accès EFS, vous spécifiez un chemin d'accès sur le système de fichiers qui servira de répertoire racine. Lorsque vous référencez le système de fichiers EFS avec un ID de point d'accès dans votre définition de AWS Batch tâche, le répertoire racine doit être omis ou défini sur /
Cela applique le chemin défini sur le point d'accès EFS.
Vous pouvez utiliser un rôle IAM de AWS Batch travail pour garantir que des applications spécifiques utilisent un point d'accès spécifique. En combinant des politiques IAM avec des points d’accès, vous pouvez facilement fournir un accès sécurisé à des ensembles de données spécifiques pour vos applications. Cette fonctionnalité utilise les rôles IAM d'Amazon ECS pour la fonctionnalité des tâches. Pour plus d'informations, consultez Rôles IAM pour les tâches dans le Guide du développeur Amazon Elastic Container Service.
Spécifiez un système de fichiers Amazon EFS dans votre définition de tâche
Pour utiliser les volumes du système de fichiers Amazon EFS pour vos conteneurs, vous devez spécifier les configurations de volume et de point de montage dans votre définition de tâche. L'extrait de code JSON de définition de tâche suivant montre la syntaxe des mountPoints
objets volumes
et d'un conteneur :
{
"containerProperties": [
{
"image": "amazonlinux:2
",
"command": [
"ls",
"-la",
"/mount/efs
"
],
"mountPoints": [
{
"sourceVolume": "myEfsVolume
",
"containerPath": "/mount/efs
",
"readOnly": true
}
],
"volumes": [
{
"name": "myEfsVolume
",
"efsVolumeConfiguration": {
"fileSystemId": "fs-12345678
",
"rootDirectory": "/path/to/my/data
",
"transitEncryption": "ENABLED
",
"transitEncryptionPort": integer
,
"authorizationConfig": {
"accessPointId": "fsap-1234567890abcdef1
",
"iam": "ENABLED
"
}
}
}
]
}
]
}
efsVolumeConfiguration
-
Type : objet
Obligatoire : non
Ce paramètre est spécifié lorsque vous utilisez des volumes Amazon EFS.
fileSystemId
-
Type : String
Obligatoire : oui
ID du système de fichiers Amazon EFS à utiliser.
rootDirectory
-
Type : chaîne
Obligatoire : non
Répertoire du système de fichiers Amazon EFS à monter en tant que répertoire racine à l'intérieur de l'hôte. Si ce paramètre est omis, la racine du volume Amazon EFS est utilisée. La spécification de
/
a le même effet que l'omission de ce paramètre. Il peut comporter jusqu'à 4 096 caractères.Important
Si un point d'accès EFS est spécifié dans le
authorizationConfig
, le paramètre du répertoire racine doit être omis ou défini sur./
Cela applique le chemin défini sur le point d'accès EFS. transitEncryption
-
Type : String
Valeurs valides :
ENABLED
|DISABLED
Obligatoire : non
Détermine s'il faut activer le chiffrement pour les données Amazon EFS en transit entre l' AWS Batch hôte et le serveur Amazon EFS. Le chiffrement en transit doit être activé si l'autorisation Amazon EFS IAM est utilisée. Si ce paramètre est omis, la valeur par défaut
DISABLED
est utilisée. Pour plus d'informations, consultez Chiffrement des données en transit dans le Guide de l'utilisateur Amazon Elastic File System. transitEncryptionPort
-
Type : entier
Obligatoire : non
Port à utiliser lors de l'envoi de données chiffrées entre l' AWS Batch hôte et le serveur Amazon EFS. Si vous ne spécifiez pas de port de chiffrement en transit, il utilise la stratégie de sélection de port adoptée par l'assistant de montage Amazon EFS. La valeur doit être comprise entre 0 et 65 535. Pour plus d'informations, consultez Assistant de montage EFS dans le Guide de l'utilisateur Amazon Elastic File System User.
authorizationConfig
-
Type : objet
Obligatoire : non
Détails de configuration des autorisations pour le système de fichiers Amazon EFS.
accessPointId
-
Type : chaîne
Obligatoire : non
ID du point d'accès à utiliser. Si un point d'accès est spécifié, la valeur du répertoire racine
efsVolumeConfiguration
doit être omise ou définie sur./
Cela applique le chemin défini sur le point d'accès EFS. Si un point d'accès est utilisé, le chiffrement de transit doit être activé dansEFSVolumeConfiguration
. Pour plus d'informations, consultez Utilisation des points d'accès Amazon EFS dans le Guide de l'utilisateur Amazon Elastic File System. iam
-
Type : String
Valeurs valides :
ENABLED
|DISABLED
Obligatoire : non
Détermine s'il faut utiliser le rôle IAM de AWS Batch tâche défini dans une définition de tâche lors du montage du système de fichiers Amazon EFS. Si cette option est activée, le chiffrement en transit doit être activé dans la configuration
EFSVolumeConfiguration
. Si ce paramètre est omis, la valeur par défautDISABLED
est utilisée. Pour plus d'informations sur le rôle d'exécution IAM, consultezAWS Batch Rôle d'exécution IAM.