AWSSupport-TroubleshootELBHealthChecks - AWS Systems Manager Referencia del manual de automatización

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

AWSSupport-TroubleshootELBHealthChecks

Descripción

El AWSSupport-TroubleshootELBHealthChecksmanual ayuda a solucionar problemas de comprobación de estado de AWS Elastic Load Balancing (Elastic Load Balancing) mediante el análisis de las métricas de Amazon CloudWatch (CloudWatch) relacionadas, la verificación de la conectividad de la red y la ejecución de comandos de diagnóstico en las instancias de destino.

Este manual aborda los siguientes casos de uso:

  • Hay instancias en mal estado en las instancias de destino de un balanceador de cargas o de un grupo objetivo.

  • Si bien no hay instancias en mal estado, CloudWatch las métricas indican puntos de datos para UnHealthyHostCounts

importante

Consideraciones importantes:

  • La automatización se centra en la resolución de problemas de los objetivos de tipo instancia.

  • El número máximo de instancias permitido para la solución de problemas es de 50.

  • Systems Manager debe administrar las instancias de destino para permitir la ejecución de comandos de diagnóstico a nivel de instancia.

  • El S3BucketName parámetro es opcional, pero algunos resultados de diagnóstico se cargan directamente en el bucket de Amazon S3 especificado y no se muestran en el resultado de la automatización.

  • IPv6 no se admite la solución de problemas de conectividad de red.

Ejecuta esta automatización (consola)

Tipo de documento

Automatización

Propietario

Amazon

Plataformas

/

Permisos de IAM necesarios

El parámetro AutomationAssumeRole requiere las siguientes acciones para utilizar el manual de procedimientos correctamente.

  • 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

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

Instrucciones

Siga estos pasos para configurar la automatización:

  1. Navegue hasta AWSSupport-TroubleshootELBHealthChecksSystems Manager, en Documentos.

  2. Elija Execute automation (Ejecutar automatización).

  3. Para los parámetros de entrada, introduzca lo siguiente:

    • AutomationAssumeRole (Opcional):

      • Descripción: (opcional) El nombre del recurso de Amazon (ARN) del rol AWS Identity and Access Management (IAM) que permite a SSM Automation realizar las acciones en su nombre. Si no se especifica ningún rol, SSM Automation utiliza los permisos del usuario que inicia este manual.

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

    • LoadBalancerOrTargetGroupName (Obligatorio):

      • Descripción: (obligatorio) El nombre de un Classic Load Balancer o el nombre del grupo objetivo asociado a un Application Load Balancer o Network Load Balancer.

      • Tipo: String

      • Valor permitido: ^[a-zA-Z0-9-]+$

    • ExecutionMode (Obligatorio):

      • Descripción: (Obligatorio) Controla el modo de ejecución de la automatización. Completeejecuta todos los pasos, incluidos los runCommands, en las instancias de Amazon EC2. SkipRunCommandsejecuta todos los pasos excepto la ejecución de los comandos en las instancias.

      • Tipo: String

      • Valores permitidos: [Complete, SkipRunCommands]

    • S3 BucketName (opcional):

      • Descripción: (opcional) El nombre del depósito de Amazon S3 de su cuenta en el que desea cargar los registros de solución de problemas.

      • Tipo: String

      • Valor predeterminado: ""

  4. Seleccione Ejecutar.

  5. Se inicia la automatización.

  6. Este documento realiza los siguientes pasos:

    • getBucketPublicEstado:

      Comprueba si el bucket de Amazon S3 de destino puede conceder acceso público de lectura o escritura a sus objetos.

    • getLoadBalancerDetalles:

      Identifica el tipo de balanceador de cargas y devuelve un objeto de detalles del balanceador de cargas unificado.

    • checkLoadBalancerType:

      Comprueba si el equilibrador de cargas existe.

    • GetTargets:

      Según los diferentes tipos de balanceadores de carga, las consultas describen cómo devolver un mapa APIs con los detalles de los objetivos en buen estado y en mal estado.

    • checkCloudWatchMétricas:

      Comprueba las CloudWatch métricas HealthyHostCounts UnHealthyHostCounts y genera los CloudWatch enlaces.

    • checkUnhealthyReasons:

      Comprueba si hay motivos insalubres y filtra los objetivos.

    • Compruebe la conectividad:

      Comprueba la conectividad entre el balanceador de cargas y sus instancias.

    • Ejecute los comandos:

      Ejecuta comandos de solución de problemas en las instancias y carga el resultado si se proporciona el nombre del bucket.

    • Generar un informe:

      Genera el informe final en función del resultado de los pasos anteriores y, si se especifica, carga el informe en el bucket de Amazon S3.

  7. Una vez finalizado, revise la sección de resultados para ver los resultados detallados de la ejecución.

Diagnostic Commands

El runbook ejecuta los siguientes comandos de diagnóstico en las instancias:

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

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

Referencias

Automatización de Systems Manager