View a markdown version of this page

AWSSupport-TroubleshootELBHealthChecks - AWS Systems Manager Riferimento al runbook dell’automazione

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

AWSSupport-TroubleshootELBHealthChecks

Descrizione

Il AWSSupport-TroubleshootELBHealthChecks runbook aiuta a risolvere i problemi di controllo dello stato di AWS Elastic Load Balancing (Elastic Load Balancing) analizzando le relative metriche Amazon CloudWatch (CloudWatch), verificando la connettività di rete ed eseguendo comandi diagnostici sulle istanze di destinazione.

Questo runbook affronta i seguenti casi d'uso:

  • Sono presenti istanze non integre all'interno delle istanze target di un load balancer o di un gruppo target.

  • Sebbene non vi siano casi non integri, le metriche indicano i punti dati per CloudWatch UnHealthyHostCounts

Importante

Considerazioni importanti:

  • L'automazione si concentra sulla risoluzione dei problemi relativi agli obiettivi dei tipi di istanza.

  • Il numero massimo di istanze consentite per la risoluzione dei problemi è 50.

  • Le istanze di destinazione devono essere gestite da Systems Manager per consentire l'esecuzione di comandi diagnostici a livello di istanza.

  • Il S3BucketName parametro è facoltativo, ma alcuni risultati diagnostici vengono caricati direttamente nel bucket Amazon S3 specificato e non vengono visualizzati nell'output di automazione.

  • La risoluzione dei problemi di connettività di rete IPv6 non è supportata.

Esegui questa automazione (console)

Tipo di documento

Automazione

Proprietario

Amazon

Piattaforme

/

Autorizzazioni IAM richieste

Il AutomationAssumeRole parametro richiede le seguenti azioni per utilizzare correttamente il runbook.

  • 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

Esempio di politica:

{ "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": "*" } ] }

Istruzioni

Segui questi passaggi per configurare l'automazione:

  1. Accedi AWSSupport-TroubleshootELBHealthChecks a Systems Manager in Documenti.

  2. Seleziona Execute automation (Esegui automazione).

  3. Per i parametri di input, inserisci quanto segue:

    • AutomationAssumeRole (Facoltativo):

      • Descrizione: (Facoltativo) L'Amazon Resource Name (ARN) del ruolo AWS Identity and Access Management (IAM) che consente a SSM Automation di eseguire le azioni per tuo conto. Se non viene specificato alcun ruolo, SSM Automation utilizza le autorizzazioni dell'utente che avvia questo runbook.

      • Tipo: AWS::IAM::Role::Arn

    • LoadBalancerOrTargetGroupName (Obbligatorio):

      • Descrizione: (Obbligatorio) Il nome di un Classic Load Balancer o il nome del gruppo target associato a un Application Load Balancer o Network Load Balancer.

      • Tipo: String

      • Pattern consentito: ^[a-zA-Z0-9-]+$

    • ExecutionMode (Obbligatorio):

      • Descrizione: (Obbligatorio) Controlla la modalità di esecuzione dell'automazione. Completeesegue tutti i passaggi, incluso RunCommands sulle istanze Amazon EC2. SkipRunCommandsesegue tutti i passaggi tranne l'esecuzione dei comandi sulle istanze.

      • Tipo: String

      • Valori consentiti: [Complete, SkipRunCommands]

    • S3BucketName (Facoltativo):

      • Descrizione: (Facoltativo) Il nome del bucket Amazon S3 nel tuo account in cui desideri caricare i log per la risoluzione dei problemi.

      • Tipo: String

      • Impostazione predefinita: ""

  4. Seleziona Esegui.

  5. L'automazione viene avviata.

  6. Il documento esegue i seguenti passaggi:

    • ottieni BucketPublicStatus:

      Verifica se il bucket Amazon S3 di destinazione concede potenzialmente l'accesso pubblico in lettura o scrittura ai suoi oggetti.

    • ottieni: LoadBalancerDetails

      Identifica il tipo di load balancer e restituisce un oggetto unificato con i dettagli del sistema di bilanciamento del carico.

    • verifica LoadBalancerType:

      Verifica se il load balancer esiste.

    • GetTargets:

      In base ai diversi tipi di sistemi di bilanciamento del carico, le query descrivono le API per restituire una mappa dei dettagli degli obiettivi integri e non integri.

    • verifica: CloudWatchMetrics

      Controlla le CloudWatch metriche HealthyHostCounts UnHealthyHostCounts e genera i CloudWatch link.

    • verifica UnhealthyReasons:

      Verifica la presenza di motivi non salutari e filtra gli obiettivi.

    • Verifica la connettività:

      Verifica la connettività tra il load balancer e le relative istanze.

    • Esegui comandi:

      Esegue i comandi per la risoluzione dei problemi sulle istanze e carica l'output se viene fornito il nome del bucket.

    • Genera rapporto:

      Genera il report finale in base all'output dei passaggi precedenti e lo carica nel bucket Amazon S3, se specificato.

  7. Una volta completato, consulta la sezione Output per i risultati dettagliati dell'esecuzione.

Comandi diagnostici

Il runbook esegue i seguenti comandi diagnostici sulle istanze:

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

  • Windows PowerShell: Get-CimInstance,,,, netstat Get-NetFirewallProfile, netsh Get-NetFirewallRule Invoke-WebRequest, pktmon

Riferimenti

Systems Manager Automation