

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

# `AWSSupport-TroubleshootCloudWatchAgent`
<a name="automation-aws-troubleshootcloudwatchagent"></a>

 **설명** 

**AWSSupport-TroubleshootCloudWatchAgent** 실행서는 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스의 Amazon CloudWatch 에이전트 문제 해결을 자동화합니다.Amazon EC2 실행서는 일련의 기본 및 (선택 사항) 확장 검사를 통해이 문제 해결을 수행합니다.

기본 검사에는 다음이 포함됩니다.
+  AWS Identity and Access Management (IAM) 인스턴스 프로파일 확인
+ 필요한 Amazon CloudWatch Agent IAM 권한이 Amazon EC2 인스턴스에 연결되어 있는지 확인

확장된 검사는 제공된 Amazon EC2 인스턴스 ID가 Systems Manager 관리형 인스턴스인 경우에만 수행됩니다. 이러한 확장 검사에는 다음이 포함됩니다.
+ 인스턴스에서 Amazon CloudWatch Agent의 상태 확인
+ Amazon CloudWatch Agent의 로그를 분석하여 일반적인 문제 및 관련 문제 해결 단계 확인
+ Amazon EC2 인스턴스에서 관련 로그 및 구성 파일을 압축하고 선택적으로 선택한 Amazon Simple Storage Service(Amazon S3) 버킷에 업로드합니다.
+ 인스턴스와 필수 엔드포인트 간의 연결 확인 수행

**중요**  
`RunVpcReachabilityAnalyzer` 파라미터가 로 설정되면 `true`이 런북은 하위 런북를 호출해야 하는지 여부를 결정합니다`AWSSupport-AnalyzeAWSEndpointReachabilityFromEC2`. 하위 실행서는 관련 비용이 있는 VPC Reachability Analyzer를 사용합니다. 요금에 대한 자세한 내용은 [Amazon VPC 요금](https://aws.amazon.com/vpc/pricing/) 설명서를 참조하세요.

**중요**  
이 실행서는 IAM 인스턴스 프로파일 역할에 필요한 권한만 확인합니다. 대신 `.aws/credentials` 파일에 정의된 자격 증명을 사용하는 경우 `verifyIamPermissions` 단계의 결과가 부정확할 수 있습니다.

 **어떻게 작동하나요?**

실행서는 다음 단계를 수행합니다.
+ **getInstanceProfile**: 제공된 Amazon EC2 인스턴스에 IAM 인스턴스 프로파일이 연결되어 있는지 확인합니다.
+ **verifyIamPermissions**: 인스턴스와 연결된 인스턴스 프로파일을 확인하여 필요한 IAM 권한이 적용되었는지 확인합니다.
+ **getInstanceInformation**: 인스턴스에 활성 Systems Manager 에이전트가 있는지 확인하고 인스턴스의 OS 유형을 가져옵니다.
+ **getAgentStatus**: 인스턴스에서 Amazon CloudWatch Agent의 상태를 확인합니다(확장 검사).
+ **analyzeLogs/analyzeLogsWindows**: OS 유형에 따라 Amazon CloudWatch Agent 로그의 결과를 분석하고 출력합니다.
+ **collectLogs/collectLogsWindows**: OS 유형에 따라 관련 Amazon CloudWatch Agent 문제 해결 파일을 번들링하고 출력합니다.
+ **checkEndpointReachability/checkEndpointReachabilityWindows**: 인스턴스가 OS 유형에 따라 필요한 엔드포인트에 도달할 수 있는지 확인합니다.
+ **analyzeAwsEndpointReachabilityFromEC2**: 하위 자동화 런북을 호출하여 선택한 인스턴스가 필요한 엔드포인트에 도달하는지 확인합니다(활성화된 경우).

 [이 자동화 실행(콘솔)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-TroubleshootCloudWatchAgent) 

**문서 유형**

자동화

**소유자**

Amazon

**플랫폼**

/

**필수 IAM 권한**

실행서를 성공적으로 사용하려면 `AutomationAssumeRole` 파라미터에 다음 작업이 필요합니다.
+ ec2:DescribeInstances
+ iam:GetInstanceProfile
+ iam:GetRole
+ iam:ListAttachedRolePolicies
+ iam:ListRolePolicies
+ iam:GetRolePolicy
+ iam:GetPolicy
+ iam:GetPolicyVersion
+ iam:SimulatePrincipalPolicy
+ ssm:DescribeInstanceInformation
+ ssm:SendCommand
+ ssm:GetCommandInvocation
+ ssm:DescribeInstanceAssociationsStatus
+ ssm:StartAutomationExecution

예제 정책: 

```
{
        "Version": "2012-10-17",		 	 	 
        "Statement": [
            {
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeInstances",
                "iam:GetInstanceProfile",
                "iam:GetRole",
                "iam:ListAttachedRolePolicies",
                "iam:ListRolePolicies",
                "iam:GetRolePolicy",
                "iam:GetPolicy",
                "iam:GetPolicyVersion",
                "iam:SimulatePrincipalPolicy",
                "ssm:DescribeInstanceInformation",
                "ssm:SendCommand",
                "ssm:GetCommandInvocation",
                "ssm:DescribeInstanceAssociationsStatus",
                "ssm:StartAutomationExecution"
            ],
            "Resource": "*"
            }
        ]
        }
```

 **지침** 

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

1. Systems Manager[https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootCloudWatchAgent/description](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootCloudWatchAgent/description)의 문서로 이동합니다.

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

1. 입력 파라미터에 다음을 입력합니다.
   + **AutomationAssumeRole(선택 사항):**
     + 설명: (선택 사항) Systems Manager Automation이 사용자를 대신하여 작업을 수행하도록 허용하는 IAM 역할의 ARN입니다. 역할을 지정하지 않은 경우, Systems Manager Automation에서는 이 실행서를 시작하는 사용자의 권한을 사용합니다.
     + 유형: `AWS::IAM::Role::Arn`
   + **InstanceId(필수):**
     + 설명: (필수) Amazon CloudWatch 에이전트 문제를 해결하려는 Amazon EC2 인스턴스의 ID입니다. Amazon CloudWatch 
     + 유형: `AWS::EC2::Instance::Id`
     + 패턴 허용: `^i-[0-9a-f]{8,17}$`
   + **S3UploadBucket(선택 사항):**
     + 설명: (선택 사항) 수집된 Amazon CloudWatch Agent 로그를 업로드할 Amazon S3 버킷의 이름입니다. Amazon CloudWatch Amazon EC2 인스턴스 프로파일에는이 버킷에 파일을 업로드할 수 있는 올바른 권한이 있어야 합니다. 또한 대상 Amazon EC2 인스턴스가 Systems Manager 관리형 인스턴스여야 합니다.
     + 유형: `AWS::S3::Bucket::Name`
     + 패턴 허용: `^$|^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$`
     + 기본값: `""`
   + **S3BucketOwnerAccountId(선택 사항):**
     + 설명: (선택 사항) Amazon CloudWatch Agent 로그를 업로드하려는 Amazon S3 버킷을 소유한 AWS 계정 번호입니다. Amazon CloudWatch 이 파라미터를 수정하지 않으면 실행서는 자동화가 실행되는 사용자 또는 역할의 AWS 계정 ID를 사용합니다.
     + 유형: `String`
     + 패턴 허용: `^\\{\\{ global:ACCOUNT_ID \\}\\}$|^[0-9]{12}$`
     + 기본값: `{{ global:ACCOUNT_ID }}`
   + **CheckEC2Endpoint(선택 사항):**
     + 설명: (선택 사항) 에이전트 구성에서 옵션을 사용하여 에이전트가 수집한 지표`append_dimensions`에 Amazon EC2 지표 차원을 추가할`true`지 지정합니다. `append_dimensions`를 사용하는 경우 Amazon CloudWatch Agent는 Amazon EC2 API 엔드포인트에 연결해야 하므로 확장 검사를 통해 추가 연결 테스트를 수행합니다.
     + 유형: `String`
     + 허용된 값: `[true, false]`
     + 기본값: `false`
   + **RunVpcReachabilityAnalyzer(선택 사항):**
     + 설명: (선택 사항) 네트워크 문제가 확장 검사에 의해 결정되거나 지정된 인스턴스 ID가 관리형 인스턴스가 아닌 경우 `AWSSupport-AnalyzeAWSEndpointReachabilityFromEC2` 하위 자동화를 실행`true`하도록 지정합니다.
     + 유형: `Boolean`
     + 기본값: `false`
   + **RetainVpcReachabilityAnalysis(선택 사항):**
     + 설명: (선택 사항)이 인 경우에만 관련이 `RunVpcReachabilityAnalyzer` 있습니다`true`. VPC Reachability Analyzer에서 생성한 네트워크 인사이트 경로 및 관련 분석을 유지`true`하려면를 지정합니다. 기본적으로 이러한 리소스는 성공적인 분석 후 삭제됩니다.
     + 유형: `Boolean`
     + 기본값: `false`

1. **실행**을 선택합니다.

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

1. 문서는 다음 단계를 수행합니다.
   + **getInstanceProfile**:

     제공된 Amazon EC2 인스턴스에 IAM 인스턴스 프로파일이 연결되어 있는지 확인합니다.
   + **branchOnInstanceProfileStatus**:

     인스턴스 프로파일이 인스턴스에 연결된 경우 자동화를 분기하여 필요한 인스턴스 프로파일 권한을 확인합니다.
   + **verifyIamPermissions**:

     인스턴스와 연결된 인스턴스 프로파일을 확인하여 필요한 IAM 권한이 적용되는지 확인합니다.
   + **getInstanceInformation**:

     인스턴스에 활성 Systems Manager 에이전트가 있는지 확인하고 인스턴스의 OS 유형을 가져옵니다.
   + **branchOnManagedInstance**:

     자동화를 분기하여 인스턴스가 관리되는지 확장 검사를 수행합니다.
   + **getAgentStatus**:

     인스턴스에서 Amazon CloudWatch Agent의 상태를 확인합니다.
   + **branchOnInstanceOsType**:

     자동화를 분기하여 OS를 기반으로 특정 로그 수집/분석 명령을 실행합니다.
   + **analyzeLogs/analyzeLogsWindows**:

     OS 유형에 따라 Amazon CloudWatch Agent 로그의 결과를 분석하고 출력합니다.
   + **collectLogs/collectLogsWindows**:

     OS 유형에 따라 관련 Amazon CloudWatch Agent 문제 해결 파일을 번들링하고 출력합니다.
   + **checkEndpointReachability/checkEndpointReachabilityWindows**:

     인스턴스가 OS 유형에 따라 필요한 엔드포인트에 도달할 수 있는지 확인합니다.
   + **branchOnRunVpcReachabilityAnalyzer**:

     활성화되고 네트워크 문제가 감지되면 자동화를 분기하여 VPC 연결성 분석을 실행합니다.
   + **generateEndpoints**:

     확장 검사 실패 및 값을 확인할 엔드포인트를 생성합니다`CheckEC2Endpoint`.
   + **analyzeAwsEndpointReachabilityFromEC2**:

     자동화 실행서를 호출`AWSSupport-AnalyzeAWSEndpointReachabilityFromEC2`하여 선택한 인스턴스가 필요한 엔드포인트에 도달하는지 확인합니다.
   + **outputFindings**:

     자동화 실행 단계의 결과를 출력합니다.

1. 완료 후 **출력** 섹션에서 실행의 자세한 결과를 검토합니다.

**참조**

Systems Manager Automation
+ [이 자동화 실행(콘솔)](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootCloudWatchAgent/description)
+ [자동화 실행](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-working-executing.html)
+ [Automation 설정](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-setup.html)
+ [자동화 워크플로 지원](https://aws.amazon.com/premiumsupport/technology/saw/)