Wie kann ich eine fehlgeschlagene CodeDeploy-Bereitstellung auf Amazon-EC2-Instances beheben?

Letzte Aktualisierung: 08.09.2021

Meine AWS-CodeDeploy-Bereitstellung auf Amazon Elastic Compute Cloud (EC2)-Instances ist fehlgeschlagen.

Kurzbeschreibung

Sie können das AWSSupport-TroubleshootCodeDeploy-Automatisierungs-Runbook vom AWS Systems Manager verwenden, um fehlgeschlagene Bereitstellungen zu beheben. Das Runbook hilft Ihnen festzustellen, wann eine Bereitstellung aus folgenden Gründen fehlschlägt:

  • Der CodeDeploy-Agent ist nicht installiert oder läuft nicht auf der Instance.
  • Das erforderliche Instance-Profil fehlt.
  • Das Instance-Profil besitzt keine korrekten Berechtigungen für Amazon Simple Storage Service (Amazon S3).
  • Es gibt ein Problem mit einem der von CodeDeploy verwalteten Lebenszyklus-Hooks wie AllowTraffic oder BlockTraffic.
  • Es gibt ein Problem mit einem der vom Kunden verwalteten Lebenszyklus-Hooks.
  • Während der Bereitstellung trat ein Problem bei einem Auto-Scaling-Gruppen-Herunterskalierungsereignis auf.
  • Eine AppSpec-Datei fehlt oder ist falsch formatiert.

Auflösung

Wichtig: Verwenden Sie das AWS-Support-TroubleshootCodeDeploy-Runbook in derselben AWS-Region, in der sich Ihre CodeDeploy-Anwendung befindet.

1.    Öffnen Sie die AWS-Systems-Manager-Konsole.

2.    Wählen Sie im Navigationsbereich im Abschnitt Verwaltung ändern die Option Automatisierung aus.

3.    Wählen Sie Automatisierung ausführen aus.

4.    Geben Sie in der Registerkarte Im Besitz von Amazon im Suchfeld Automatisierungsdokumente AWSSupport-TroubleshootCodeDeploy ein. Wählen Sie dann das Suchsymbol aus oder drücken Sie die Eingabetaste auf Ihrer Tastatur.

5.    Wählen Sie das Optionsfeld auf der AWSSupport-TroubleshootCodeDeploy-Karte.

Hinweis: Stellen Sie sicher, dass Sie das Optionsfeld und nicht den verlinkten Namen der Automatisierung auswählen.

6.    Wählen Sie im Abschnitt Dokumentendetails die Option Weiter.

7.    Geben Sie im Abschnitt Eingabeparameter für DeploymentID die fehlgeschlagene Bereitstellungs-ID ein.

8.    Geben Sie für InstanceID die Instance-ID ein, bei der die Bereitstellung fehlgeschlagen ist.

9.    Geben Sie für AutomationAssumeRole den Amazon-Ressourcennamen (ARN) der Rolle ein, die Systems Manager Automation erlaubt Aktionen auszuführen.

Hinweis: Wenn Sie keine AWS Identity and Access Management (IAM)-Rolle angeben, verwendet Systems Manager Automation die Berechtigungen der IAM-Benutzerrolle, die das Runbook ausführt. Weitere Informationen zum Erstellen der Übernahme der Rolle für Systems Manager Automation finden Sie unter Aufgabe 1: Erstellen einer Servicerolle für Automatisierung.

Wichtig: Entweder die AutomationAssumeRole oder die Benutzerrolle muss Berechtigungen für die folgenden Aktionen haben: codedeploy:GetDeployment, codedeploy:GetDeploymentTarget und ec2:DescribeInstances.

10.    Wählen Sie Ausführen aus.

Die Ausgabe des Runbooks enthält Schritte zur Fehlerbehebung und Empfehlungen zur Behebung des Problems, das Ihren Bereitstellungsfehler verursacht hat.


War dieser Artikel hilfreich?


Benötigen Sie Hilfe zur Fakturierung oder technischen Support?