Direkt zum Inhalt

Wie diagnostiziere ich eine hohe CPU-Auslastung auf meiner EC2-Windows-Instance, wenn meine CPU nicht gedrosselt wird?

Lesedauer: 5 Minute
0

Meine Amazon Elastic Compute Cloud (Amazon EC2) Windows-Instance weist eine hohe CPU-Auslastung auf, aber die CPU meiner Instance wird nicht gedrosselt. Ich möchte die hohe CPU-Auslastung diagnostizieren.

Lösung

Um die hohe CPU-Auslastung zu ermitteln, führe entweder das AWSSupport-TroubleShootWindowsPerformance-Runbook aus oder identifiziere manuell die Prozesse mit hoher CPU-Auslastung.

Nachdem du den spezifischen Prozess ermittelt hast, der zu einer hohen CPU-Auslastung führt, behebe diese spezielle Anwendung.

Das AWSSupport-TroubleshooWindowsPerformance-Runbook ausführen

Voraussetzung: Bevor du das Runbook startest, stelle sicher, dass der AWS Identity and Access Management (IAM)-Benutzer oder die Rolle über die erforderlichen Berechtigungen verfügt. Weitere Informationen findest du in Erforderliche IAM-Berechtigungen in AWSSupport-TroubleshootWindowsPerformance.

Führe die folgenden Schritte aus:

  1. Öffne die AWS Systems Manager-Konsole.
  2. Wähle in der Regions-Liste die AWS-Region aus.
  3. Erweitere im Navigationsbereich Gemeinsame Ressourcen und wähle dann Dokumente.
  4. Gib in der Suchleiste AWSSupport-TroubleshooteElasticBeanstalk ein und wähle dann das Runbook aus.
  5. Wähle Automatisierung ausführen.
  6. Wähle Ausführen. Eine Liste der Aktionen, die das Runbook ausführt, findest du unter Dokumentschritte in AWSSupport-TroubleshooWindowsPerformance.
  7. Überprüfe die Ausgabe auf detaillierte Ergebnisse der Ausführung.

Manuelles Beheben von Problemen

Den Task-Manager verwenden, um die Quelle der hohen CPU-Auslastung zu identifizieren

Führe die folgenden Schritte aus:

  1. Verwende Remote Desktop Protoco (RDP), um eine Verbindung zur Instance herzustellen.
  2. Um nach CPU zu sortieren, öffne den Task-Manager und wähle dann die CPU-Spalte aus.
  3. Identifiziere Prozesse mit hoher CPU-Auslastung, um festzustellen, ob Prozesse die erwartete Menge an CPU nutzen.
  4. Behebe Probleme mit Anwendungen, die mehr CPU als erwartet verbrauchen.

Wenn die Anwendungen die erwartete Menge an CPU verwenden, ändere den Instance-Typ. Weitere Informationen findest du unter Wie ändere ich die Größe meiner EC2-Windows-Instance oder ändere den EC2-Windows-Instance-Typ?

Verwenden des Process Explorers, um die Quelle der hohen CPU-Auslastung zu identifizieren

Process Explorer ist ein Sysinternals-Hilfsprogramm von Microsoft. Weitere Informationen findest du unter Sysinternals auf der Microsoft Learn-Website.

Führe die folgenden Schritte aus:

  1. Lade den Process Explorer auf die Instance herunter. Zum Herunterladen siehe Process Explorer auf der Microsoft Ignite-Website.
  2. Starte die Anwendung als Administrator.
  3. Wählen Sie die Spalte CPU aus, um Prozesse nach Nutzung zu sortieren.
  4. Wähle Ansicht, Prozessbaum anzeigen, um die Eltern-Kind-Beziehung zwischen Prozessen anzuzeigen.

Hinweis: Wähle die Registerkarte Threads, um eine detailliertere Ansicht darüber zu erhalten, was der Prozess tut, wenn er eine hohe CPU-Auslastung verursacht.

Wenn du die Ursache für die hohe CPU-Auslastung immer noch nicht ermitteln kannst, dann verwende den Performance Monitor und das PAL-Tool (Performance Analysis of Logs). Der Performance Monitor ist ein integriertes Windows-Tool.

(Optional) Den Performance Monitor verwenden, um die Ursache für eine hohe CPU-Auslastung zu identifizieren

Führe die folgenden Schritte aus:

  1. Verwende RDP, um eine Verbindung zu deiner Instance herzustellen.
  2. Öffne den Performance Monitor und erweitere dann Data Collector Sets.
  3. Öffn das Kontextmenü für Benutzerdefiniert und wähle dann Neu, Data Collector Set.
    Gib unter Name einen Namen für das neue Data Collector Set ein und wähle dann Manuell erstellen (erweitert).
  4. Wähle Weiter.
  5. Wählen Sie unter Datenprotokolle erstellen die Option Performance Counter und dann Weiter aus.
  6. Wähle Hinzufügen.
    Wähle für Verfügbare Zähler die Option Prozess, % Processor Time.
    Wähle für Instances des ausgewählten Objekts die Option Alle Instances.
    Wähle Hinzufügen.
    Wiederholen Sie diesen Schritt für alle anderen Leistungsindikatoren, die Sie hinzufügen möchten.
  7. Wählen Sie OK aus.
  8. (Optional) Stellen Sie das Probenintervall und die Einheiten auf Ihre bevorzugten Werte ein.
  9. Wähle Weiter.
  10. Wähle einen Ort mit mindestens 1 GB freiem Speicherplatz zum Speichern der Daten und klicke dann auf Weiter.
  11. Wähle Speichern und schließen und dann Fertigstellen.
    Hinweis: Wenn die CPU Spitzenwerte erreicht, wähle Diesen Datensammlungssatz jetzt starten. Wähle dann Fertigstellen.

Nachdem das Performance Monitor-Tool die Datenerfassung abgeschlossen hat, kannst du den Bericht öffnen und überprüfen, um festzustellen, welche Prozesse die Instance-CPU verwenden. Verwende diese Informationen dann, um Probleme mit der spezifischen Anwendung zu beheben, die die CPU verwendet.

(Optional) Die Leistungsanalyse von Protokollen (PAL) verwenden, um einen Bericht zur Analyse zu erstellen

Hinweis: Zu den folgenden Schritten gehört die Verwendung von Open-Source-Software, die auf GitHub gehostet wird.

PAL ist ein Drittanbieter-Tool, mit dem du aus der Performance Monitor-Datei einen Bericht für eine detailliertere Analyse erstellen kannst. Gehe wie folgt vor, um PAL zu verwenden:

  1. Installiere PAL, starte dann den PAL-Assistenten und wähle Weiter.
  2. Gib für Performance Counter Log den Pfad zu der Performance Monitor-Datei ein und wähle dann Weiter.
  3. Wähle für Titel die Option Systemübersicht und dann Weiter.
    Hinweis: Die Systemübersicht bietet eine allgemeine Leistungsanalyse des Betriebssystems.
  4. Überprüfe und beantworte die Fragen für jeden Eintrag im Abschnitt Fragen. Wähle für OS die neueste verfügbare Betriebssystemversion (OS) aus der Liste mit einer Bitversion, die der Instance entspricht. Wähle Weiter.
  5. Wählen Sie Alle Leistungsindikatoren im Leistungsindikatorprotokoll verarbeiten aus, und klicken Sie dann auf Weiter.
    Hinweis: Die Verarbeitung aller Indikator-Instances sind möglicherweise ressourcenintensiv.
  6. Wähle als Ausgabeordner ein Ausgabeverzeichnis für den PAL-Bericht aus.
  7. Wählen Sie für HTML-Bericht die Option HTML-Bericht und dann Weiter aus.
  8. Wähle Weiter und dann Fertigstellen.
  9. Prüfe die Abschnitte Prozess und Prozessor des PAL-Berichts, um festzustellen, welche Prozesse die CPU der Instance verwenden.

Ähnliche Informationen

Wie kann ich herausfinden, ob die CPU auf meiner T2- oder T3-EC2-Windows-Instance gedrosselt wird?

Ausführung einer automatisierten Operation, die von Systems Manager Automation unterstützt wird

Einrichten der Automatisierung