

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.

# Résolution des problèmes
<a name="microvms-troubleshooting"></a>

Cette section décrit comment déboguer et résoudre les problèmes courants liés à l'utilisation de MicroVMS. AWS Lambda 

## Accès au shell
<a name="microvms-troubleshooting-shell"></a>

Utilisez l'accès au shell pour vous connecter directement à une microVM en cours d'exécution à des fins de débogage et de dépannage.

Vous pouvez vous connecter à un shell MicroVM de deux manières :
+ **Console ** : sélectionnez votre microVM dans la console Lambda et choisissez Connect.
+ **CLI ** : générez un jeton shell avec`create-microvm-shell-auth-token`, puis utilisez-le pour établir une connexion.

Générez un jeton shell, puis connectez-vous :

```
aws lambda-microvms create-microvm-shell-auth-token \
  --microvm-identifier <id> --expiration-in-minutes 30
# In Console: select MicroVM -> Connect
# In shell: ctr task ls, then ctr task exec -t --exec-id shell <id> /bin/sh
```

La microVM doit avoir été exécutée avec le connecteur `SHELL_INGRESS` réseau (`arn:aws:lambda:{{us-east-1}}:aws:network-connector:aws-network-connector:SHELL_INGRESS`). Si la microVM n'a pas été lancée avec ce connecteur, `create-microvm-shell-auth-token` renvoie un`ValidationException`.

Pour les autres questions :
+ Vérifiez le `terminationMessage` champ de la `get-microvm` réponse pour les micromachines virtuelles résiliées.
+ Consultez les journaux CloudWatch de génération pour détecter les problèmes liés à la création d'images.
+ Vérifiez le `StateReason` champ correspondant aux connecteurs réseau en `FAILED` état.

## Résolution des problèmes
<a name="microvms-troubleshooting-troubleshooting"></a>

Cette section propose des solutions aux problèmes courants liés à l'utilisation de Lambda MicroVMS.


| Symptôme | Cause possible et résolution | 
| --- | --- | 
| La génération de l'image échoue (CREATION\_FAILED) | Consultez les journaux de construction à l'adresse/aws/lambda/microvms/<image-name>. Vérifiez Dockerfile la syntaxe, les autorisations Amazon S3 et la disponibilité des images de base. Exécutez docker build localement pour reproduire. | 
| MicroVM bloquée PENDING | Patientez et réessayez. En cas de persistance, vérifiez l'état du service. Vérifiez que votre quota de simultanéité n'est pas épuisé. | 
| La candidature ne répond pas après le CV | Implémentez le hook /resume du cycle de vie pour rétablir les connexions et valider l'état. Vérifiez que votre application est liée au port 8080 (ou au port configuré) après la reprise. | 
| 502 Passerelle défectueuse depuis le terminal | L'application s'est bloquée ou n'écoute pas. Vérifiez les journaux d'exécution. Vérifiez EXPOSE et CMD entrezDockerfile. En cas de reprise automatique, la microVM n'a peut-être pas pu reprendre (vérifiez l'état à l'aide get-microvm de). | 
| 429 demandes de trop | Taux de demandes dépassé. Réessayez avec un ralentissement exponentiel et de la gigue. | 
| Suppression des connexions | Délai d'inactivité déclenché. Mettez en œuvre des ping/pong keepalives. Ou prolongez maxIdleDurationSeconds la politique d'inactivité. | 
| Latence élevée sur le terminal | Saturation de la bande passante. Vérifiez si le trafic dépasse la capacité de bande passante correspondant à la taille de votre microVM. Passez à une taille plus grande. | 
| Le jeton d'authentification a expiré (403) | Les jetons ont une date d'expiration configurable. Générez un nouveau jeton avant que l'ancien n'expire. Implémentez une logique d'actualisation des jetons dans votre client. | 
| La sortie du VPC ne fonctionne pas | Vérifiez que le connecteur réseau est en ACTIVE état. Vérifiez que les règles des groupes de sécurité autorisent le trafic sortant. Vérifiez que les sous-réseaux disposent d'itinéraires vers vos ressources cibles. | 

## Erreurs courantes (création d'images)
<a name="microvms-troubleshooting-image-errors"></a>


| Erreur | Cause | Solution | 
| --- | --- | --- | 
| S3\_ACCESS\_DENIED | Le rôle de compilation n'est pas autorisé à récupérer l'artefact Amazon S3. | Ajoutez une s3:GetObject autorisation pour votre compartiment d'artefacts. | 
| S3\_NO\_SUCH\_KEY | La clé d'artefact n'existe pas dans le compartiment. | Vérifiez que le chemin Amazon S3 est correct. | 
| S3\_NO\_SUCH\_BUCKET | Le compartiment Amazon S3 n'existe pas. | Vérifiez le nom du compartiment et confirmez qu'il a été créé. | 
| S3\_INVALID\_OBJECT | Artefact appartenant à Glacier ou à une classe de stockage non directement accessible. | Déplacez l'artefact vers la classe de stockage Standard. | 
| S3\_CROSS\_REGION\_ACCESS\_DENIED | L'artefact se trouve dans une région différente de celle de l'image microVM. | Assurez-vous que votre artefact se trouve dans la même région que votre image microVM. | 
| ARCHIVE\_DOCKERFILE\_NOT\_FOUND | Il manque un Dockerfile dans le répertoire racine de l'archive Zip. | Ajoutez un Dockerfile à la racine de votre archive zip. | 
| ARCHIVE\_INVALID | Le fichier d'archive n'est pas un ZIP valide ou est endommagé. | Re-create l'archive zip et retéléchargez-la. | 
| CONTAINER\_BUILD\_FAILED | DockerfileInstructions non valides, fichiers manquants ou erreurs de syntaxe. | Déboguez votre version Dockerfile locale à l'aide docker build de. | 
| DISK\_STORAGE\_FULL | MicroVM a manqué d'espace de stockage lors de la construction. | Réduisez la taille des artefacts ou contactez l'assistance. | 
| INTERNAL\_PLATFORM\_ERROR | Une erreur interne s’est produite. | Réessayez. Si vous persistez, contactez le support. | 

## Résolution des problèmes liés au connecteur réseau
<a name="microvms-troubleshooting-connector-errors"></a>


| Code d’erreur | Cause | Solution | 
| --- | --- | --- | 
| DisallowedByVpcEncryptionControl | Le VPC dispose d'une politique de contrôle du chiffrement qui empêche les interfaces réseau ou le trafic non chiffrés. Lambda ne peut pas créer d'ENI répondant aux exigences de chiffrement. | Ajoutez Lambda à la liste d'exclusion du contrôle de chiffrement VPC. Si l'exclusion n'est pas possible, utilisez un VPC ou un sous-réseau auquel aucun contrôle de chiffrement restrictif n'est appliqué. | 
| Ec2RequestLimitExceeded | Lambda effectue des appels d'API EC2 (par exemple,CreateNetworkInterface,DescribeSubnets) pour configurer la connectivité. Un trop grand nombre d'appels d'API EC2 simultanés entraîne un ralentissement. | Réessayez l'opération après un court laps de temps. En cas de persistance, réduisez les opérations simultanées du connecteur réseau ou demandez une augmentation de la limite de limitation de l'API EC2 via le support. AWS  | 
| InsufficientRolePermissions | Le rôle d'opérateur ne dispose pas des autorisations EC2 requises. | Assurez-vous que le rôle IAM dispose des autorisations réseau EC2 nécessaires. | 
| InternalError | Une erreur inattendue s'est produite dans le service Lambda lors du traitement de la demande de connecteur réseau. | Réessayez. Si le problème persiste après plusieurs tentatives, contactez le AWS support en indiquant l'ARN du connecteur réseau et l'horodatage approximatif. | 
| InvalidSecurityGroup | L'ID du groupe de sécurité n'existe pas, a été supprimé ou n'appartient pas au même VPC que les sous-réseaux spécifiés. | Vérifiez que tous les ID de groupe de sécurité existent et appartiennent au même VPC que les sous-réseaux. aws ec2 describe-security-groups --group-ids <sg-id>À utiliser pour valider. | 
| InvalidSubnet | L'ID de sous-réseau n'existe pas, a été supprimé ou appartient à un VPC différent de celui prévu. | Vérifiez que tous les ID de sous-réseau existent et appartiennent au VPC correct. aws ec2 describe-subnets --subnet-ids <subnet-id>À utiliser pour valider. | 
| SubnetOutOfIPAddresses | Le bloc CIDR du sous-réseau est épuisé : toutes les adresses IP sont attribuées aux ENI, aux instances et à d'autres ressources. Lambda ne peut donc pas créer d'interface réseau. | Libérez des adresses IP en supprimant les adresses inutilisées ENIs/instances ou utilisez un autre sous-réseau doté de la capacité disponible. Envisagez des sous-réseaux plus grands (par exemple, /24 ou plus) pour les connecteurs réseau. | 