"AWSSupport-TroubleshootManagedInstance" 자동화 런북을 사용하여 System Manager에서 EC2 인스턴스를 관리형에 대한 문제를 해결하는 방법

3분 분량
콘텐츠 수준: 고급
3

본 기사는 AWS 지원 자동화 워크플로우 (Support Automation Workflow)의 "AWSSupport-TroubleshootManagedInstance" 런북을 통해 대상이 되는 EC2인스턴스가 AWS Systems Manager에 의해 관리됨으로 보고되지 않는 이유를 파악하는 방법을 설명합니다.

개요

"AWSSupport-TroubleshootManagedInstance" 런북을 사용하여 AWS Systems Manager에서 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스를 관리형 인스턴스로 표시하지 않는 이유를 확인할 수 있습니다.

이 런북은 보안 그룹 규칙, VPC 엔드포인트, Network Access Control List(NACL), 라우팅 테이블을 비롯한 인스턴스의 VPC 구성과 필요한 권한이 포함되어있는 AWS Identity and Access Management (IAM) 인스턴스 프로파일이 인스턴스에 연결되어 있는지 확인합니다.

해결 방법

권한 부여

런북을 사용하기 위해서는 아래와 같은 권한이 필요합니다. 먼저 대상 인스턴스에 연결된 Systems Manager용 AWS Identity 및 Access Management(IAM) 인스턴스 프로필이 있는지 확인하세요.

권한을 부여하려면 다음 단계를 수행하여 AssumeRole을 설정하고 자동화 문서 구성 프로세스에 대한 AutomationAssumeRole 파라미터를 지정하세요.

  1. JSON 옵션을 사용하여 다음 정책을 생성하세요.
    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Action": [
               "ec2:DescribeInstances",
               "ec2:DescribeNetworkAcls",
               "ec2:DescribeNetworkInterfaces",
               "ec2:DescribeRouteTables",
               "ec2:DescribeSecurityGroups",
               "ec2:DescribeVpcEndpoints",
               "ec2:DescribeVpcs"
          ],
          "Resource": "*",
          "Effect": "Allow"
        },
        {
          "Action": [
            "iam:PassRole"
          ],
          "Resource": "*",
          "Effect": "Allow"
        },
        {
          "Action": [
            "ssm:StartAutomationExecution",
            "ssm:GetAutomationExecution",
            "ssm:DescribeAutomationStepExecutions",
            "ssm:DescribeAutomationExecutions"
          ],
          "Resource": "*",
          "Effect": "Allow"
        },
        {
          "Action": [
            "ssm:DescribeInstanceInformation",
            "ssm:DescribeInstanceProperties",
            "ssm:GetDocument",
            "ssm:ListDocuments"
          ],
          "Resource": "*",
          "Effect": "Allow"
        },
        {
          "Action": [
            "iam:ListRoles",
            "iam:GetInstanceProfile",
            "iam:ListAttachedRolePolicies"
          ],
          "Resource": "*",
          "Effect": "Allow"
        }
      ]
    }
    
  2. Assume role,을 생성하고 정책을 연결하세요.
  3. **"Resource": "*"**를 Assume role의 ARN으로 바꿉니다.
    {
      "Action": [
          "iam:PassRole"
        ],
        "Resource": "*",
        "Effect": "Allow"
      },
    

런북 실행

다음 단계를 통하여 AWS 지원 자동화 워크플로우에서 제공되는 "AWSSupport-TroubleshootManagedInstance" 런북을 실행하여 Systems Manager가 인스턴스를 관리하는지 여부 및 해결 방법을 확인하실 수 있습니다.

  1. 진단이 필요한 EC2 인스턴스의 ID를 확인합니다.
  2. AWS Systems Manager 콘솔로 이동하여 왼쪽 네비게이션에서 Documents(문서)를 선택합니다.
  3. 검색 창에 AWSSupport-TroubleshootManagedInstance(소유자: Amazon)을 입력합니다.
  4. AWSSupport-TroubleshootManagedInstance 문서를 선택합니다.
  5. 오른쪽의 자동화 실행(Execute automation) 버튼을 클릭합니다. Enter image description here
  6. InstanceId에 대상이 되는 인스턴스의 ID를 입력합니다. 인스턴스 ID를 수동으로 입력하거나 인스턴스 선택기를 사용할 수 있습니다. 인스턴스 선택기를 사용하는 경우 필터를 Show managed instance only(관리형 인스턴스만 표시)에서 Show all instances(모든 인스턴스 표시)로 변경합니다.
  7. (선택 사항) AutomationAssumeRole의 경우 시스템 관리자 자동화가 사용자를 대신하여 작업을 수행할 수 있도록 허용하는 IAM 역할의 ARN을 입력합니다. 역할을 지정하지 않으면 Systems Manager Automation은 문서를 실행하는 사용자의 권한을 사용합니다.
  8. 하단에 실행(Execute)을 선택합니다.
  9. 실행이 완료 되면 출력(OutPuts)에서 세부 결과를 검토합니다. Enter image description here

참고 문서

[1] AWS 지원 자동화 워크플로우(AWS Support Automation Workflow - AWS SAW)
https://aws.amazon.com/ko/premiumsupport/technology/saw/

[2] Why isn't Systems Manager showing my Amazon EC2 instance as a managed instance?
https://repost.aws/knowledge-center/systems-manager-ec2-instance-not-appear

[3] AWSSupport-TroubleshootManagedInstance
https://docs.aws.amazon.com/ko_kr/systems-manager-automation-runbooks/latest/userguide/automation-awssupport-troubleshoot-managed-instance.html

1 댓글

유용한 정보 감사합니다!

답글을 게시함 16일 전

관련 콘텐츠