View a markdown version of this page

AWSSupport-TroubleshootELBHealthChecks - AWS Systems Manager Automation 런북 참조

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWSSupport-TroubleshootELBHealthChecks

설명

AWSSupport-TroubleshootELBHealthChecks 실행서는 관련 Amazon CloudWatch(CloudWatch) 지표를 분석하고, 네트워크 연결을 확인하고, 대상 인스턴스에서 진단 명령을 실행하여 AWS Elastic Load Balancing(Elastic Load Balancing) 상태 확인 문제를 해결하는 데 도움이 됩니다.

이 실행서는 다음 사용 사례를 다룹니다.

  • 로드 밸런서 또는 대상 그룹의 대상 인스턴스 내에 비정상 인스턴스가 있습니다.

  • 비정상 인스턴스는 없지만 CloudWatch 지표는에 대한 데이터 포인트를 나타냅니다. UnHealthyHostCounts

중요

중요 고려 사항:

  • 자동화는 인스턴스 유형 대상 문제 해결에 중점을 둡니다.

  • 문제 해결에 허용되는 최대 인스턴스 수는 50개입니다.

  • 인스턴스 수준에서 진단 명령을 실행하려면 Systems Manager에서 대상 인스턴스를 관리해야 합니다.

  • S3BucketName 파라미터는 선택 사항이지만 특정 진단 결과는 지정된 Amazon S3 버킷에 직접 업로드되며 자동화 출력에 표시되지 않습니다.

  • IPv6 네트워크 연결 문제 해결은 지원되지 않습니다.

이 자동화 실행(콘솔)

문서 유형

자동화

소유자

Amazon

플랫폼

/

필수 IAM 권한

실행서를 성공적으로 사용하려면 AutomationAssumeRole 파라미터에 다음 작업이 필요합니다.

  • 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

정책 예제:

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

지침

다음 단계에 따라 자동화를 구성합니다.

  1. Systems ManagerAWSSupport-TroubleshootELBHealthChecks의 문서로 이동합니다.

  2. Execute automation(자동화 실행)을 선택합니다.

  3. 입력 파라미터에 다음을 입력합니다.

    • AutomationAssumeRole(선택 사항):

      • 설명: (선택 사항) SSM Automation이 사용자를 대신하여 작업을 수행하도록 허용하는 (IAM) 역할의 AWS Identity and Access Management Amazon 리소스 이름(ARN)입니다. 역할이 지정되지 않은 경우 SSM Automation은이 실행서를 시작하는 사용자의 권한을 사용합니다.

      • 유형: AWS::IAM::Role::Arn

    • LoadBalancerOrTargetGroupName(필수):

      • 설명: (필수) Classic Load Balancer의 이름 또는 Application Load Balancer 또는 Network Load Balancer와 연결된 대상 그룹의 이름입니다.

      • 유형: String

      • 허용된 패턴: ^[a-zA-Z0-9-]+$

    • ExecutionMode(필수):

      • 설명: (필수) 자동화 실행 모드를 제어합니다. Complete는 Amazon EC2 인스턴스에서 runCommands를 포함한 모든 단계를 실행합니다.는 인스턴스에서 명령 실행을 제외한 모든 단계를 SkipRunCommands 실행합니다.

      • 유형: String

      • 허용된 값: [Complete, SkipRunCommands]

    • S3BucketName(선택 사항):

      • 설명: (선택 사항) 문제 해결 로그를 업로드하려는 계정의 Amazon S3 버킷 이름입니다.

      • 유형: String

      • 기본값: ""

  4. 실행을 선택합니다.

  5. 자동화가 시작됩니다.

  6. 문서는 다음 단계를 수행합니다.

    • getBucketPublicStatus:

      대상 Amazon S3 버킷이 객체에 대한 읽기 또는 쓰기 퍼블릭 액세스 권한을 부여할 가능성이 있는지 확인합니다.

    • getLoadBalancerDetails:

      로드 밸런서 유형을 식별하고 통합 로드 밸런서 세부 정보 객체를 반환합니다.

    • checkLoadBalancerType:

      로드 밸런서가 존재하는지 확인합니다.

    • getTargets:

      쿼리는 다양한 유형의 로드 밸런서를 기반으로 정상 및 비정상 대상 세부 정보의 맵을 반환하는 APIs를 설명합니다.

    • checkCloudWatchMetrics:

      CloudWatch 지표HealthyHostCountsUnHealthyHostCounts를 확인하고 CloudWatch 링크를 생성합니다.

    • checkUnhealthyReasons:

      비정상 원인을 확인하고 대상을 필터링합니다.

    • checkConnectivity:

      로드 밸런서와 해당 인스턴스 간의 연결을 확인합니다.

    • runCommands:

      인스턴스에서 문제 해결 명령을 실행하고 버킷 이름이 제공된 경우 출력을 업로드합니다.

    • generateReport:

      이전 단계의 출력을 기반으로 최종 보고서를 생성하고 지정된 경우 Amazon S3 버킷에 보고서를 업로드합니다.

  7. 완료되면 출력 섹션에서 실행의 자세한 결과를 검토합니다.

진단 명령

실행서는 인스턴스에서 다음 진단 명령을 실행합니다.

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

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

참조

Systems Manager Automation