기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
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:DescribeLoadBalancerselasticloadbalancing:DescribeTargetGroupselasticloadbalancing:DescribeTargetHealthelasticloadbalancing:DescribeInstanceHealthec2:DescribeInstancesec2:DescribeNetworkInterfacesec2:DescribeSecurityGroupsec2:DescribeSubnetscloudwatch:GetMetricStatisticsssm:SendCommandssm:GetCommandInvocationssm:DescribeInstanceInformations3:GetBucketLocations3:GetBucketAcls3: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": "*" } ] }
지침
다음 단계에 따라 자동화를 구성합니다.
-
Systems Manager
AWSSupport-TroubleshootELBHealthChecks의 문서로 이동합니다. -
Execute automation(자동화 실행)을 선택합니다.
-
입력 파라미터에 다음을 입력합니다.
-
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-
기본값:
""
-
-
실행을 선택합니다.
-
자동화가 시작됩니다.
-
문서는 다음 단계를 수행합니다.
-
getBucketPublicStatus:
대상 Amazon S3 버킷이 객체에 대한 읽기 또는 쓰기 퍼블릭 액세스 권한을 부여할 가능성이 있는지 확인합니다.
-
getLoadBalancerDetails:
로드 밸런서 유형을 식별하고 통합 로드 밸런서 세부 정보 객체를 반환합니다.
-
checkLoadBalancerType:
로드 밸런서가 존재하는지 확인합니다.
-
getTargets:
쿼리는 다양한 유형의 로드 밸런서를 기반으로 정상 및 비정상 대상 세부 정보의 맵을 반환하는 APIs를 설명합니다.
-
checkCloudWatchMetrics:
CloudWatch 지표
HealthyHostCountsUnHealthyHostCounts를 확인하고 CloudWatch 링크를 생성합니다. -
checkUnhealthyReasons:
비정상 원인을 확인하고 대상을 필터링합니다.
-
checkConnectivity:
로드 밸런서와 해당 인스턴스 간의 연결을 확인합니다.
-
runCommands:
인스턴스에서 문제 해결 명령을 실행하고 버킷 이름이 제공된 경우 출력을 업로드합니다.
-
generateReport:
이전 단계의 출력을 기반으로 최종 보고서를 생성하고 지정된 경우 Amazon S3 버킷에 보고서를 업로드합니다.
-
-
완료되면 출력 섹션에서 실행의 자세한 결과를 검토합니다.
진단 명령
실행서는 인스턴스에서 다음 진단 명령을 실행합니다.
Linux 쉘: top, free, ss, curl, iptables, tcpdump
Windows PowerShell: Get-CimInstance, Get-NetFirewallProfile, Get-NetFirewallRule, Invoke-WebRequest, netstat, netsh, pktmon
참조
Systems Manager Automation