AWS announces preview of AWS Interconnect - multicloud
AWS announces AWS Interconnect – multicloud (preview), providing simple, resilient, high-speed private connections to other cloud service providers. AWS Interconnect - multicloud is easy to configure and provides high-speed, resilient connectivity with dedicated bandwidth, enabling customers to interconnect AWS networking services such as AWS Transit Gateway, AWS Cloud WAN, and Amazon VPC to other cloud service providers with ease.
Wie behebe ich Fehler bei einer EC2-Linux-Instance, die aufgrund einer übermäßigen Ressourcennutzung eine Statusüberprüfung nicht besteht?
Meine Amazon Elastic Compute Cloud (Amazon EC2) Linux-Instance hat die Instance-Statusüberprüfung nicht bestanden, da für sie keine Ressourcen mehr verfügbar sind.
Kurzbeschreibung
Die Instance kann ihre Status-Integritätsprüfung aufgrund der Ressourcennutzung aus den folgenden Gründen nicht bestehen:
- Die CPU-Auslastung der Instance ist 100 % und die Instance hatte nicht mehr genug Rechenkapazität übrig, um den Kernel ausführen zu können.
- Das Root-Gerät ist zu 100 % voll und verhindert, dass andere Prozesse abgeschlossen oder gestartet werden.
- Die Prozesse, die auf der Instance ausgeführt werden, haben ihren gesamten Speicher genutzt und erlauben nicht, dass der Kernel ausgeführt wird.
Lösung
Wichtig: Bevor du die Instance anhältst und startest, gehe wie folgt vor.
- Erstelle einen Snapshot des Amazon Elastic Block Store (Amazon EBS)-Volumes.
Hinweis: Wenn die Instance vom Instance-Speicher unterstützt wird oder über Instance-Speicher-Volumes verfügt, die Daten enthalten, löscht Amazon EC2 die Daten, wenn du die Instance anhältst. - Entferne die Instance vorübergehend aus ihrer Amazon EC2 Auto Scaling-Gruppe.
Hinweis: Wenn du eine Instance stoppst, die sich in einer Amazon EC2 Auto Scaling-Gruppe befindet, beendest du die Instance möglicherweise auf der Grundlage der Abskalierungs-Schutzeinstellungen. Instances, die du mit Amazon EMR, AWS CloudFormation oder AWS Elastic Beanstalk startest, sind möglicherweise Teil einer Auto-Scaling-Gruppe. - Stelle das Verhalten beim Herunterfahren der Instance auf Stopp ein, um sicherzustellen, dass die Instances nicht beendet werden, wenn du sie anhältst.
Stoppe und starte die Instance, um den Kernel zu zwingen, laufende Prozesse zu beenden. Dies ist eine vorübergehende Lösung, um Ressourcen an das Betriebssystem (OS) zurückzugeben. Um die Probleme mit der übermäßigen Nutzung zu beheben, ergreife die folgenden Maßnahmen, um die Ursache zu beheben.
Hinweis: Wenn du eine Instance anhältst und startest, ändert sich die öffentliche IP-Adresse der Instance. Es empfiehlt sich, beim Weiterleiten von externem Datenverkehr an die Instance eine Elastic-IP-Adresse anstelle einer öffentlichen IP-Adresse zu verwenden.
Die CloudWatch-CPU-Metriken der Instance überprüfen
Prüfe, ob die Amazon CloudWatch-Metrik CPUUtilization der Instance bei oder nahe 100 % liegt. Ist dies der Fall, starte die Instance neu, um die Instance wieder in einen fehlerfreien Zustand zu versetzen. Wenn das Problem nach dem Neustart weiterhin auftritt, sind die CPU-Anforderungen der Instance höher als die, die der Instance-Typ bietet.
Um dieses Problem zu beheben, ändere den Instance-Typ in einen mit höherer CPU-Verfügbarkeit.
Wenn es sich bei der Instance um eine Instance mit hoher Leistung wie T2, T3 oder T3a handelt, überprüfe deren CPUCreditBalance-Metrik. Wenn das Guthaben nahe bei Null liegt, drosselt Amazon EC2 die Instance-CPU. Wenn du die Guthabenspezifikation der Instance auf Standard setzen, ändere die Spezifikation in Unbegrenzt.
Das Systemprotokoll der Instance auf Fehler überprüfen
Überprüfe das Systemprotokoll auf Fehler wie „No space left on device“ oder „Out of memory“.
Den Fehler „No space left on device“ beheben
Wenn das Dateisystem, das einen aufgelisteten Ordner enthält, voll ist, erhältst du eine Fehlermeldung, die dem folgenden Beispiel ähnelt:
„OSError: [Error 28] No space left on device '/var/lib/'“
Im vorherigen Beispiel ist /var/lib voll.
Um Speicherplatz freizugeben, verwende die serielle EC2-Konsole um eine Verbindung zu unterstützten Nitro-basierten Instance-Typen und unterstützten Bare-Metal-Instances herzustellen. Lösche dann die nicht benötigten Dateien. Du benötigst keine funktionierende Verbindung, um eine Verbindung zur Instance herzustellen, wenn du die serielle EC2-Konsole verwendest.
Wenn du die serielle EC2-Konsole noch nicht verwendet hast, stelle sicher, dass du die Voraussetzungen erfüllst. Wenn die Instance nicht erreichbar ist und du den Zugriff auf die serielle Konsole noch nicht konfiguriert hast, kannst du die serielle EC2-Konsole nicht verwenden.
Wenn du die serielle EC2-Konsole nicht verwenden kannst, führe die folgenden Schritte aus, um eine Rettungs-Instance zu starten und nicht benötigte Dateien zu entfernen:
-
Starte eine neue Rettungs-Instance in der Virtual Private Cloud (VPC). Verwende dasselbe Amazon Machine Image (AMI) und dieselbe Availability Zone wie die Instance, die ihre Statusüberprüfung nicht bestanden hat.
Hinweis: Du kannst auch eine vorhandene Instance verwenden, die sich in derselben Availability Zone befindet und dasselbe AMI wie die ursprüngliche Instance verwendet. -
Trenne das Root-Volume von Amazon Elastic Block Store (Amazon EBS), z. B. /dev/xvda oder /dev/sda1, von der ursprünglichen Instance. Notiere dir den Gerätenamen des Root-Volumes.
-
Schließe das Volume als sekundäres Gerät /dev/sdf an die Rettungs-Instance an.
-
Verwende SSH, um eine Verbindung zu der Rettungs-Instance herzustellen.
-
Um ein Bereitstellungspunkt-Verzeichnis für das Volume zu erstellen, das du an die Rettungs-Instance angefügt hast, führe den folgenden Befehl aus:
sudo mkdir /rescueHinweis: Ersetze /rescue durch den Namen des Bereitstellungspunkt-Verzeichnisses.
-
Führe als Root-Benutzer die folgenden Befehle aus, um den richtigen Gerätenamen zu ermitteln:
sudo -i # lsblkHinweis: Das Gerät, das an die Rettungs-Instance angeschlossen ist, hat möglicherweise einen anderen Gerätenamen.
-
Führe den folgenden Befehl aus, um das Volume in das neue Verzeichnis einzubinden:
sudo mount /dev/xvdf1 /rescueHinweis: Ersetze dev/xvdf1 durch den Gerätenamen des Root-Volumes und /rescue durch den Namen des Bereitstellungspunkt-Verzeichnisses. Wenn du beim Ausführen des vorherigen Befehls eine Fehlermeldung erhältst findest du weitere Informationen unter Warum kann ich mein Amazon EBS-Volume nicht bereitstellen?
-
Führe den folgenden Befehl aus, um die Dateien zu identifizieren, die den meisten Speicherplatz beanspruchen:
du -shcm /rescue/var/lib/* |sort -n -
Lösche große Dateien, die du nicht benötigst, um Speicherplatz freizugeben.
-
Führe den folgenden Befehl aus, um das sekundäre Gerät von der Rettungs-Instance zu trennen:
sudo umount /rescue
Hinweis: Ersetze /rescue durch den Namen des Bereitstellungspunkt-Verzeichnisses.
Wenn der Unmount-Vorgang fehlschlägt, beende die Rettungs-Instance oder starte sie neu. Dann führe den vorherigen Befehl erneut aus.
Trenne das sekundäre Volume von der Rettungs-Instance.
Hänge das Volume als Root-Volume /dev/xvda oder /dev/sda1 an die ursprüngliche Instance an.
Starte die Instance und vergewissere dich, dass die Instance reagiert.
Wenn du immer noch nicht genug Speicherplatz zur Verfügung hast, führe die folgenden Schritte aus, um die Größe des EBS-Root-Volumes zu ändern:
- Fordere eine Änderung der EBS-Volume-Größe an.
- Folge den Schritten 1–8 des vorherigen Abschnitts, um eine Rettungs-Instance zu starten.
- Erweitere das Linux-Dateisystem.
Den Fehler „Out of memory“ beheben
Wenn der Instance nicht genügend Arbeitsspeicher zur Verfügung steht, erhältst du die folgende Fehlermeldung:
„Out of memory: kill process“
Wenn der Instance nicht genügend Arbeitsspeicher zur Verfügung steht, hat der Kernel nicht genug Arbeitsspeicher, um ausgeführt zu werden und Amazon EC2 beendet andere Prozesse, um Speicherplatz freizugeben. Schritte zur Problembehandlung findest du unter Nicht genügend Arbeitsspeicher: Prozess beenden.
Um die Speicherprotokolle zu überprüfen, folge den Schritten 1–8 des vorherigen Abschnitts, um eine Rettungs-Instance zu starten. Führe dann je nach Linux-Distribution den folgenden Befehl aus, um die Protokolle nach Meldungen zu durchsuchen, bei denen nicht genügend Arbeitsspeicher zur Verfügung steht:
Amazon Linux 2 (AL2):
sudo grep -i -r 'out of memory' /var/log/
Amazon Linux 2023 (AL2023):
sudo journalctl -p err | grep -i "out of memory"
-oder-
sudo dmesg | grep -i "out of memory"
Fehler bei der Seitenzuweisung beheben
Du erhältst den Fehler „page allocation failure“, wenn der Kernel-Speicherzuweisungsgenerator die Zuweisungsanfrage nicht erfüllt.
Um dieses Problem zu beheben, empfiehlt es sich, ein Upgrade der Instance auf einen größeren Instance-Typ durchzuführen. Oder verwende für Instances, die temporäre Instance-Speicher-Volumes verwenden, eine Swap-Datei oder Festplattenpartition, um der Instance Swap-Speicher hinzuzufügen und den Speicherdruck zu verringern.
Hinweis: Die Instance verwendet den Swap-Speicherplatz, wenn der Arbeitsspeicher voll ist. Du kannst Swap-Speicherplatz für Instances verwenden, die über wenig Arbeitsspeicher verfügen. Swap-Speicherplatz ist jedoch kein Ersatz für mehr Arbeitsspeicher. Da sich der Swap-Speicherplatz auf der Festplatte der Instance befindet, ist die Leistung im Vergleich zum Arbeistspeicher langsamer. Für mehr oder schnelleren Arbeitsspeicher musst du die Instance-Größe erhöhen.
Verwende atop, um Ressourcenprobleme zu untersuchen und zu verhindern
Verwende das Überwachungstool atop, um Muster und Prozesse zur Ressourcennutzung zu identifizieren, die Probleme verursachen könnten, bevor sie zu Systemausfällen führen. Das Tool atop hilft dir dabei, das System kontinuierlich zu überwachen und Fehler zu beheben.
Hinweis: Das Tool atop protokolliert Daten erst, nachdem du es installiert hast. Du kannst keine historischen Leistungsdaten abrufen, die vor der Installation des atop-Tool erstellt wurden.
Verwende das Tool atop, um die folgenden Ressourcen zu überprüfen:
- Überprüfe die historischen Daten in /var/log/atop/, um das System und die Prozesse zu analysieren, als der Fehler aufgetreten ist.
- Suche nach Prozessen, die eine große Menge an Ressourcen verbrauchen.
- Überprüfe die Speicher-, CPU- und Festplattennutzungssmuster, die zu dem Ausfall geführt haben.
Ähnliche Informationen
Wie behebe ich Fehler bei der Statusüberprüfung für meine EC2-Linux-Instance?
Welche Schritte muss ich unternehmen, bevor ich den Instance-Typ meiner EC2-Linux-Instance ändere?
- Themen
- Compute
- Tags
- LinuxAmazon EC2
- Sprache
- Deutsch

Relevanter Inhalt
AWS OFFICIALAktualisiert vor 6 Monaten
AWS OFFICIALAktualisiert vor 10 Monaten