Configuration d'Amazon Bedrock AgentCore Runtime et des outils pour VPC
Vous pouvez configurer Amazon Bedrock AgentCore Runtime et les outils intégrés (interpréteur de code et outil de navigateur) pour vous connecter aux ressources de votre Amazon Virtual Private Cloud (VPC). En configurant la connectivité VPC, vous permettez un accès sécurisé aux ressources privées telles que les bases de données, les API internes et les services au sein de votre VPC.
Connectivité VPC pour Amazon Bedrock AgentCore Runtime et ses outils
Pour activer Amazon Bedrock AgentCore Runtime et les outils intégrés permettant d'accéder en toute sécurité aux ressources de votre VPC privé, AgentCore fournit des fonctionnalités de connectivité VPC. Cette fonctionnalité permet à votre environnement d'exécution et à vos outils de :
-
Connectez-vous à des ressources privées sans les exposer à Internet
-
Maintenez des communications sécurisées dans les limites du réseau de votre entreprise
-
Accédez aux magasins de données et aux services internes de l'entreprise tout en préservant la sécurité
Lorsque vous configurez la connectivité VPC pour Amazon Bedrock AgentCore Runtime et ses outils :
-
Amazon Bedrock crée des interfaces réseau élastiques (ENI) dans votre VPC à l'aide du rôle lié à un service
AWSServiceRoleForBedrockAgentCoreNetwork -
Ces ENI permettent à votre Amazon Bedrock AgentCore Runtime et à vos outils de communiquer en toute sécurité avec les ressources de votre VPC
-
Une adresse IP privée est attribuée à chaque ENI à partir des sous-réseaux que vous spécifiez.
-
Les groupes de sécurité attachés aux ENI contrôlent les ressources avec lesquelles votre environnement d'exécution et vos outils peuvent communiquer
Note
Les ENI sont des ressources partagées entre les agents qui utilisent la même configuration de sous-réseau et de groupe de sécurité. Lorsque vous supprimez un agent, l'ENI associé peut rester dans votre VPC jusqu'à 8 heures avant d'être automatiquement supprimé.
Note
La connectivité VPC a un impact sur le trafic réseau entrant et sortant des services. AgentCore Lorsque vous hébergez votre application dans un AWS VPC, vous pouvez établir une connectivité privée aux API AgentCore Runtime et AgentCore Gateway en ajoutant le point de terminaison VPC à votre AgentCore VPC. Cela permet des appels d'API sécurisés, sans traversée d'Internet, via des connexions entrantes PrivateLink VPC.
Conditions préalables
Avant de configurer Amazon Bedrock AgentCore Runtime et les outils d'accès aux VPC, assurez-vous de disposer des éléments suivants :
-
Un Amazon VPC doté de sous-réseaux adaptés à vos besoins en termes d'exécution et d'outils. Par exemple, pour configurer vos sous-réseaux pour qu'ils aient accès à Internet, consultez la section Considérations relatives à l'accès à Internet.
-
Sous-réseaux situés dans les zones de disponibilité prises en charge par votre région. Pour plus d'informations sur les zones de disponibilité prises en charge, consultez la section Zones de disponibilité prises en charge.
-
Groupes de sécurité appropriés définis dans votre VPC pour les modèles d'accès aux environnements d'exécution et aux outils. Par exemple, pour configurer vos groupes de sécurité pour qu'ils se connectent à Amazon RDS, consultez Exemple : connexion à une base de données Amazon RDS.
-
Autorisations IAM requises pour créer et gérer le rôle lié au service (déjà incluses dans la politique AWS gérée). BedrockAgentCoreFullAccess Pour plus d'informations sur les autorisations requises, consultez la section Autorisations IAM.
-
Points de terminaison VPC requis si votre VPC n'a pas accès à Internet. Par exemple, pour configurer vos points de terminaison VPC, consultez la section Configuration des points de terminaison VPC.
-
Compréhension de vos exigences en matière d'environnement d'exécution et de réseau d'outils (bases de données, API, ressources Web). Si vous devez utiliser un outil de navigateur qui nécessite un accès à Internet, votre VPC doit avoir accès à Internet via NAT Gateway. Par exemple, consultez la section Considérations relatives aux groupes de sécurité.
Important
AgentCore crée une interface réseau dans votre compte avec une adresse IP privée. L'utilisation d'un sous-réseau public ne fournit pas de connectivité Internet. Pour activer l'accès à Internet, placez-le dans des sous-réseaux privés avec une route vers une passerelle NAT.
Zones de disponibilité prises en charge
AgentCore prend en charge la connectivité VPC dans des zones de disponibilité spécifiques au sein de chaque région prise en charge. Lorsque vous configurez des sous-réseaux pour votre Amazon Bedrock AgentCore Runtime et les outils intégrés, assurez-vous que vos sous-réseaux sont situés dans les zones de disponibilité prises en charge par votre région.
Le tableau suivant indique les ID de zone de disponibilité pris en charge pour chaque région :
| Région | Code région | Zones de disponibilité prises en charge |
|---|---|---|
|
USA Est (Virginie du Nord) |
us-east-1 |
utilisation1-az1 utilisation1-az2 utilisation1-az4 |
|
USA Est (Ohio) |
us-east-2 |
utilisateur2-az1 utilisateur2-az2 utilisateur2-az3 |
|
USA Ouest (Oregon) |
us-west-2 |
usw2-az1 usw2-az2 usw2-az3 |
|
Asie-Pacifique (Malaisie) |
ap-southeast-5 |
apse5-az1 apse5-az2 apse5-az3 |
|
Asie-Pacifique (Mumbai) |
ap-south-1 |
aps1-az1 aps1-az2 aps1-az3 |
|
Asie-Pacifique (Séoul) |
ap-northeast-2 |
apné2-az1 apné2-az2 apné2-az3 |
|
Asie-Pacifique (Singapour) |
ap-southeast-1 |
apse1-az1 apse1-az2 apse1-az3 |
|
Asie-Pacifique (Sydney) |
ap-southeast-2 |
apse2-az1 apse2-az2 apse2-az2 apse2-az3 |
|
Asie-Pacifique (Thaïlande) |
ap-southeast-7 |
apse7-az1 apse7-az2 apse7-az3 |
|
Asie-Pacifique (Tokyo) |
ap-northeast-1 |
apné1-az1 apné1-az2 apné1-az4 |
|
Canada (Centre) |
ca-central-1 |
cac1-az1 cac1-az2 cac1-az4 |
|
Europe (Francfort) |
eu-central-1 |
euc1-az1 euc1-az2 euc1-az3 |
|
Europe (Irlande) |
eu-west-1 |
euw1-az1 euw1-az2 euw1-az3 |
|
Europe (Londres) |
eu-west-2 |
euw2-az1 euw2-az2 euw2-az3 |
|
Europe (Milan) |
eu-south-1 |
eus1-az1 eus1-az2 eus1-az3 |
|
Europe (Paris) |
eu-west-3 |
euw3-az1 euw3-az2 euw3-az3 |
|
Europe (Espagne) |
eu-south-2 |
eus2-az1 eus2-az2 eus2-az3 |
|
Europe (Stockholm) |
eu-north-1 |
eun1-az1 eun1-az2 eun1-az3 |
|
Amérique du Sud (São Paulo) |
sa-east-1 |
sae1-az1 sae1-az2 sae1-az3 |
|
AWS GovCloud (US-West) |
us-gov-west-1 |
usgw1-az1 usgw1-az2 usgw1-az3 |
Important
Les sous-réseaux doivent être situés dans les zones de disponibilité prises en charge répertoriées ci-dessus. Si vous spécifiez des sous-réseaux dans des zones de disponibilité non prises en charge, la configuration échouera lors de la création des ressources.
Pour identifier l'ID de zone de disponibilité de vos sous-réseaux, vous pouvez utiliser la commande CLI suivante :
aws ec2 describe-subnets --subnet-ids subnet-12345678 --query 'Subnets[0].AvailabilityZoneId'
Autorisations IAM
AgentCore utilise le rôle lié au service AWSServiceRoleForBedrockAgentCoreNetwork pour créer et gérer des interfaces réseau dans votre VPC. Ce rôle est automatiquement créé lorsque vous configurez pour la première fois Amazon Bedrock AgentCore Runtime ou des outils AgentCore intégrés pour utiliser la connectivité VPC.
Si vous devez créer ce rôle manuellement, votre entité IAM a besoin des autorisations suivantes :
{ "Action": "iam:CreateServiceLinkedRole", "Effect": "Allow", "Resource": "arn:aws:iam::*:role/aws-service-role/network.bedrock-agentcore.amazonaws.com/AWSServiceRoleForBedrockAgentCoreNetwork", "Condition": { "StringLike": { "iam:AWSServiceName": "network.bedrock-agentcore.amazonaws.com" } } }
Cette autorisation est déjà incluse dans la politique AWS gérée BedrockAgentCoreFullAccess.
Bonnes pratiques
Pour des performances et une sécurité optimales avec VPC-connected Amazon Bedrock AgentCore Runtime et les outils intégrés :
-
Haute disponibilité :
-
Configurez au moins deux sous-réseaux privés dans différentes zones de disponibilité. Pour obtenir la liste des zones de disponibilité prises en charge, consultez la section Zones de disponibilité prises en charge.
-
Déployez des ressources dépendantes (telles que des bases de données ou des caches) avec le support multi-AZ pour éviter les points de défaillance uniques.
-
-
Performances du réseau :
-
Placez les sous-réseaux Amazon Bedrock AgentCore Runtime ou des outils intégrés dans les mêmes zones de disponibilité que les ressources auxquelles ils se connectent. Cela réduit la latence entre les AZ et les coûts de transfert de données.
-
Utilisez les points de terminaison VPC pour les AWS services dans la mesure du possible. Les points de terminaison offrent une latence plus faible, une fiabilité accrue et évitent les frais de passerelle NAT pour les services pris en charge.
-
-
Sécurité:
-
Appliquez le principe du moindre privilège lors de la création de règles de groupe de sécurité.
-
Activez les journaux de flux VPC à des fins d'audit et de surveillance. Consultez régulièrement les journaux pour identifier les modèles de trafic inattendus.
-
-
Accès à Internet :
-
Pour fournir un accès à Internet depuis Amazon Bedrock AgentCore Runtime ou des outils intégrés dans un VPC, configurez une passerelle NAT dans un sous-réseau public. Mettez à jour la table de routage pour les sous-réseaux privés afin d'envoyer du trafic sortant (0.0.0). 0/0) vers la passerelle NAT.
-
Nous recommandons d'utiliser des points de terminaison VPC pour les AWS services plutôt que le routage Internet afin d'améliorer la sécurité et de réduire les coûts.
-
Configuration de l'accès au VPC pour l'exécution et les outils
Vous pouvez configurer l'accès VPC pour Amazon Bedrock AgentCore Runtime et les outils intégrés à l'aide de la console de AWS gestion, de la AWS CLI ou des SDK. AWS
Configuration de l’exécution
Exemple
Configuration de l'interpréteur de code
Exemple
Configuration de l'outil de navigation
Exemple
Considérations relatives aux groupes de sécurité
Les groupes de sécurité agissent comme des pare-feux virtuels pour votre Amazon Bedrock AgentCore Runtime ou comme un outil intégré lorsque vous êtes connecté à un VPC. Ils contrôlent le trafic entrant et sortant au niveau de l'instance. Pour configurer des groupes de sécurité pour votre environnement d'exécution :
-
Règles de sortie : définissez des règles de sortie pour permettre à votre Amazon Bedrock AgentCore Runtime de se connecter aux ressources VPC requises.
-
Règles de trafic entrant : assurez-vous que le groupe de sécurité de la ressource cible autorise les connexions entrantes depuis le groupe de sécurité associé à votre Amazon AgentCore Bedrock Runtime.
-
Privilège minimal — Appliquez le principe du moindre privilège en n'autorisant que le trafic minimum requis.
Exemple : connexion à une base de données Amazon RDS
Lorsque votre Amazon Bedrock AgentCore Runtime se connecte à une base de données Amazon RDS, configurez les groupes de sécurité comme suit :
Groupe de sécurité Amazon Bedrock AgentCore Runtime
-
Sortant — Autorisez le trafic TCP vers le groupe de sécurité de la base de données RDS sur le port 3306 (MySQL).
-
Entrant — Non obligatoire. Le moteur d'exécution initie uniquement les connexions sortantes.
Groupe de sécurité de base de données Amazon RDS
-
Entrant — Autorisez le trafic TCP en provenance du groupe de sécurité Amazon Bedrock AgentCore Runtime sur le port 3306.
-
Sortant : non obligatoire. Le trafic de retour est automatiquement autorisé car les groupes de sécurité sont dynamiques.
Exemple : connexion aux fichiers Amazon EFS ou Amazon S3
Lorsque vous configurez des systèmes de fichiers « Bring-your-own » (points d'accès Amazon EFS ou Amazon S3 Files) sur le runtime de votre agent, AgentCore Runtime monte le système de fichiers sur NFS. Cela nécessite une connectivité TCP sur le port 2049 entre les ENI d'exécution de l'agent et les cibles de montage du système de fichiers.
AgentCore gère automatiquement le chiffrement TLS et l'authentification IAM. L'assistant de amazon-efs-utils montage est préinstallé dans le moteur d'exécution de microVM. Vous n'avez pas besoin de configurer ou d'installer de logiciel de montage dans votre image de conteneur.
Configuration du groupe de sécurité
Configurez vos groupes de sécurité pour autoriser le trafic NFS entre le runtime de l'agent et les cibles de montage de votre système de fichiers.
Groupe de sécurité d'exécution de l'agent — Règle sortante :
| Type | Protocole | Plage de ports | Destination | Description |
|---|---|---|---|---|
|
NFS |
TCP |
2049 |
|
Autoriser NFS à monter des cibles sur le système de fichiers |
Groupe de sécurité cible de montage du système de fichiers — Règle de trafic entrant :
| Type | Protocole | Plage de ports | Source | Description |
|---|---|---|---|---|
|
NFS |
TCP |
2049 |
|
Autoriser NFS à partir de Runtime AgentCore |
sg-mounttargetRemplacez-le par l'ID du groupe de sécurité de vos cibles de montage EFS ou S3 Files, et sg-agentruntime par l'ID du groupe de sécurité utilisé par l'environnement d'exécution de votre agent.
AWS CLI — Ajoutez une règle sortante au groupe de sécurité d'exécution de l'agent :
aws ec2 authorize-security-group-egress \ --group-id sg-0123456789abcdef0 \ --protocol tcp \ --port 2049 \ --source-group sg-0987654321fedcba0
AWS CLI — Ajoutez une règle entrante pour monter le groupe de sécurité cible :
aws ec2 authorize-security-group-ingress \ --group-id sg-0987654321fedcba0 \ --protocol tcp \ --port 2049 \ --source-group sg-0123456789abcdef0
Note
Si vous utilisez un seul groupe de sécurité à la fois pour le runtime de l'agent et pour les cibles de montage du système de fichiers, ajoutez une règle d'autoréférencement qui autorise le TCP entrant sur le port 2049 à partir du même groupe de sécurité.
Configuration du point de terminaison VPC
Lorsque vous exécutez Amazon Bedrock AgentCore Runtime dans un VPC, nous vous recommandons vivement de configurer les points de terminaison VPC suivants. Ces points de terminaison sont nécessaires si votre VPC n'a pas accès à Internet, et ils sont vivement recommandés même si votre VPC possède une passerelle NAT, afin d'éviter les frais de traitement des données liés à la passerelle NAT.
Points de terminaison VPC requis
-
Exigences relatives à Amazon ECR :
-
Point de terminaison Docker :
com.amazonaws.region.ecr.dkr -
Point de terminaison de l'API ECR :
com.amazonaws.region.ecr.api
-
-
Exigences relatives à Amazon S3 :
-
Point de terminaison de passerelle pour le stockage de la couche docker ECR :
com.amazonaws.region.s3Important
Pour les agents de conteneur, actualise AgentCore régulièrement votre image de conteneur depuis ECR, qui stocke les couches d'images dans Amazon S3. Sans point de terminaison VPC S3 Gateway, ce trafic passe par votre passerelle NAT et entraîne des frais de traitement des données. Un point de terminaison VPC S3 Gateway est gratuit et élimine ces frais. Nous vous recommandons vivement d'ajouter ce point de terminaison pour tous les agents de VPC-mode conteneur, même si votre VPC dispose d'un accès Internet via NAT.
Autorisations minimales de compartiment S3 pour les agents de conteneur
Le point de terminaison de la passerelle S3 utilise un document de politique IAM pour limiter l'accès au service. Pour respecter le principe du moindre privilège, appliquez la politique de point de terminaison de la passerelle S3 uniquement au compartiment Amazon S3 utilisé par Amazon ECR pour stocker les couches d'images. La politique suivante restreint l'accès au bucket de stockage de la couche ECR pour votre région :
{ "Statement": [ { "Sid": "AllowECRLayerAccess", "Principal": "*", "Action": [ "s3:GetObject" ], "Effect": "Allow", "Resource": ["arn:aws:s3:::prod-region-starport-layer-bucket/*"] } ] }regionRemplacez-le par l'identifiant de votre AWS région (par exemple,us-east-2pour l'est des États-Unis (Ohio)).Autorisations minimales du compartiment S3 pour les agents de déploiement direct de code
Pour les agents déployés à l'aide du déploiement direct de code (basé sur le code zip), AgentCore stocke vos artefacts de code dans un compartiment S3 appartenant au service interne. Étendez la politique de point de terminaison de la passerelle S3 uniquement au compartiment d'artefacts de code de votre région :
{ "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": [ "arn:aws:s3:::acr-code-*-region-an", "arn:aws:s3:::acr-code-*-region-an/*" ], "Condition": { "StringEquals": { "aws:PrincipalServiceName": "bedrock-agentcore.amazonaws.com" } } } ] }regionRemplacez-le par votre identifiant de AWS région (par exemple,us-west-2).Note
Les compartiments d'artefacts de AgentCore code sont créés dans les compartiments à usage général de l'espace de noms régional du compte. AWS Seul le nom réel des compartiments utilisés par le service peut être propriétaire. Cette
aws:PrincipalServiceNamecondition garantit que seul le principal du AgentCore service peut accéder aux buckets via cette politique de point de terminaison.Note
Si vous utilisez également des systèmes de fichiers persistants, ajoutez le bucket de stockage de session (
acr-storage-*-region-an) à cette politique. Consultez la section Exigences relatives au réseau pour connaître les autorisations requises.
-
-
CloudWatch Prérequis:
-
Point de terminaison des journaux :
com.amazonaws.region.logs
-
Note
Assurez-vous de le remplacer region par votre région spécifique si elle est différente.
Note
Si vous utilisez des configurations de système de fichiers, assurez-vous que votre VPC répond aux exigences de mise en réseau.
Considérations relatives à l'accès Internet
Lorsque vous connectez Amazon Bedrock AgentCore Runtime ou un outil intégré à un Virtual Private Cloud (VPC), celui-ci n'a pas accès à Internet par défaut. Par défaut, ces ressources ne peuvent communiquer qu'avec les ressources d'un même VPC. Si votre environnement d'exécution ou votre outil nécessite un accès à la fois aux ressources du VPC et à Internet, vous devez configurer votre VPC en conséquence.
Architecture d'accès à Internet
Pour activer l'accès à Internet pour votre VPC-connected Amazon Bedrock AgentCore Runtime ou votre outil intégré, configurez votre VPC avec les composants suivants :
-
Sous-réseaux privés : placez l'Amazon Bedrock AgentCore Runtime ou les interfaces réseau de l'outil dans des sous-réseaux privés.
-
Sous-réseaux publics dotés d'une passerelle NAT : déployez une passerelle NAT dans un ou plusieurs sous-réseaux publics afin de fournir un accès Internet sortant aux ressources privées.
-
Passerelle Internet (IGW) : connectez une passerelle Internet à votre VPC pour permettre la communication entre la passerelle NAT et Internet.
Configuration du routage
Mettez à jour les tables de routage de vos sous-réseaux comme suit :
-
Table de routage de sous-réseau privé — Ajoutez une route par défaut (0.0.0. 0/0) qui pointe vers la passerelle NAT. Cela permet au trafic sortant du moteur d'exécution ou de l'outil d'atteindre Internet.
-
Table de routage du sous-réseau public — Ajoutez une route par défaut (0.0.0. 0/0) qui pointe vers la passerelle Internet. Cela permet à la passerelle NAT de communiquer avec Internet.
Important
La connexion d'Amazon Bedrock AgentCore Runtime et des outils intégrés à des sous-réseaux publics ne fournit pas d'accès à Internet. Utilisez toujours des sous-réseaux privés avec des passerelles NAT pour la connectivité Internet.
Surveillance et résolution des problèmes
Pour surveiller et résoudre les problèmes liés à votre environnement d' AgentCore exécution et à vos outils VPC-connected Amazon Bedrock :
CloudWatch Journaux
Activez CloudWatch les journaux pour votre Amazon Bedrock AgentCore Runtime afin d'identifier tout problème de connectivité :
-
Vérifiez les messages d'erreur liés à la connectivité VPC
-
Recherchez les erreurs de temporisation lors de la connexion aux ressources VPC
-
Surveillez les temps d'initialisation (la connectivité VPC peut augmenter le temps de démarrage des sessions)
Problèmes courants et solutions correspondantes
-
Délais de connexion :
-
Vérifiez que les règles du groupe de sécurité sont correctes
-
Assurez-vous que les tables de routage sont correctement configurées
-
Vérifiez que la ressource cible est en cours d'exécution et accepte les connexions
-
-
Défaillances de résolution DNS :
-
Assurez-vous que la résolution DNS est activée dans votre VPC
-
Vérifiez que vos options DHCP sont correctement configurées
-
-
ENI manquants :
-
Vérifiez les autorisations IAM pour vous assurer que le rôle lié au service dispose des autorisations appropriées
-
Vérifiez les quotas de service qui ont pu être atteints
-
Problèmes avec l'interpréteur de code
-
L'interpréteur de code invoque les délais d'appel lorsqu'il tente d'appeler un point de terminaison public :
-
Vérifiez que le VPC est configuré avec une passerelle NAT pour l'accès à Internet
-
-
Les appels à un interpréteur de code avec des points de terminaison VPC privés génèrent des erreurs « » : AccessDenied
-
Assurez-vous que le rôle d'exécution transmis lors de la création de l'interpréteur de code dispose des autorisations appropriées pour le AWS service pour lequel le point de terminaison VPC a été configuré
-
-
Les appels à un interpréteur de code avec certains points de terminaison VPC privés affichent l'erreur « Impossible de localiser les informations d'identification » :
-
Vérifiez que le rôle d'exécution a été fourni lors de la création de l'interpréteur de code
-
Problèmes liés à l'outil de navigation
-
Live-View/Connection Stream ne parvient pas à charger les pages Web et échoue en raison des délais de connexion :
-
Vérifiez si le navigateur a été créé avec un sous-réseau privé avec une passerelle NAT
-
Tester la connectivité VPC
Pour vérifier que votre AgentCore environnement d'exécution et vos outils disposent d'une connectivité VPC appropriée, vous pouvez tester les connexions à vos ressources privées et vérifier que les interfaces réseau sont créées correctement dans les sous-réseaux que vous avez spécifiés.
Pour vérifier que votre AgentCore outil dispose d'un accès à Internet, vous pouvez configurer un interpréteur de code avec votre configuration VPC et utiliser l'InvokeAPI pour tenter de se connecter à une API publique ou à un site Web à l'aide d'une curl commande et vérifier la réponse. executeCommand Si le délai de connexion expire, passez en revue la configuration de votre VPC, en particulier vos tables de routage et la configuration de la passerelle NAT.
# Using awscurl awscurl -X POST \ "https://bedrock-agentcore.<Region>.amazonaws.com/code-interpreters/<code_interpreter_id>/tools/invoke" \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -H "x-amzn-code-interpreter-session-id: your-session-id" \ --service bedrock-agentcore \ --region <Region> \ -d '{ "name": "executeCommand", "arguments": { "command": "curl amazon.com" } }'
Problèmes de connectivité au système de fichiers
En cas d'échec du montage d'un système de fichiers, l'InvokeAgentRuntimeAPI renvoie le statut HTTP 424 (Failed Dependency). Utilisez les sections suivantes pour diagnostiquer la cause première.
Expiration du délai de montage du système de fichiers
Symptômes : les appels d'agents avec des configurations de système de fichiers échouent après un délai prolongé. L'erreur indique que le délai de l'opération de montage a expiré.
Causes courantes et solutions :
1. Règles du groupe de sécurité manquantes
Vérifiez la règle de trafic sortant sur le groupe de sécurité d'exécution de votre agent :
aws ec2 describe-security-groups \ --group-ids sg-0123456789abcdef0 \ --query 'SecurityGroups[0].IpPermissionsEgress[?ToPort==`2049`]'
Vérifiez la règle de trafic entrant sur votre groupe de sécurité cible de montage :
aws ec2 describe-security-groups \ --group-ids sg-0987654321fedcba0 \ --query 'SecurityGroups[0].IpPermissions[?ToPort==`2049`]'
Si l'une des requêtes renvoie des résultats vides, ajoutez la règle manquante comme indiqué dans Exemple : connexion à Amazon EFS ou à Amazon S3 Files.
2. Aucune cible de montage dans la zone de disponibilité de l'agent
Le runtime de l'agent peut être placé dans une zone de disponibilité où aucune cible de montage n'existe. Vérifiez le chevauchement :
# Get agent runtime subnet AZs aws ec2 describe-subnets \ --subnet-ids subnet-0123456789abcdef0 subnet-0123456789abcdef1 \ --query 'Subnets[*].[SubnetId, AvailabilityZoneId]' --output table # Get EFS mount target AZs aws efs describe-mount-targets \ --file-system-id fs-0123456789abcdef0 \ --query 'MountTargets[*].[AvailabilityZoneId, LifeCycleState]' --output table
Solution : créez une cible de montage dans chaque zone de disponibilité où se trouvent les sous-réseaux d'exécution de votre agent, ou limitez les sous-réseaux d'exécution de l'agent aux zones de disponibilité où existent des cibles de montage.
3. Route manquante dans la table de routage : itinéraire local
Vérifiez que la table de routage associée aux sous-réseaux d'exécution de votre agent inclut la route VPC locale :
aws ec2 describe-route-tables \ --filters "Name=association.subnet-id,Values=subnet-0123456789abcdef0" \ --query 'RouteTables[0].Routes[?DestinationCidrBlock]'
Le montage du système de fichiers échoue avec « ResourceNotFound »
Symptômes : l'invocation de l'agent échoue immédiatement (sans délai d'expiration) avec une ResourceNotFound erreur de référence au nom d'hôte du système de fichiers.
Causes courantes et solutions :
1. Échec de résolution DNS — Le VPC ne peut pas résoudre le nom d'hôte cible de montage du système de fichiers.
Vérifiez les paramètres DNS de votre VPC :
aws ec2 describe-vpc-attribute \ --vpc-id vpc-0123456789abcdef0 \ --attribute enableDnsSupport aws ec2 describe-vpc-attribute \ --vpc-id vpc-0123456789abcdef0 \ --attribute enableDnsHostnames
Les deux doivent revenirtrue. Si ce n'est pas le cas, activez-les :
aws ec2 modify-vpc-attribute --vpc-id vpc-0123456789abcdef0 --enable-dns-support aws ec2 modify-vpc-attribute --vpc-id vpc-0123456789abcdef0 --enable-dns-hostnames
2. La cible de montage n'est pas disponible : la cible de montage est peut-être toujours en cours de création ou a peut-être été supprimée.
# For EFS aws efs describe-mount-targets --file-system-id fs-0123456789abcdef0 # For S3 Files aws s3files list-mount-targets --file-system-id fs-0123456789abcdef0
Assurez-vous que la cible de montage LifeCycleState estavailable. Si la cible de montage est manquante, recréez-la dans les sous-réseaux appropriés.
3. Système de fichiers ou point d'accès supprimé : la ressource référencée dans la configuration d'exécution de l'agent n'existe plus. Vérifiez et mettez à jour le runtime de l'agent avec des ARN valides.
Note
Dans de rares cas, les montages de fichiers S3 peuvent échouer en raison d'une ResourceNotFound erreur transitoire due au délai de résolution du DNS. Réessayer l'invocation résout généralement ce problème. Si l'erreur persiste, vérifiez que les cibles de montage sont en bon Available état.
Incompatibilité de la zone de disponibilité (pannes intermittentes)
Symptômes : les montages du système de fichiers réussissent par intermittence : certaines invocations fonctionnent tandis que d'autres échouent avec des délais impartis.
Pourquoi cela se produit : l'environnement d'exécution de votre agent possède des sous-réseaux dans plusieurs zones de disponibilité, mais les cibles de montage n'existent que dans certaines d'entre elles. Lorsque l'agent est placé dans une zone AZ sans cible de montage, le délai de montage expire.
Solution : créez des cibles de montage dans toutes les zones de disponibilité où se trouvent les sous-réseaux d'exécution de votre agent (recommandé) ou supprimez les sous-réseaux d'exécution des agents situés dans des zones de disponibilité sans cibles de montage.
# List all EFS mount target AZs aws efs describe-mount-targets \ --file-system-id fs-0123456789abcdef0 \ --query 'MountTargets[*].AvailabilityZoneId' --output text # Create a mount target in a missing AZ aws efs create-mount-target \ --file-system-id fs-0123456789abcdef0 \ --subnet-id subnet-in-missing-az \ --security-groups sg-0987654321fedcba0
Note
Pour les fichiers S3, utilisez aws s3files create-mount-target les mêmes paramètres.