Configurations du système de fichiers pour AgentCore Runtime
AgentCore Runtime prend en charge les systèmes de fichiers persistants via le filesystemConfigurations paramètre. Chaque configuration installe le stockage sur un chemin que vous spécifiez. Vous n'avez pas besoin de code de montage personnalisé, de conteneurs privilégiés ou d'orchestration des téléchargements.
AgentCore Runtime prend en charge deux catégories de configurations de systèmes de fichiers :
-
Stockage de session géré (version préliminaire) : Service-managed stockage par session qui persiste au fil des stop/resume cycles. Isolé par session. Aucun VPC n'est requis.
-
Bring-your-own système de fichiers : attachez vos propres fichiers Amazon S3 ou points d'accès Amazon EFS directement à l'environnement d'exécution de votre agent. Partagé entre les sessions et les agents. VPC requis.
Vous pouvez combiner les deux catégories sur un seul environnement d'exécution d'agent (jusqu'à 5 configurations au total).
Les options de stockage en un coup d'œil
Le tableau suivant compare les types de configuration de système de fichiers disponibles.
| Catégorie | Type | Isolation | Persistance | VPC requis | Idéal pour |
|---|---|---|---|---|---|
|
Gérées |
Stockage de session (version préliminaire) |
Per-session |
Survit stop/resume ; expiration d'une période d'inactivité de 14 jours ; réinitialisation lors de la mise à jour de la version |
Non |
Espace de travail, packages installés, code, fichiers de projet, état de l'agent |
|
BYO |
Fichiers Amazon S3 |
Partagé : plusieurs sessions et agents accèdent aux mêmes données |
Customer-managed (permanent, synchronisé avec le compartiment S3) |
Oui |
Ensembles de données accessibles via des opérations de fichiers standard et des API S3 |
|
BYO |
Amazon EFS |
Partagé : plusieurs sessions et agents accèdent aux mêmes données |
Customer-managed (permanent jusqu'à ce que vous le supprimiez) |
Oui |
Bibliothèques d'outils partagées, pondération des modèles, collaboration multi-agents en lecture-écriture |
Démarrage rapide
Les listes de contrôle suivantes fournissent des étapes condensées pour configurer chaque type de système de fichiers.
Stockage de session géré (version préliminaire)
-
Aucune autorisation VPC ou IAM supplémentaire n'est requise.
-
Ajoutez
--filesystem-configurations '[{"sessionStorage": {"mountPath": "/mnt/workspace"}}]'à votrecreate-agent-runtimeouupdate-agent-runtimeappelez. -
Invoquez l'agent avec un
--runtime-session-id. -
Arrêtez la session, puis reprenez-la avec la même
--runtime-session-id. Verify/mnt/workspaceconserve vos données.
Bring-your-own système de fichiers
Point d'accès Amazon S3 Files
-
Ajoutez
s3files:ClientMounts3files:ClientWrite, ets3files:GetAccessPointà votre rôle d'exécution avec unes3files:AccessPointArncondition. -
Autorisez le port TCP 2049 sortant du groupe de sécurité d'exécution de votre agent vers le groupe de sécurité cible de montage de votre agent S3 Files.
-
Vérifiez que la cible de montage de S3 Files se trouve dans le même VPC et la même zone de disponibilité que les sous-réseaux d'exécution de votre agent.
-
Ajoutez
--filesystem-configurations '[{"s3FilesAccessPoint": {"accessPointArn": "<your-access-point-arn>", "mountPath": "/mnt/s3data"}}]'à votrecreate-agent-runtimeouupdate-agent-runtimeappelez. -
Invoquez l'agent. Les fichiers sont
/mnt/s3datasynchronisés de manière bidirectionnelle avec le compartiment S3 de sauvegarde.
Point d'accès Amazon EFS
-
Ajoutez
elasticfilesystem:ClientMountetelasticfilesystem:ClientWriteà votre rôle d'exécution avec uneelasticfilesystem:AccessPointArncondition. -
Autorisez le port TCP 2049 sortant du groupe de sécurité d'exécution de votre agent vers votre groupe de sécurité cible de montage EFS.
-
Vérifiez que la cible de montage EFS se trouve dans la même zone de disponibilité qu'au moins un des sous-réseaux d'exécution de votre agent.
-
Ajoutez
--filesystem-configurations '[{"efsAccessPoint": {"accessPointArn": "<your-access-point-arn>", "mountPath": "/mnt/efs"}}]'à votrecreate-agent-runtimeouupdate-agent-runtimeappelez. -
Invoquez l'agent. Vos fichiers sont disponibles à l'adresse
/mnt/efs.
S3 Files et EFS nécessitent une connectivité VPC sur le runtime de l'agent.
Comment fonctionne chaque type
Les sections suivantes décrivent le fonctionnement de chaque type de système de fichiers dans AgentCore Runtime.
Bring-your-own systèmes de fichiers
Lorsque vous configurez un système de fichiers personnalisé, AgentCore Runtime monte le point d'accès spécifié dans chaque session sur le chemin que vous avez configuré. Les données sont partagées : plusieurs sessions, plusieurs agents ou applications externes peuvent accéder simultanément au même système de fichiers.
AgentCore gère automatiquement toutes les opérations de montage. Il n'est pas nécessaire d'installer des aides au montage, de gérer les certificats TLS ou d'écrire du code de montage dans votre agent.
Note
Lorsque vous créez un point d'accès (S3 Files ou EFS), vous spécifiez un ID utilisateur POSIX (UID) et un ID de groupe (GID). Toutes les opérations sur les fichiers via le point d'accès s'exécutent sous cette identité. Définissez le UID/GID pour qu'il corresponde à l'utilisateur sous lequel votre processus de conteneur s'exécute (généralement 1000:1000 pour les conteneurs non root, ou 0:0 pour root).
Flux de montage des fichiers Amazon S3
Lorsque vous configurez un point d'accès S3 Files, la séquence suivante se produit :
-
Vous créez un système de fichiers S3 Files (soutenu par un compartiment S3) et vous montez des cibles dans votre VPC.
-
Vous créez un point d'accès S3 Files en spécifiant le POSIX UID/GID et le répertoire racine.
-
Vous configurez l'environnement d'exécution de l'agent avec l'ARN du point d'accès et le chemin de montage.
-
Lors de l'invocation avec un nouvel ID de session, fournit AgentCore à une microVM un accès réseau à votre VPC.
-
Le microVM monte le système de fichiers NFSv4.2 via TLS avec authentification IAM (port 2049) via votre VPC.
-
Votre agent lit et écrit des fichiers sur le chemin de montage. Les modifications sont automatiquement synchronisées avec le compartiment S3 de sauvegarde.
Sémantique des fichiers S3
-
Synchronisation bidirectionnelle entre le système de fichiers et le compartiment S3 de sauvegarde
-
Close-to-open cohérence pour les clients NFS ; cohérence finale de S3 pour l'accès côté compartiment
-
Taille maximale du fichier : 48 TiB ; profondeur maximale du répertoire : 1 000 niveaux
-
Non pris en charge : liens physiques, classes de stockage d'archives S3 (Glacier), métadonnées d'objets S3 personnalisées, PNFs
Flux de montage Amazon EFS
Lorsque vous configurez un point d'accès EFS, la séquence suivante se produit :
-
Vous créez un système de fichiers EFS et vous montez des cibles dans votre VPC (une par zone de disponibilité).
-
Vous créez un point d'accès EFS en spécifiant le POSIX UID/GID et le répertoire racine.
-
Vous configurez l'environnement d'exécution de l'agent avec l'ARN du point d'accès et le chemin de montage.
-
Lors de l'invocation avec un nouvel ID de session, fournit AgentCore à une microVM un accès réseau à votre VPC.
-
La microVM monte le système de fichiers NFSv4.1 via TLS (port 2049) via la cible de montage située dans la même zone de disponibilité.
-
Votre agent lit et écrit des fichiers sur le chemin de montage à l'aide d'opérations de fichier standard.
Sémantique de l'EFS
-
POSIX complet : liens physiques, liens symboliques, verrouillage consultatif des fichiers
-
Accès simultané en lecture-écriture à partir de plusieurs sessions et agents
-
Close-to-open cohérence
-
Taille maximale du fichier : 47,9 TiB ; profondeur maximale du répertoire : 1 000 niveaux
Stockage de session géré (version préliminaire)
Conservez l'état de session dans toute la configuration stop/resume d'un système de fichiers à l'aide du stockage de session géré. AgentCore Le stockage de session géré par Runtime est une fonctionnalité entièrement gérée par des services dans laquelle AgentCore Runtime gère toutes les opérations de stockage. Votre agent lit et écrit sur un support de système de fichiers local et l'environnement d'exécution réplique de manière transparente les données vers le stockage du service pendant toute la durée de la session.
Le stockage de session est isolé par session : chaque session ne peut accéder qu'à son propre stockage et ne peut ni lire ni écrire de données provenant d'autres sessions du même environnement d'exécution d'agent ou de sessions de différents environnements d'exécution d'agent.
Lorsque vous configurez le stockage de session sur un environnement d'exécution d'agent, chaque session obtient un répertoire persistant sur le chemin de montage que vous spécifiez. Le cycle de vie fonctionne comme suit :
-
Premier appel lors d'une session : un nouveau calcul isolé est provisionné. Votre agent voit un répertoire vide sur le chemin de montage.
-
L'agent écrit des fichiers : toutes les opérations sur les fichiers (lecture, écriture, mkdir, renommer) fonctionnent normalement, comme dans un système de fichiers local, et les données sont répliquées de manière asynchrone sur un stockage durable.
-
La session s'arrête : le calcul est terminé. Toutes les données qui ne sont pas encore conservées sont transférées vers un stockage durable lors de l'arrêt progressif.
-
Reprise avec la même session : un nouveau calcul est mis en service et l'état du système de fichiers est restauré à partir d'un stockage durable. L'agent peut reprendre là où il s'est arrêté.
Sémantique du système de fichiers
Le stockage de session fournit un système de fichiers Linux standard sur le chemin de montage que vous avez configuré. Les outils et les opérations standard fonctionnent sans modification : lscat,mkdir,git,npm,pip,, et cargo tous fonctionnent comme prévu.
Opérations prises en charge
Fichiers, répertoires et liens symboliques ordinaires. Lire, écrire, renommer, supprimer,, chmod chownstat, et readdir : opérations de fichiers POSIX standard utilisées par les outils de développement courants.
Restrictions
Pour les limites de stockage de session, y compris la taille maximale de stockage, le nombre de fichiers et la profondeur du répertoire, voir Limites de stockage de session.
Opérations non prises en charge
Les opérations de système de fichiers suivantes ne sont pas prises en charge :
-
Liens physiques — Utilisez plutôt des liens symboliques.
-
Les fichiers de périphériques, les FIFO ou les sockets UNIX ne
mknodsont pas pris en charge. -
Attributs étendus (xattr) : les outils qui dépendent des métadonnées xattr ne sont pas pris en charge.
-
fallocate — La préallocation de fichiers fragmentés n'est pas prise en charge.
-
Verrouillage de fichiers entre sessions : les verrouillages consultatifs fonctionnent au cours d'une session en cours mais ne sont pas persistants d'une session à stop/resume l'autre. Les outils qui utilisent le verrouillage basé sur des fichiers (tels que
git) ne sont pas affectés.
Note
Les autorisations sont stockées mais ne sont pas appliquées au cours de la session. chmodet stat fonctionnent correctement, mais les contrôles d'accès réussissent toujours car l'agent s'exécute en tant que seul utilisateur de la microVM.
Cycle de vie du stockage des sessions
Les données de session sont supprimées (réinitialisées à un état propre) dans les scénarios suivants :
-
La session n'est pas invoquée pendant 14 jours.
-
La version d'exécution de l'agent est mise à jour. L'appel d'une session après une mise à jour de version approvisionne un nouveau système de fichiers.
Utilisez DeleteAgentRuntimeou DeleteAgentRuntimeEndpointpour supprimer toutes les données de stockage de session associées à l'environnement d'exécution ou au point de terminaison.
Conditions requises pour apporter vos propres systèmes de fichiers
Avant de configurer un système de fichiers personnalisé, remplissez les conditions préalables suivantes.
Configuration VPC
Le runtime de votre agent doit utilisernetworkMode: VPC. Les sous-réseaux que vous spécifiez doivent se chevaucher avec les zones de disponibilité cibles du système de fichiers.
Autorisations IAM
Le rôle d'exécution du runtime de votre agent doit inclure des autorisations pour monter le système de fichiers.
Autorisations IAM pour les fichiers S3
{ "Effect": "Allow", "Action": [ "s3files:ClientMount", "s3files:ClientWrite", "s3files:GetAccessPoint" ], "Resource": "arn:aws:s3files:<region>:<account-id>:file-system/<file-system-id>", "Condition": { "ArnEquals": { "s3files:AccessPointArn": "arn:aws:s3files:<region>:<account-id>:file-system/<file-system-id>/access-point/<access-point-id>" } } }
Autorisations IAM pour EFS
{ "Effect": "Allow", "Action": [ "elasticfilesystem:ClientMount", "elasticfilesystem:ClientWrite" ], "Resource": "arn:aws:elasticfilesystem:<region>:<account-id>:file-system/<file-system-id>", "Condition": { "ArnEquals": { "elasticfilesystem:AccessPointArn": "arn:aws:elasticfilesystem:<region>:<account-id>:access-point/<access-point-id>" } } }
Omettez cette option ClientWrite si votre agent n'a besoin que d'un accès en lecture. L's3files:GetAccessPointautorisation est requise pour la validation du point d'accès S3 Files lors de la création de l'exécution de l'agent.
Groupes de sécurité
Autorisez le TCP sortant sur le port 2049 depuis le groupe de sécurité d'exécution de votre agent vers le groupe de sécurité cible du montage. Autorisez le TCP entrant sur le port 2049 du groupe de sécurité cible du montage à partir du groupe de sécurité d'exécution de l'agent.
Configuration des systèmes de fichiers
Les sections suivantes montrent comment configurer chaque type de système de fichiers.
Configuration d'un point d'accès Amazon S3 Files
Pour configurer un point d'accès S3 Files, spécifiez l'ARN du point d'accès et le chemin de montagefilesystemConfigurations. Le runtime de votre agent doit utiliser le mode réseau VPC.
Exemple
Configuration d'un point d'accès Amazon EFS
Pour configurer un point d'accès EFS, spécifiez l'ARN du point d'accès et le chemin de montagefilesystemConfigurations. Le runtime de votre agent doit utiliser le mode réseau VPC.
Exemple
Configuration du stockage de session géré
Ajoutez filesystemConfigurations avec une sessionStorage entrée lors de la création ou de la mise à jour d'un environnement d'exécution d'agent.
Exemple
Vous pouvez également ajouter un stockage de session à un environnement d'exécution d'agent existant à l'UpdateAgentRuntimeaide du même filesystemConfigurations paramètre.
Combinez les systèmes de fichiers
Vous pouvez combiner le stockage de sessions géré avec des systèmes de fichiers personnalisés sur un seul environnement d'exécution d'agent. L'exemple suivant configure les trois types.
import boto3 client = boto3.client("bedrock-agentcore-control", region_name="us-west-2") response = client.create_agent_runtime( agentRuntimeName="full-stack-agent", roleArn="arn:aws:iam::<account-id>:role/AgentExecutionRole", networkConfiguration={ "networkMode": "VPC", "networkModeConfig": { "subnets": ["<subnet-id-1>", "<subnet-id-2>"], "securityGroups": ["<security-group-id>"] } }, agentRuntimeArtifact={ "containerConfiguration": { "containerUri": "<account-id>.dkr.ecr.<region>.amazonaws.com/my-agent:latest" } }, filesystemConfigurations=[ { "s3FilesAccessPoint": { "accessPointArn": "arn:aws:s3files:<region>:<account-id>:file-system/<file-system-id>/access-point/<access-point-id>", "mountPath": "/mnt/datasets" } }, { "efsAccessPoint": { "accessPointArn": "arn:aws:elasticfilesystem:<region>:<account-id>:access-point/<access-point-id>", "mountPath": "/mnt/tools" } }, { "sessionStorage": { "mountPath": "/mnt/workspace" } } ] )
Invoquer et utiliser le stockage persistant
Tous les systèmes de fichiers configurés sont disponibles sur leur chemin de montage lorsque votre agent est appelé. Bring-your-own les systèmes de fichiers (S3 Files, EFS) sont accessibles immédiatement à chaque appel. Le stockage de session géré conserve les données d'un stop/resume cycle à l'autre en les utilisantruntimeSessionId.
Exemple : utilisation du stockage de session sur plusieurs stop/resume cycles
# First invocation — agent sets up the project aws bedrock-agentcore invoke-agent-runtime \ --agent-runtime-arn "arn:aws:bedrock-agentcore:us-west-2:111122223333:agent-runtime/coding-agent" \ --runtime-session-id "session-001" \ --payload '{"prompt": "Set up the project and install dependencies in /mnt/workspace"}' # Stop the session aws bedrock-agentcore stop-runtime-session \ --agent-runtime-arn "arn:aws:bedrock-agentcore:us-west-2:111122223333:agent-runtime/coding-agent" \ --runtime-session-id "session-001" # Resume later — the project is exactly where the agent left it aws bedrock-agentcore invoke-agent-runtime \ --agent-runtime-arn "arn:aws:bedrock-agentcore:us-west-2:111122223333:agent-runtime/coding-agent" \ --runtime-session-id "session-001" \ --payload '{"prompt": "Run the tests and fix any failures"}'
L'agent voit /mnt/workspace exactement ce qu'il a laissé : les fichiers source, les packages installés, les artefacts de compilation et l'historique .git sont tous intacts. Lorsque vous reprenez une session, le nouvel environnement informatique monte le stockage persistant. Votre agent peut continuer à travailler sans réinstaller de packages ni régénérer de fichiers.
Note
Lorsque vous appelez explicitement, attendez StopRuntimeSession toujours qu'il soit terminé avant de reprendre la session. Cela garantit que toutes les données sont transférées vers un stockage durable.
Note
Le chemin monté n'est disponible qu'au moment de l'appel de l'agent, et non lors de l'initialisation.
Restrictions
Le tableau suivant répertorie les limites des configurations de systèmes de fichiers.
| Ressource | Limite |
|---|---|
|
Nombre total de configurations de systèmes de fichiers par exécution d'agent |
5 |
|
Configurations maximales des points d'accès aux fichiers S3 |
2 |
|
Configurations maximales des points d'accès EFS |
2 |
|
Configurations maximales de stockage de sessions gérées |
1 |
Contraintes relatives au chemin de montage
Toutes les configurations de système de fichiers doivent respecter les règles de chemin de montage suivantes :
-
Doit se trouver en dessous
/mnt/avec exactement un niveau de sous-répertoire (par exemple,/mnt/data,/mnt/workspace). -
Modèle :
/mnt/[a-zA-Z0-9._-]+/? -
Longueur : 6 à 200 caractères
-
Chaque chemin de montage doit être unique dans toutes les configurations.
-
Les chemins de montage ne peuvent pas être des sous-répertoires les uns des autres.
Comportement du cycle
Le tableau suivant compare le comportement du cycle de vie entre le stockage de session géré et les systèmes de fichiers « Bring-your-own ».
| Comportement | Stockage de session géré (version préliminaire) | Bring-your-own (fichiers S3, EFS) |
|---|---|---|
|
Expiration du délai |
14 jours sans invocation — réinitialisation des données |
Aucun — géré par le client |
|
Lors de la mise à jour de la version |
Données effacées : nouveau système de fichiers lors du prochain appel |
Aucun effet, les données persistent |
|
Activé DeleteAgentRuntime |
Toutes les données de session ont été supprimées |
Système de fichiers démonté ; données conservées dans votre compte |
|
Accès simultané |
Isolé par session |
Partagé entre les sessions et les agents |
|
Ownership |
Service-managed par AgentCore |
Customer-managed dans votre AWS compte |
Important
Pour les systèmes de fichiers que vous pouvez apporter vous-même, assurez-vous que votre agent gère les accès simultanés de manière appropriée. Utilisez des modèles de dénomination fichier par session ou des verrouillages de fichiers consultatifs pour éviter les conflits.
Cas d’utilisation
Le tableau suivant répertorie les modèles courants et la configuration de système de fichiers recommandée pour chacun d'entre eux.
| Modèle | Configuration recommandée |
|---|---|
|
Agent de codage avec fichiers de projet persistants |
Stockage de session géré (version préliminaire) sur |
|
Ensembles de données de référence accessibles à la fois depuis les agents et les pipelines S3 |
Point d'accès aux fichiers S3 à |
|
Bibliothèques d'outils partagées entre tous les agents |
Point d'accès aux fichiers S3 ou EFS à |
|
Multi-agent collaboration sur un espace de travail partagé |
Point d'accès aux fichiers S3 ou EFS à |
|
Long-running analyse avec points de contrôle |
Stockage de session pour les points de contrôle + fichiers S3 pour les données d'entrée |
|
Full-stack agent (les deux catégories combinées) |
Stockage de session + fichiers S3 + EFS (3 montages) |
Exemple : agent de codage avec espace de travail persistant
Cet exemple montre un agent de codage utilisant des agents Strands FileSessionManager pour l'historique des conversations et le stockage de sessions pour les fichiers de projet. Les deux persistent au fil stop/resume des cycles.
Agent de codage avec stockage de session
import os # Enable non-interactive mode for strands tools os.environ["BYPASS_TOOL_CONSENT"] = "true" from strands import Agent from strands.session import FileSessionManager from strands.models import BedrockModel from strands_tools import file_read, file_write, shell from bedrock_agentcore.runtime import BedrockAgentCoreApp app = BedrockAgentCoreApp() WORKSPACE = "/mnt/workspace" model = BedrockModel(model_id="us.anthropic.claude-sonnet-4-20250514-v1:0") tools = [file_read, file_write, shell] @app.entrypoint def handle_request(payload): session_id = payload.get("session_id", "default") # Persist conversation history alongside project files session_manager = FileSessionManager( session_id=session_id, storage_dir=f"{WORKSPACE}/.sessions" ) agent = Agent( model=model, tools=tools, session_manager=session_manager, system_prompt="You are a coding assistant. Project files are in /mnt/workspace." ) response = agent(payload.get("prompt")) return {"response": response.message["content"][0]["text"]} if __name__ == "__main__": app.run()
requirements.txt
strands-agents strands-agents-tools bedrock-agentcore boto3
Appelez l'agent, arrêtez la session, puis reprenez-la. Les fichiers de projet et le contexte de conversation sont conservés.
Cycle d'appel, d'arrêt et de reprise
import boto3, json client = boto3.client("bedrock-agentcore") agent_arn = "arn:aws:bedrock-agentcore:us-west-2:111122223333:agent-runtime/coding-agent" session_id = "project-xyz-001" def invoke(prompt): resp = client.invoke_agent_runtime( agentRuntimeArn=agent_arn, runtimeSessionId=session_id, payload=json.dumps({"prompt": prompt, "session_id": "conv-001"}).encode() ) return json.loads(b"".join(resp["response"]))["response"] # First invoke: Create a simple script invoke("Write a Python script called calculator.py with add and subtract functions.") # Stop session — compute terminates, storage persists client.stop_runtime_session(agentRuntimeArn=agent_arn, runtimeSessionId=session_id) # Resume same session — new compute, but files and conversation history restored invoke("Add a multiply function to the script you created.") # Agent knows it created calculator.py (conversation history) # AND finds existing file (file persistence)
Il FileSessionManager enregistre l'historique des conversations/mnt/workspace/.sessions/, ce qui permet à l'agent de se souvenir du contexte au fil stop/resume des cycles.
Exigences liées à la mise en réseau
Cette section couvre les exigences réseau pour le stockage de sessions géré et les systèmes de fichiers « Bring-your-own ».
Réseau de stockage de session géré
Si le runtime de votre agent utilise le mode VPC avec stockage de session, l'agent a besoin d'un accès réseau pour se synchroniser avec le stockage distant. Les données de session étant stockées dans AgentCore S3, votre VPC doit autoriser la connectivité sortante vers S3. Si vous utilisez un point de terminaison S3 Gateway doté d'une politique personnalisée, vous pouvez définir l'accès à votre bucket de stockage de session régional comme suit :
"Action": [ "s3:GetObject", "s3:PutObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::acr-storage-*-region-an", "arn:aws:s3:::acr-storage-*-region-an/*" ], "Condition": { "StringEquals": { "aws:PrincipalServiceName": "bedrock-agentcore.amazonaws.com" } }
Remplacez region par votre AWS région (par exemple,us-west-2).
Bring-your-own mise en réseau de systèmes de fichiers
Bring-your-own les systèmes de fichiers nécessitent que votre réseau VPC réponde aux exigences suivantes pour des montages réussis.
Amazon EFS
-
Cibles de montage : votre système de fichiers EFS doit avoir des cibles de montage dans au moins une des zones de disponibilité où se trouvent les sous-réseaux d'exécution de votre agent. Il est recommandé de monter les cibles dans toutes les zones de disponibilité de sous-réseau configurées pour garantir une haute disponibilité.
-
Un VPC à la fois : les systèmes de fichiers EFS ne peuvent avoir de cibles de montage que dans un seul VPC à la fois. Cross-account Le montage en VPC n'est pas pris en charge pour. AgentCore
-
Alignement des zones de disponibilité : les sous-réseaux d'exécution des agents et les cibles de montage EFS doivent partager au moins une zone de disponibilité commune. Cross-AZ Le trafic NFS fonctionne mais augmente la latence et les coûts de transfert de données.
-
Résolution DNS : les noms d'hôte DNS et la résolution DNS doivent être activés sur votre VPC. L'agent résout le nom d'hôte cible du montage
<az-id>.<file-system-id>.efs.<region>.amazonaws.com.rproxy.goskope.comau moment du montage.
Pour vérifier vos cibles de montage EFS :
aws efs describe-mount-targets --file-system-id fs-0123456789abcdef0 --region us-west-2
Pour obtenir des informations complètes sur les cibles de montage EFS, consultez Comment fonctionne Amazon EFS.
Fichiers Amazon S3
-
Cibles de montage : votre système de fichiers S3 Files doit avoir des cibles de montage dans le même VPC que le moteur d'exécution de l'agent. Les cibles de montage doivent se trouver dans au moins une des mêmes zones de disponibilité que les sous-réseaux d'exécution de votre agent.
-
Une cible de montage par AZ — Chaque zone de disponibilité peut avoir au plus une cible de montage S3 Files.
-
Même VPC : les cibles de montage des fichiers S3 doivent se trouver dans le même VPC que le moteur d'exécution de l'agent. Cross-VPC l'accès au système de fichiers n'est pas pris en charge.
-
Résolution DNS : votre VPC doit résoudre le nom d'hôte cible du montage de S3 Files
<az-id>.<file-system-id>.s3files.<region>.on.awsau moment du montage. Assurez-vous que la résolution DNS est activée dans les paramètres de votre VPC.
Pour vérifier les cibles de montage de vos fichiers S3 :
aws s3files list-mount-targets --file-system-id fs-0123456789abcdef0 --region us-west-2
Pour des informations complètes sur le montage de fichiers S3, voir Montage de systèmes de fichiers S3.
Besoins partagés
| Exigence | EFS | S3 Files |
|---|---|---|
|
Mode VPC requis |
✓ |
✓ |
|
Port NFS 2049 (TCP) |
✓ |
✓ |
|
Montez des cibles dans la même zone |
✓ (recommandé) |
✓ (obligatoire) |
|
Même VPC |
✓ |
✓ |
|
Même AWS compte |
✓ |
✓ |
|
Résolution DNS activée |
✓ |
✓ |
|
Cross-account VPC |
✗ Non pris en charge |
✗ Non pris en charge |
Important
Cross-account Les configurations VPC ne sont pas prises en charge. Les ressources du système de fichiers (système de fichiers, points d'accès, cibles de montage) et le runtime de l'agent doivent se trouver dans le même AWS compte et le même VPC.
Comment AgentCore monte les systèmes de fichiers
AgentCore gère automatiquement l'opération de montage NFS à l'intérieur de la microVM :
-
EFS — Monté NFSv4.1 via TLS (port 2049). L'authentification IAM est utilisée lorsque le rôle d'exécution dispose d'une
elasticfilesystem:ClientMountautorisation assortie d'uneAccessPointArncondition. -
Fichiers S3 — Montés NFSv4.2 via TLS avec authentification IAM obligatoire. TLS et IAM sont toujours activés et ne peuvent pas être désactivés pour les fichiers S3.
Il n'est pas nécessaire d'installeramazon-efs-utils, de configurer /etc/fstab ou de gérer les certificats TLS. Le moteur d'exécution MicroVM gère toutes les opérations de montage, la rotation des identifiants et la surveillance de l'état de santé.
Sélection du sous-réseau et de la zone de disponibilité
Lorsque vous configurez à la fois des sous-réseaux VPC et des configurations de système de fichiers sur un environnement d'exécution d'agent, sélectionnez les sous-réseaux qui chevauchent les zones de disponibilité cibles de montage de votre système de fichiers.
Pour identifier l'ID de zone de disponibilité de vos sous-réseaux :
aws ec2 describe-subnets \ --subnet-ids subnet-0123456789abcdef0 \ --query 'Subnets[0].AvailabilityZoneId'
Pour identifier la zone de disponibilité de vos cibles de montage EFS :
aws efs describe-mount-targets \ --file-system-id fs-0123456789abcdef0 \ --query 'MountTargets[*].[AvailabilityZoneId, LifeCycleState]' \ --output table
Assurez-vous que les sous-réseaux d'exécution de votre agent se trouvent dans les zones de disponibilité où votre système de fichiers possède des cibles de montage.
Pour connaître les zones de disponibilité prises en charge par région, consultez les zones de disponibilité prises en charge dans la rubrique relative à la configuration du VPC. Pour la configuration du groupe de sécurité, consultez Exemple : connexion à Amazon EFS ou à Amazon S3 Files.
Résoudre les problèmes de montage du système de fichiers « Bring-your-own »
En cas d'échec du montage d'un système de fichiers « Bring-your-own », InvokeAgentRuntime renvoie HTTP 424 (Failed Dependency).
| Symptôme | Cause probable | Solution rapide |
|---|---|---|
|
« Accès refusé » |
Rôle d'exécution manquant |
Ajouter des autorisations IAM avec condition |
|
« ResourceNotFound » ou « Impossible de résoudre » |
Point d'accès ou cible de montage supprimé ou indisponible |
Vérifiez que l'ARN existe et que les cibles de montage sont disponibles |
|
Le montage se bloque puis échoue (~30s) |
Groupe de sécurité bloquant le port 2049 ou absence de cible de montage dans la zone de disponibilité de l'agent |
Autoriser le protocole TCP 2049 ; vérifier le chevauchement des zones de disponibilité |
|
« Autorisation refusée » sur les écritures |
Manquant |
Ajouter une autorisation d'écriture ou aligner l'utilisateur POSIX du point d'accès |
Chaque montage a un délai d'expiration de 30 secondes. Tous les systèmes de fichiers configurés sont montés en parallèle : une seule défaillance entraîne l'échec complet de l'invocation.
Pour plus d'informations, consultez la section Résolution des problèmes de stockage BYO.