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 d'instance
Rubriques
- Les balises doivent être définies correctement
- AWS CodeDeploy l'agent doit être installé et exécuté sur les instances
- Les déploiements n'échouent pas pendant une heure lorsqu'une instance est mise hors service au cours d'un déploiement
- Analyse des fichiers journaux pour enquêter sur des échecs de déploiement sur les instances
- Créez un nouveau fichier CodeDeploy journal s'il a été supprimé accidentellement
- Résolution des erreurs de déploiement « InvalidSignatureException — Signature expirée : [heure] est maintenant antérieure à [heure] »
Les balises doivent être définies correctement
Utilisez la list-deployment-instancescommande pour vérifier que les instances utilisées pour un déploiement sont correctement étiquetées. Si une EC2 instance est absente de la sortie, utilisez la EC2 console pour confirmer que les balises ont été définies sur l'instance. Pour plus d'informations, consultez la section Utilisation des balises dans la console dans le guide de EC2 l'utilisateur Amazon.
Note
Si vous balisez une instance et que vous l'utilisez immédiatement CodeDeploy pour y déployer une application, l'instance risque de ne pas être incluse dans le déploiement. Cela est dû au fait que plusieurs minutes peuvent CodeDeploy être nécessaires avant de pouvoir lire les balises. Nous vous recommandons d'attendre au moins cinq minutes entre le moment où vous balisez une instance et celui où vous tentez d'y effectuer un déploiement.
AWS CodeDeploy l'agent doit être installé et exécuté sur les instances
Pour vérifier que l' CodeDeploy agent est installé et s'exécute sur une instance, consultezVérifiez que l' CodeDeploy agent est en cours d'exécution.
Pour installer, désinstaller ou réinstaller l' CodeDeploy agent, consultezInstallation de l' CodeDeploy agent.
Les déploiements n'échouent pas pendant une heure lorsqu'une instance est mise hors service au cours d'un déploiement
CodeDeploy fournit un délai d'une heure pour que chaque événement du cycle de vie du déploiement se déroule jusqu'à son terme. Cela fournit suffisamment de temps pour les scripts de longue durée.
Si les scripts ne s'exécutent pas complètement alors qu'un événement du cycle de vie est en cours (par exemple, si une instance est arrêtée ou si l' CodeDeploy agent est arrêté), l'affichage de l'état du déploiement comme Échec peut prendre jusqu'à une heure. Cela est vrai même si le délai d'expiration spécifié dans le script est inférieur à une heure. En effet, lorsque l'instance est arrêtée, l' CodeDeploy agent s'arrête et ne peut plus traiter d'autres scripts.
Si une instance est mise hors service entre des événements de cycle de vie ou avant le début de la première étape d'événement de cycle de vie, l'expiration du délai a lieu après seulement cinq minutes.
Analyse des fichiers journaux pour enquêter sur des échecs de déploiement sur les instances
Si le statut d'une instance dans le déploiement est différent de Succeeded
, vous pouvez passer en revue les données du fichier journal de déploiement pour tenter d'identifier le problème. Pour de plus amples informations sur l'accès aux données du journal de déploiement, veuillez consulter Afficher les données du journal pour les déploiements CodeDeploy EC2/sur site.
Créez un nouveau fichier CodeDeploy journal s'il a été supprimé accidentellement
Si vous supprimez accidentellement le fichier journal de déploiement sur une instance, CodeDeploy cela ne crée pas de fichier journal de remplacement. Pour créer un nouveau fichier journal, connectez-vous à l'instance, puis exécutez ces commandes :
Pour un serveur Amazon Linux, Ubuntu ou une RHEL instance, exécutez ces commandes dans cet ordre, une par une :
systemctl stop codedeploy-agent
systemctl start codedeploy-agent
Pour une instance Windows Server :
powershell.exe -Command Restart-Service -Name codedeployagent
Résolution des erreurs de déploiement « InvalidSignatureException — Signature expirée : [heure] est maintenant antérieure à [heure] »
CodeDeploy nécessite des références temporelles précises pour effectuer ses opérations. Si la date et l'heure de votre instance ne sont pas correctement définies, elles risquent de ne pas correspondre à la date de signature de votre demande de déploiement, qui est CodeDeploy rejetée.
Pour éviter des échecs de déploiement associés à des paramètres horaires incorrects, consultez les rubriques suivantes :