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
S3BucketNameParameter 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:DescribeLoadBalancerselasticloadbalancing:DescribeTargetGroupselasticloadbalancing:DescribeTargetHealthelasticloadbalancing:DescribeInstanceHealthec2:DescribeInstancesec2:DescribeNetworkInterfacesec2:DescribeSecurityGroupsec2:DescribeSubnetscloudwatch:GetMetricStatisticsssm:SendCommandssm:GetCommandInvocationssm:DescribeInstanceInformations3:GetBucketLocations3:GetBucketAcls3: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:
-
Navigieren Sie
AWSSupport-TroubleshootELBHealthChecksim Systems Manager unter Dokumente zu. -
Wählen Sie Execute automation (Automatisierung ausführen).
-
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:
""
-
-
Wählen Sie Ausführen aus.
-
Die Automatisierung wird initiiert.
-
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
HealthyHostCountsUnHealthyHostCountsund 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.
-
-
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