View a markdown version of this page

AWSSupport-TroubleshootELBHealthChecks - AWS Systems Manager Referência do Automation Runbook

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

AWSSupport-TroubleshootELBHealthChecks

Descrição

O AWSSupport-TroubleshootELBHealthChecksrunbook ajuda a solucionar problemas de verificação de integridade do AWS Elastic Load Balancing (Elastic Load Balancing) analisando suas métricas relacionadas ao CloudWatch Amazon CloudWatch (), verificando a conectividade de rede e executando comandos de diagnóstico em suas instâncias de destino.

Este runbook aborda os seguintes casos de uso:

  • Há instâncias não íntegras nas instâncias de destino de um balanceador de carga ou de um grupo-alvo.

  • Embora não haja instâncias insalubres, CloudWatch as métricas indicam pontos de dados para UnHealthyHostCounts

Importante

Considerações importantes:

  • A automação se concentra na solução de problemas de alvos do tipo de instância.

  • O número máximo de instâncias permitidas para solução de problemas é 50.

  • As instâncias de destino devem ser gerenciadas pelo Systems Manager para permitir a execução de comandos de diagnóstico no nível da instância.

  • O S3BucketName parâmetro é opcional, mas determinados resultados de diagnóstico são enviados diretamente para o bucket especificado do Amazon S3 e não são exibidos na saída de automação.

  • IPv6 a solução de problemas de conectividade de rede não é suportada.

Executar esta automação (console)

Tipo de documento

Automação

Proprietário

Amazon

Plataformas

/

Permissões obrigatórias do IAM

O parâmetro AutomationAssumeRole requer as seguintes ações para usar o runbook com êxito.

  • 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

Exemplo de política:

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

Instruções

Siga estas etapas para configurar a automação:

  1. Navegue até AWSSupport-TroubleshootELBHealthChecksem Systems Manager em Documentos.

  2. Selecione Execute automation (Executar automação).

  3. Para os parâmetros de entrada, insira o seguinte:

    • AutomationAssumeRole (Opcional):

      • Descrição: (Opcional) O Amazon Resource Name (ARN) da função AWS Identity and Access Management (IAM) que permite que o SSM Automation execute as ações em seu nome. Se nenhuma função for especificada, o SSM Automation usa as permissões do usuário que inicia esse runbook.

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

    • LoadBalancerOrTargetGroupName (Obrigatório):

      • Descrição: (Obrigatório) O nome de um Classic Load Balancer ou o nome do grupo-alvo associado a um Application Load Balancer ou Network Load Balancer.

      • Tipo: String

      • Allowed-pattern: ^[a-zA-Z0-9-]+$

    • ExecutionMode (Obrigatório):

      • Descrição: (Obrigatório) Controla o modo de execução da automação. Completeexecuta todas as etapas, incluindo runCommands nas instâncias do Amazon EC2. SkipRunCommandsexecuta todas as etapas, exceto a execução de comandos nas instâncias.

      • Tipo: String

      • Valores permitidos: [Complete, SkipRunCommands]

    • S3 BucketName (opcional):

      • Descrição: (Opcional) O nome do bucket do Amazon S3 na sua conta onde você deseja fazer o upload dos registros de solução de problemas.

      • Tipo: String

      • Padrão: ""

  4. Selecione Executar.

  5. A automação é iniciada.

  6. O bucket realiza as seguintes etapas:

    • getBucketPublicStatus:

      Verifica se o bucket do Amazon S3 de destino potencialmente concede acesso público de leitura ou gravação a seus objetos.

    • getLoadBalancerDetalhes:

      Identifica o tipo do balanceador de carga e retorna um objeto unificado de detalhes do balanceador de carga.

    • checkLoadBalancerType:

      Verifica se o balanceador de carga existe.

    • Obtenha alvos:

      Com base nos diferentes tipos de balanceadores de carga, as consultas descrevem como APIs retornar um mapa de detalhes de alvos íntegros e não íntegros.

    • checkCloudWatchMétricas:

      Verifica as CloudWatch métricas HealthyHostCounts UnHealthyHostCounts e gera os CloudWatch links.

    • checkUnhealthyReasons:

      Verifica motivos prejudiciais à saúde e filtra os alvos.

    • Verifique a conectividade:

      Verifica a conectividade entre o balanceador de carga e suas instâncias.

    • Executar comandos:

      Executa comandos de solução de problemas nas instâncias e carrega a saída se o nome do bucket for fornecido.

    • Gerar relatório:

      Gera o relatório final com base na saída das etapas anteriores e carrega o relatório no bucket do Amazon S3, se especificado.

  7. Depois de concluído, revise a seção Saídas para obter os resultados detalhados da execução.

Comandos de diagnóstico

O runbook executa os seguintes comandos de diagnóstico nas instâncias:

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

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

Referências

Automação do Systems Manager