AWSSupport-TroubleshootELBHealthChecks - AWS Systems Manager Referenz zum Automatisierungs-Runbook

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.

AWSSupport-TroubleshootELBHealthChecks

Beschreibung

Das AWSSupport-TroubleshootELBHealthChecksRunbook hilft bei der Behebung von Problemen mit der AWS Elastic Load Balancing (Elastic Load Balancing) -Zustandsprüfung, indem es die zugehörigen Amazon CloudWatch (CloudWatch) -Metriken analysiert, die Netzwerkkonnektivität überprüft und Diagnosebefehle auf den Ziel-Instances ausführt.

Dieses Runbook befasst sich mit den folgenden Anwendungsfällen:

  • Es gibt fehlerhafte Instanzen innerhalb der Zielinstanzen eines Load Balancers oder einer Zielgruppe.

  • Es gibt zwar keine fehlerhaften Instanzen, aber CloudWatch Metriken deuten auf Datenpunkte für UnHealthyHostCounts

Wichtig

Wichtige Überlegungen:

  • Die Automatisierung konzentriert sich auf die Fehlerbehebung bei Zielen vom Typ Instance.

  • Die maximale Anzahl von Instanzen, die für die Fehlerbehebung zulässig sind, beträgt 50.

  • Die Zielinstanzen müssen von Systems Manager verwaltet werden, um die Ausführung von Diagnosebefehlen auf Instanzebene zu ermöglichen.

  • Der S3BucketName Parameter ist optional, aber bestimmte Diagnoseergebnisse werden direkt in den angegebenen Amazon S3 S3-Bucket hochgeladen und nicht in der Automatisierungsausgabe angezeigt.

  • IPv6 Die Fehlerbehebung bei der Netzwerkkonnektivität wird nicht unterstützt.

Führen Sie diese Automatisierung aus (Konsole)

Art des Dokuments

Automatisierung

Eigentümer

Amazon

Plattformen

/

Erforderliche IAM-Berechtigungen

Der AutomationAssumeRole Parameter erfordert die folgenden Aktionen, um das Runbook erfolgreich zu verwenden.

  • elasticloadbalancing:DescribeLoadBalancers

  • elasticloadbalancing:DescribeTargetGroups

  • elasticloadbalancing:DescribeTargetHealth

  • elasticloadbalancing:DescribeInstanceHealth

  • ec2:DescribeInstances

  • ec2:DescribeNetworkInterfaces

  • ec2:DescribeSecurityGroups

  • ec2:DescribeSubnets

  • cloudwatch:GetMetricStatistics

  • ssm:SendCommand

  • ssm:GetCommandInvocation

  • ssm:DescribeInstanceInformation

  • s3:GetBucketLocation

  • s3:GetBucketAcl

  • s3:PutObject

Beispiel für eine Richtlinie:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "elasticloadbalancing:DescribeLoadBalancers", "elasticloadbalancing:DescribeTargetGroups", "elasticloadbalancing:DescribeTargetHealth", "elasticloadbalancing:DescribeInstanceHealth", "ec2:DescribeInstances", "ec2:DescribeNetworkInterfaces", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "cloudwatch:GetMetricStatistics", "ssm:SendCommand", "ssm:GetCommandInvocation", "ssm:DescribeInstanceInformation", "s3:GetBucketLocation", "s3:GetBucketAcl", "s3:PutObject" ], "Resource": "*" } ] }

Anweisungen

Gehen Sie wie folgt vor, um die Automatisierung zu konfigurieren:

  1. Navigieren Sie AWSSupport-TroubleshootELBHealthChecksim Systems Manager unter Dokumente zu.

  2. Wählen Sie Execute automation (Automatisierung ausführen).

  3. Geben Sie für die Eingabeparameter Folgendes ein:

    • AutomationAssumeRole (Fakultativ):

      • Beschreibung: (Optional) Der Amazon-Ressourcenname (ARN) der AWS Identity and Access Management (IAM) -Rolle, die es SSM Automation ermöglicht, die Aktionen in Ihrem Namen durchzuführen. Wenn keine Rolle angegeben ist, verwendet SSM Automation die Berechtigungen des Benutzers, der dieses Runbook startet.

      • Typ: AWS::IAM::Role::Arn

    • LoadBalancerOrTargetGroupName (Erforderlich):

      • Beschreibung: (Erforderlich) Der Name eines Classic Load Balancer oder der Name der Zielgruppe, die einem Application Load Balancer oder Network Load Balancer zugeordnet ist.

      • Typ: String

      • Zulässiges Muster: ^[a-zA-Z0-9-]+$

    • ExecutionMode (Erforderlich):

      • Beschreibung: (Erforderlich) Steuert den Ausführungsmodus der Automatisierung. Completeführt alle Schritte einschließlich RunCommands auf Amazon EC2 EC2-Instances aus. SkipRunCommandsführt alle Schritte aus, mit Ausnahme der Ausführung von Befehlen auf Instances.

      • Typ: String

      • Zulässige Werte: [Complete, SkipRunCommands]

    • S3 BucketName (fakultativ):

      • Beschreibung: (Optional) Der Name des Amazon S3 S3-Buckets in Ihrem Konto, in das Sie die Fehlerbehebungsprotokolle hochladen möchten.

      • Typ: String

      • Standard: ""

  4. Wählen Sie Ausführen aus.

  5. Die Automatisierung wird initiiert.

  6. Das Dokument führt die folgenden Schritte aus:

    • getBucketPublicStatus:

      Prüft, ob der Amazon S3 S3-Ziel-Bucket möglicherweise öffentlichen Lese- oder Schreibzugriff auf seine Objekte gewährt.

    • getLoadBalancerEinzelheiten:

      Identifiziert den Load Balancer-Typ und gibt ein einheitliches Load Balancer-Detailobjekt zurück.

    • checkLoadBalancerType:

      Prüft, ob der Load Balancer existiert.

    • Ziele abrufen:

      Auf der Grundlage der verschiedenen Typen von Load Balancern beschreiben Abfragen, wie eine Übersicht mit fehlerfreien und fehlerhaften Zielen zurückgegeben werden APIs soll.

    • checkCloudWatchMetriken:

      Überprüft die CloudWatch Metriken HealthyHostCounts UnHealthyHostCounts und generiert die CloudWatch Links.

    • checkUnhealthyReasons:

      Prüft nach schädlichen Gründen und filtert Ziele.

    • Überprüfen Sie die Konnektivität:

      Überprüft die Konnektivität zwischen dem Load Balancer und seinen Instances.

    • Befehle ausführen:

      Führt Befehle zur Fehlerbehebung auf Instances aus und lädt die Ausgabe hoch, wenn der Bucket-Name angegeben wird.

    • Bericht generieren:

      Generiert den Abschlussbericht auf der Grundlage der Ergebnisse der vorherigen Schritte und lädt den Bericht, falls angegeben, in den Amazon S3 S3-Bucket hoch.

  7. Wenn der Vorgang abgeschlossen ist, finden Sie im Abschnitt Outputs die detaillierten Ergebnisse der Ausführung.

Diagnosebefehle

Das Runbook führt die folgenden Diagnosebefehle auf Instanzen aus:

  • Linux-Shell: top, free, ss, curl, iptables, tcpdump

  • Windows PowerShell: Get-CimInstance, Get-, Get-NetFirewallProfile, Invoke- NetFirewallRuleWebRequest, Netstat, Netsh, Pktmon

Referenzen

Systems Manager Automation