Wie verhindere ich, dass AWS OpsWorks Stacks unerwartet fehlerfreie Instances neu startet?

Lesedauer: 4 Minute
0

AWS OpsWorks Stacks startet meine Amazon Elastic Compute Cloud (Amazon EC2)-Instances neu, auch wenn die Instances die Amazon EC2-Zustandsprüfungen bestehen. Warum passiert das und wie kann ich es verhindern?

Kurzbeschreibung

Wenn die automatische Healing-Feature von OpsWorks Stacks aktiviert ist und der Service feststellt, dass eine von ihm verwaltete Instance ausfällt, tritt eines der folgenden Ereignisse ein:

Um zu verhindern, dass OpsWorks Stacks die von ihm verwalteten Instances automatisch heilt, folgen Sie zunächst den Schritten zur Fehlerbehebung in diesem Artikel. Wenn das Problem weiterhin besteht, können Sie die automatische Heilung auch in den allgemeinen Einstellungen Ihres OpsWorks Stacks-Layers deaktivieren.

Weitere Informationen finden Sie unter Instances starten unerwartet neu, im AWS OpsWorks-Leitfaden zum Debuggen und Beheben von Fehlern.

Behebung

Stellen Sie sicher, dass die Amazon EC2-Instances, die von OpsWorks Stacks verwaltet werden, über einen Internetzugang verfügen

Wenn eine Amazon EC2-Instance ihre Verbindung zum OpsWorks Stacks-Service verliert, behandelt OpsWorks Stacks die Instance als ausgefallen.

Gehen Sie wie folgt vor, um zu überprüfen, ob Ihre Amazon EC2-Instances über einen Internetzugang verfügen:

  • Stellen Sie sicher, dass Ihre Instances entweder über ein Internet-Gateway oder ein Network Address Translation Gateway (NAT) auf das Internet zugreifen können.
  • Stellen Sie sicher, dass eingehender HTTPS-Zugriff über Port 443 auf der Ebene Instance, Sicherheitsgruppe und Netzwerk-Zugriffssteuerungsliste (Netzwerk-ACL) zulässig ist.

Informationen zur Behebung von NAT-Gateway-Verbindungsproblemen finden Sie unter Warum können meine EC2-Instances über ein NAT-Gateway nicht auf das Internet zugreifen?

Informationen zur Behebung von Verbindungsproblemen mit dem Internet-Gateway finden Sie unter Warum kann meine Amazon EC2-Instance über ein Internet-Gateway keine Verbindung zum Internet herstellen?

Stellen Sie sicher, dass Ihre Anwendung auf Instance-Ebene über genügend Arbeitsspeicher und CPU-Kapazität verfügt, um zu funktionieren, wenn die Instance zusätzlich ausgelastet ist

Wenn nicht genügend Ressourcen auf Instance-Ebene vorhanden sind, damit der OpsWorks-Agent sein Keepalive-Signal senden kann, behandelt OpsWorks Stacks die Instance als ausgefallen.

Um die Metriken Ihrer Instances zu überprüfen, folgen Sie den Anweisungen unter Stacks mithilfe von Amazon CloudWatch überwachen.

Informationen zum Einrichten von Alarmen, die Sie warnen, wenn Ihre Instance eine hohe Auslastung von CPU, Arbeitsspeicher oder Netzwerkverkehr hat, finden Sie unter Amazon CloudWatch-Alarme erstellen.

Stellen Sie sicher, dass die Amazon EC2-Instance nicht außerhalb der OpsWorks Stacks-Konsole oder der OpsWorks Stacks-API gestoppt wurde

Hinweis: Wenn Sie beim Ausführen von AWS Command Line Interface (AWS CLI)-Befehlen Fehler erhalten, stellen Sie sicher, dass Sie die neueste AWS CLI-Version verwenden.

Wenn eine von OpsWorks Stacks verwaltete Instance in der Amazon EC2-Konsole gestoppt wird, empfängt OpsWorks Stacks das Keepalive-Signal nicht mehr vom OpsWorks-Agenten. OpsWorks Stacks behandelt die Instance dann als ausgefallen.

Um zu überprüfen, ob Ihre Instance in der Amazon EC2-Konsole gestoppt wurde, versuchen Sie, die Instance in der OpsWorks Stacks-Konsole zu beenden. Wenn sich die Instance im Status stop_failed befindet und Sie die Fehlermeldung Internal Error erhalten, wurde die Instance in der Amazon EC2-Konsole gestoppt.

Um eine Instance in OpsWorks Stacks zu stoppen, nachdem sie in der Amazon EC2-Konsole gestoppt wurde, führen Sie den AWS CLI-Befehl stop-instance aus.

Wichtig: Der Befehl stop-instance muss den Parameter --force für diesen Anwendungsfall enthalten.

Weitere Informationen finden Sie unter Wie behebe ich die Fehlermeldung „Internal Error“ beim Stoppen einer AWS OpsWorks Stacks-Instance, die sich im Status „stop_failed“ befindet?

Stellen Sie sicher, dass die Amazon EC2-Instance die Instance Metadata Service Version 1 (IMDSv1) verwendet

OpsWorks Stacks unterstützt nur IMDSv1, nicht IMDSv2. Wenn eine von OpsWorks Stacks verwaltete Instance IMDSv2 verwendet, behandelt OpsWorks Stacks die Instance als ausgefallen.

Weitere Informationen zur Überprüfung, welchen Metadatendienst Ihre Instance verwendet, und um die Instance bei Bedarf neu zu konfigurieren, finden Sie in der Metadatenoptionen konfigurieren.


Verwandte Informationen

Was ist Amazon CloudWatch Logs?

Instances werden unerwartet neu gestartet

WS Systems Manager überwachen

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 3 Jahren