Tutorial: CPU-Auslastung auf einer Instance mit AWS FIS ausführen - AWS Fehlerinjektionsservice

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Tutorial: CPU-Auslastung auf einer Instance mit AWS FIS ausführen

Sie können den AWS Fault Injection Service (AWS FIS) verwenden, um zu testen, wie Ihre Anwendungen mit CPU-Auslastung umgehen. Verwenden Sie dieses Tutorial, um eine Experimentvorlage zu erstellen, die AWS FIS verwendet, um ein vorkonfiguriertes SSM-Dokument auszuführen, das CPU-Auslastung auf einer Instance ausführt. Das Tutorial verwendet eine Stoppbedingung, um das Experiment anzuhalten, wenn die CPU-Auslastung der Instance einen konfigurierten Schwellenwert überschreitet.

Weitere Informationen finden Sie unter Vorkonfigurierte AWS FIS SSM-Dokumente.

Voraussetzungen

Bevor Sie AWS FIS verwenden können, um CPU-Belastung auszuführen, müssen Sie die folgenden Voraussetzungen erfüllen.

Erstellen einer IAM-Rolle

Erstellen Sie eine Rolle und fügen Sie eine Richtlinie an, die es AWS FIS ermöglicht, die aws:ssm:send-command Aktion in Ihrem Namen zu verwenden. Weitere Informationen finden Sie unter IAM-Rollen für AWS FIS-Experimente.

Überprüfen des Zugriffs auf AWS FIS

Stellen Sie sicher, dass Sie Zugriff auf AWS FIS haben. Weitere Informationen finden Sie unter AWS Beispiele für -FIS-Richtlinien.

Vorbereiten einer Test-EC2-Instance
  • Starten Sie eine EC2-Instance mit Amazon Linux 2 oder Ubuntu, wie in den vorkonfigurierten SSM-Dokumenten erforderlich.

  • Die Instance muss von SSM verwaltet werden. Um zu überprüfen, ob die Instance von SSM verwaltet wird, öffnen Sie die Fleet Manager-Konsole . Wenn die Instance nicht von SSM verwaltet wird, überprüfen Sie, ob der SSM-Agent installiert ist und ob der Instance eine IAM-Rolle mit der AmazonSSMManagedInstanceCore-Richtlinie angefügt ist. Um den installierten SSM Agent zu überprüfen, stellen Sie eine Verbindung zu Ihrer Instance her und führen Sie den folgenden Befehl aus.

    Amazon Linux 2

    yum info amazon-ssm-agent

    Ubuntu 

    apt list amazon-ssm-agent
  • Aktivieren Sie die detaillierte Überwachung für die Instance. Dadurch werden Daten in Abständen von 1 Minute gegen eine zusätzliche Gebühr bereitgestellt. Wählen Sie die Instance aus und wählen Sie Aktionen , Überwachen und Fehlerbehebung, Detaillierte Überwachung verwalten aus.

Schritt 1: Erstellen eines CloudWatch Alarms für eine Stoppbedingung

Konfigurieren Sie einen CloudWatch Alarm, damit Sie das Experiment beenden können, wenn die CPU-Auslastung den von Ihnen angegebenen Schwellenwert überschreitet. Mit dem folgenden Verfahren wird der Schwellenwert auf 50 % CPU-Auslastung für die Ziel-Instance festgelegt. Weitere Informationen finden Sie unter Bedingungen beenden.

So erstellen Sie einen Alarm, der angibt, wann die CPU-Auslastung einen Schwellenwert überschreitet
  1. Öffnen Sie die Amazon EC2-Konsole unter https://console.aws.amazon.com/ec2/.

  2. Wählen Sie im Navigationsbereich Instances aus.

  3. Wählen Sie die Ziel-Instance aus und wählen Sie Aktionen , Überwachen und Fehler beheben, CloudWatch Alarme verwalten aus.

  4. Verwenden Sie für Alarmbenachrichtigung den Schalter, um Amazon SNS-Benachrichtigungen zu deaktivieren.

  5. Verwenden Sie für Alarmschwellenwerte die folgenden Einstellungen:

    • Beispiele gruppieren nach : Maximum

    • Art der zu prüfenden Daten: CPU-Auslastung

    • Prozent: 50

    • Zeitraum: 1 Minute

  6. Wenn Sie mit der Konfiguration des Alarms fertig sind, wählen Sie Erstellen aus.

Schritt 2: Erstellen einer Experimentvorlage

Erstellen Sie die Experimentvorlage mit der AWS FIS-Konsole. In der Vorlage geben Sie die folgende Aktion an, die ausgeführt werden soll: aws:ssm:send-command/AWSFIS-Run-CPU-Stress .

So erstellen Sie eine Experimentvorlage
  1. Öffnen Sie die AWS FIS-Konsole unter https://console.aws.amazon.com/fis/.

  2. Wählen Sie im Navigationsbereich Experimentvorlagen aus.

  3. Wählen Sie Experimentvorlage erstellen aus.

  4. Geben Sie unter Beschreibung und Name eine Beschreibung und einen Namen für die Vorlage ein.

  5. Nehmen Sie bei Aktionen die folgenden Einstellungen vor:

    1. Wählen Sie Aktion hinzufügen aus.

    2. Geben Sie einen Namen für die Aktion ein. Geben Sie z. B. ei runCpuStress.

    3. Wählen Sie für Aktionstyp aws:ssm:send-command/AWSFIS-Run-CPU-Stress aus. Dadurch wird automatisch der ARN des SSM-Dokuments zum Dokument-ARN hinzugefügt.

    4. Behalten Sie für Ziel das Ziel bei, das AWS FIS für Sie erstellt.

    5. Geben Sie für Aktionsparameter , Dokumentparameter Folgendes ein:

      {"DurationSeconds":"120"}
    6. Geben Sie für Aktionsparameter , Dauer 5 Minuten (PT5M) an.

    7. Wählen Sie Speichern.

  6. Führen Sie für Targets (Ziele) Folgendes aus:

    1. Wählen Sie Bearbeiten für das Ziel aus, das AWS FIS im vorherigen Schritt automatisch für Sie erstellt hat.

    2. Ersetzen Sie den Standardnamen durch einen aussagekräftigeren Namen. Geben Sie z. B. ei testInstance.

    3. Stellen Sie sicher, dass der Ressourcentyp aws:ec2:instance ist.

    4. Wählen Sie für Zielmethode die Option Ressourcen-IDs und dann die ID der Test-Instance aus.

    5. Wählen Sie für Auswahlmodus die Option Alle aus.

    6. Wählen Sie Speichern.

  7. Wählen Sie für Service Access die Option Vorhandene IAM-Rolle verwenden und dann die IAM-Rolle aus, die Sie wie in den Voraussetzungen für dieses Tutorial beschrieben erstellt haben. Wenn Ihre Rolle nicht angezeigt wird, stellen Sie sicher, dass sie über die erforderliche Vertrauensstellung verfügt. Weitere Informationen finden Sie unter IAM-Rollen für AWS FIS-Experimente.

  8. Wählen Sie unter Stoppbedingungen den CloudWatch Alarm aus, den Sie in Schritt 1 erstellt haben.

  9. (Optional) Wählen Sie für Tags die Option Neues Tag hinzufügen aus und geben Sie einen Tag-Schlüssel und einen Tag-Wert an. Die Tags, die Sie hinzufügen, werden auf Ihre Experimentvorlage angewendet, nicht auf die Experimente, die mit der Vorlage ausgeführt werden.

  10. Wählen Sie Experimentvorlage erstellen aus.

(Optional) So zeigen Sie das JSON der Experimentvorlage an

Wählen Sie die Registerkarte Export ierenaus. Im Folgenden finden Sie ein Beispiel für das JSON, das durch das vorherige Konsolenverfahren erstellt wurde.

{ "description": "Test CPU stress predefined SSM document", "targets": { "testInstance": { "resourceType": "aws:ec2:instance", "resourceArns": [ "arn:aws:ec2:region:123456789012:instance/instance_id" ], "selectionMode": "ALL" } }, "actions": { "runCpuStress": { "actionId": "aws:ssm:send-command", "parameters": { "documentArn": "arn:aws:ssm:region::document/AWSFIS-Run-CPU-Stress", "documentParameters": "{\"DurationSeconds\":\"120\"}", "duration": "PT5M" }, "targets": { "Instances": "testInstance" } } }, "stopConditions": [ { "source": "aws:cloudwatch:alarm", "value": "arn:aws:cloudwatch:region:123456789012:alarm:awsec2-instance_id-GreaterThanOrEqualToThreshold-CPUUtilization" } ], "roleArn": "arn:aws:iam::123456789012:role/AllowFISSSMActions", "tags": {} }

Schritt 3: Starten des Experiments

Wenn Sie mit der Erstellung Ihrer Experimentvorlage fertig sind, können Sie damit ein Experiment starten.

So starten Sie ein Experiment
  1. Sie sollten sich auf der Detailseite für die Experimentvorlage befinden, die Sie gerade erstellt haben. Wählen Sie andernfalls Experimentvorlagen und dann die ID der Experimentvorlage aus, um die Detailseite zu öffnen.

  2. Wählen Sie Start Experiment (Experiment starten) aus.

  3. (Optional) Um Ihrem Experiment ein Tag hinzuzufügen, wählen Sie Neues Tag hinzufügen und geben Sie einen Tag-Schlüssel und einen Tag-Wert ein.

  4. Wählen Sie Start Experiment (Experiment starten) aus. Wenn Sie zur Bestätigung aufgefordert werden, geben Sie start ein. Wählen Sie Start Experiment (Experiment starten) aus.

Schritt 4: Verfolgen des Experimentfortschritts

Sie können den Fortschritt eines laufenden Experiments verfolgen, bis das Experiment abgeschlossen ist, beendet wird oder fehlschlägt.

So verfolgen Sie den Fortschritt eines Experiments
  1. Sie sollten sich auf der Detailseite für das Experiment befinden, das Sie gerade gestartet haben. Wählen Sie andernfalls Experimente und dann die ID des Experiments aus, um die Detailseite für das Experiment zu öffnen.

  2. Um den Status des Experiments anzuzeigen, überprüfen Sie Status im Bereich Details. Weitere Informationen finden Sie unter Experimentstatus .

  3. Wenn der Experimentstatus Wird ausgeführt lautet, fahren Sie mit dem nächsten Schritt fort.

Schritt 5: Überprüfen der Experimentergebnisse

Sie können die CPU-Auslastung Ihrer Instance überwachen, während das Experiment läuft. Wenn die CPU-Auslastung den Schwellenwert erreicht, wird der Alarm ausgelöst und das Experiment wird durch die Stoppbedingung angehalten.

So überprüfen Sie die Ergebnisse des Experiments
  1. Wählen Sie die Registerkarte Stoppbedingungen aus. Der grüne Rahmen und das grüne Häkchen zeigen an, dass der Anfangsstatus des Alarms istOK. Die rote Linie gibt den Alarmschwellenwert an. Wenn Sie ein detaillierteres Diagramm bevorzugen, wählen Sie im Widget-Menü die Option Vergrößern aus.

  2. Wenn die CPU-Auslastung den Schwellenwert überschreitet, zeigen das Symbol für den roten Rahmen und den roten Ausrufezeichen auf der Registerkarte Stoppbedingungen an, dass sich der Alarmstatus in geändert hatALARM. Im Bereich Details lautet der Status des Experiments Angehalten . Wenn Sie den Status auswählen, wird die Meldung „Experiment wurde durch Stoppbedingung angehalten“ angezeigt.

  3. Wenn die CPU-Auslastung unter den Schwellenwert sinkt, zeigen der grüne Rahmen und das grüne Häkchensymbol an, dass sich der Alarmstatus in geändert hatOK.

  4. (Optional) Wählen Sie im Widget-Menü die Option In Alarmen anzeigen aus. Dadurch wird die Seite mit den Alarmdetails in der - CloudWatch Konsole geöffnet, auf der Sie weitere Informationen zum Alarm erhalten oder die Alarmeinstellungen bearbeiten können.

Schritt 6: Bereinigen

Wenn Sie die Test-EC2-Instance, die Sie für dieses Experiment erstellt haben, nicht mehr benötigen, können Sie sie beenden.

Beenden der Instances
  1. Öffnen Sie die Amazon EC2-Konsole unter https://console.aws.amazon.com/ec2/.

  2. Wählen Sie im Navigationsbereich Instances aus.

  3. Wählen Sie die Test-Instances und dann Instance-Status, Instance beenden aus.

  4. Wählen Sie Terminate (Kündigen) aus, wenn Sie zur Bestätigung aufgefordert werden.

Wenn Sie die Experimentvorlage nicht mehr benötigen, können Sie sie löschen.

So löschen Sie eine Experimentvorlage mit der AWS FIS-Konsole
  1. Öffnen Sie die AWS FIS-Konsole unter https://console.aws.amazon.com/fis/.

  2. Wählen Sie im Navigationsbereich Experimentvorlagen aus.

  3. Wählen Sie die Experimentvorlage und dann Aktionen, Experimentvorlage löschen aus.

  4. Wenn Sie zur Bestätigung aufgefordert werden, geben Sie ein delete und wählen Sie dann Experimentvorlage löschen aus.