

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

# AWS Systems Manager 에이전트 설치
<a name="install-systems-manager-agent"></a>

 AWS Systems Manager 에이전트(Systems Manager 에이전트)는 Systems Manager가 Greengrass 코어 디바이스, Amazon EC2 인스턴스 및 기타 리소스를 업데이트, 관리 및 구성할 수 있도록 설치한 Amazon 소프트웨어입니다. 이 에이전트는 AWS 클라우드에서 Systems Manager 서비스의 요청을 처리하고 실행합니다. 그런 다음 에이전트는 상태 및 런타임 정보를 Systems Manager 서비스로 다시 보냅니다. 자세한 내용은 *AWS Systems Manager 사용 설명서*의 [Systems Manager Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/prereqs-ssm-agent.html)를 참조하세요.

AWS 는 Systems Manager Agent를 Greengrass 코어 디바이스에 배포하여 Systems Manager로 관리할 수 있는 Greengrass 구성 요소로 제공합니다. [Systems Manager 에이전트 구성 요소](systems-manager-agent-component.md)는 Systems Manager 에이전트 소프트웨어를 설치하고 코어 디바이스를 Systems Manager에 관리형 노드로 등록합니다. 이 페이지의 단계에 따라 사전 조건을 완료하고 Systems Manager 에이전트 구성 요소를 코어 디바이스 또는 코어 디바이스 그룹에 배포하세요.

**Topics**
+ [1단계: 일반 Systems Manager 설정 단계 완료](#setup-systems-manager)
+ [2단계: Systems Manager에 대한 IAM 서비스 역할 생성](#create-ssm-service-role)
+ [3단계: 토큰 교환 역할에 권한 추가](#update-token-exchange-role-ssm-agent)
+ [4단계: Systems Manager 에이전트 구성 요소 배포](#deploy-ssm-agent-component)
+ [5단계: Systems Manager를 사용하여 코어 디바이스 등록 확인](#verify-ssm-registration)

## 1단계: 일반 Systems Manager 설정 단계 완료
<a name="setup-systems-manager"></a>

아직 수행하지 않은 경우에 대한 일반 설정 단계를 완료합니다 AWS Systems Manager. 자세한 내용은 **AWS Systems Manager 사용 설명서의 [일반 Systems Manager 설정 단계 완료](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-edge-devices-setup-general.html)를 참조하세요.

## 2단계: Systems Manager에 대한 IAM 서비스 역할 생성
<a name="create-ssm-service-role"></a>

Systems Manager Agent는 AWS Identity and Access Management (IAM) 서비스 역할을 사용하여와 통신합니다 AWS Systems Manager. Systems Manager는 이 역할을 수임하여 각 코어 디바이스에서 Systems Manager 기능을 활성화합니다. 또한 Systems Manager Agent 구성 요소는 구성 요소를 배포할 때 이 역할을 사용하여 코어 디바이스를 Systems Manager 관리형 노드로 등록합니다. 아직 하지 않은 경우 Systems Manager 에이전트 구성 요소가 사용할 Systems Manager 서비스 역할을 생성합니다. 자세한 내용은 *AWS Systems Manager 사용 설명서*의 [엣지 디바이스에 대한 IAM 서비스 역할 생성](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-setting-up-edge-devices.html)을 참조하세요.

## 3단계: 토큰 교환 역할에 권한 추가
<a name="update-token-exchange-role-ssm-agent"></a>

Greengrass 코어 디바이스는 토큰 교환 역할이라는 IAM 서비스 역할을 사용하여 AWS 서비스와 상호 작용합니다. 각 코어 디바이스에는 [AWS IoT Greengrass 코어 소프트웨어를 설치할](install-greengrass-core-v2.md) 때 생성하는 토큰 교환 역할이 있습니다. Systems Manager 에이전트와 같은 많은 Greengrass 구성 요소에는 이 역할에 추가 권한이 필요합니다. Systems Manager 에이전트 구성 요소에는 [2단계: Systems Manager에 대한 IAM 서비스 역할 생성](#create-ssm-service-role)에서 생성한 역할을 사용할 수 있는 권한을 포함하는 다음 권한이 필요합니다.

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "iam:PassRole"
      ],
      "Effect": "Allow",
      "Resource": [
        "arn:aws:iam::account-id:role/SSMServiceRole"
      ]
    },
    {
      "Action": [
        "ssm:AddTagsToResource",
        "ssm:RegisterManagedInstance"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}
```

아직 그렇게 하지 않은 경우 코어 디바이스의 토큰 교환 역할에 이러한 권한을 추가하여 Systems Manager 에이전트가 작동할 수 있도록 합니다. 새 정책을 토큰 교환 역할에 추가하여 이 권한을 부여할 수 있습니다.

### 토큰 교환 역할에 권한을 추가하려면(콘솔)
<a name="update-token-exchange-role-ssm-agent-console"></a>

1. [IAM 콘솔](https://console.aws.amazon.com/iam) 탐색 메뉴에서 **역할**을 선택합니다.

1.  AWS IoT Greengrass 코어 소프트웨어를 설치할 때 토큰 교환 역할로 설정한 IAM 역할을 선택합니다. AWS IoT Greengrass 코어 소프트웨어를 설치할 때 토큰 교환 역할의 이름을 지정하지 않은 경우 라는 역할이 생성되었습니다`GreengrassV2TokenExchangeRole`.

1. **권한**에서 **권한 추가**, **정책 연결**을 차례로 선택합니다.

1. **정책 생성**을 선택합니다. 새 브라우저 탭에서 **정책 생성** 페이지가 열립니다.

1. **정책 생성** 페이지에서 다음을 수행합니다.

   1. **JSON**을 선택하여 JSON 편집기를 엽니다.

   1. 다음 정책을 JSON 편집기에 붙여넣습니다. *SSMServiceRole*을 [2단계: Systems Manager에 대한 IAM 서비스 역할 생성](#create-ssm-service-role)에서 생성한 서비스 역할의 이름으로 바꿉니다.

      ```
      {
        "Version": "2012-10-17",		 	 	 
        "Statement": [
          {
            "Action": [
              "iam:PassRole"
            ],
            "Effect": "Allow",
            "Resource": [
              "arn:aws:iam::account-id:role/SSMServiceRole"
            ]
          },
          {
            "Action": [
              "ssm:AddTagsToResource",
              "ssm:RegisterManagedInstance"
            ],
            "Effect": "Allow",
            "Resource": "*"
          }
        ]
      }
      ```

   1. **다음: 태그**를 선택합니다.

   1. **다음: 검토**를 선택합니다.

   1. 정책의 **이름**을 입력합니다(예: **GreengrassSSMAgentComponentPolicy**).

   1. **정책 생성**을 선택합니다.

   1. 토큰 교환 역할을 열어 둔 이전 브라우저 탭으로 전환합니다.

1. **권한 추가** 페이지에서 새로 고침 버튼을 선택한 다음 이전 단계에서 생성한 Greengrass Systems Manager 에이전트 정책을 선택합니다.

1. **정책 연결**을 선택합니다.

   이 토큰 교환 역할을 사용하는 코어 디바이스는 이제 Systems Manager 서비스와 상호 작용할 수 있는 권한이 있습니다.

### 토큰 교환 역할에 권한을 추가하려면(AWS CLI)
<a name="update-token-exchange-role-ssm-agent-cli"></a>

**Systems Manager를 사용할 수 있는 권한을 부여하는 정책을 추가하려면**

1. `ssm-agent-component-policy.json`이라는 파일을 만들고 다음 JSON을 파일로 복사합니다. *SSMServiceRole*을 [2단계: Systems Manager에 대한 IAM 서비스 역할 생성](#create-ssm-service-role)에서 생성한 서비스 역할의 이름으로 바꿉니다.

   ```
   {
     "Version": "2012-10-17",		 	 	 
     "Statement": [
       {
         "Action": [
           "iam:PassRole"
         ],
         "Effect": "Allow",
         "Resource": [
           "arn:aws:iam::account-id:role/SSMServiceRole"
         ]
       },
       {
         "Action": [
           "ssm:AddTagsToResource",
           "ssm:RegisterManagedInstance"
         ],
         "Effect": "Allow",
         "Resource": "*"
       }
     ]
   }
   ```

1. 다음 명령을 실행하여 `ssm-agent-component-policy.json`의 정책 문서에서 정책을 생성합니다.

------
#### [ Linux or Unix ]

   ```
   aws iam create-policy \
     --policy-name GreengrassSSMAgentComponentPolicy \
     --policy-document file://ssm-agent-component-policy.json
   ```

------
#### [ Windows Command Prompt (CMD) ]

   ```
   aws iam create-policy ^
     --policy-name GreengrassSSMAgentComponentPolicy ^
     --policy-document file://ssm-agent-component-policy.json
   ```

------
#### [ PowerShell ]

   ```
   aws iam create-policy `
     --policy-name GreengrassSSMAgentComponentPolicy `
     --policy-document file://ssm-agent-component-policy.json
   ```

------

   출력의 정책 메타데이터에서 정책 Amazon 리소스 이름(ARN)을 복사합니다. 다음 단계에서 이 ARN을 사용하여 이 정책을 코어 디바이스에 연결합니다.

1. 다음 명령을 실행하여 정책을 토큰 교환 역할에 연결합니다.
   + *GreengrassV2TokenExchangeRole*을 AWS IoT Greengrass 코어 소프트웨어를 설치할 때 지정한 토큰 교환 역할의 이름으로 바꿉니다. AWS IoT Greengrass 코어 소프트웨어를 설치할 때 토큰 교환 역할의 이름을 지정하지 않은 경우 라는 역할이 생성되었습니다`GreengrassV2TokenExchangeRole`.
   + 정책 ARN을 이전 단계의 ARN으로 바꿉니다.

------
#### [ Linux or Unix ]

   ```
   aws iam attach-role-policy \
     --role-name GreengrassV2TokenExchangeRole \
     --policy-arn arn:aws:iam::123456789012:policy/GreengrassSSMAgentComponentPolicy
   ```

------
#### [ Windows Command Prompt (CMD) ]

   ```
   aws iam attach-role-policy ^
     --role-name GreengrassV2TokenExchangeRole ^
     --policy-arn arn:aws:iam::123456789012:policy/GreengrassSSMAgentComponentPolicy
   ```

------
#### [ PowerShell ]

   ```
   aws iam attach-role-policy `
     --role-name GreengrassV2TokenExchangeRole `
     --policy-arn arn:aws:iam::123456789012:policy/GreengrassSSMAgentComponentPolicy
   ```

------

   명령의 출력이 없으면 성공한 것입니다. 이 토큰 교환 역할을 사용하는 코어 디바이스는 이제 Systems Manager 서비스와 상호 작용할 수 있는 권한이 있습니다.

## 4단계: Systems Manager 에이전트 구성 요소 배포
<a name="deploy-ssm-agent-component"></a>

Systems Manager 에이전트 구성 요소를 배포하고 구성하려면 다음 단계를 완료합니다. 구성 요소를 단일 코어 디바이스나 코어 디바이스 그룹에 배포할 수 있습니다.

### Systems Manager 에이전트 구성 요소를 배포하려면(콘솔)
<a name="deploy-ssm-agent-component-console"></a>

1. [AWS IoT Greengrass 콘솔](https://console.aws.amazon.com/greengrass) 탐색 메뉴에서 **구성 요소**를 선택합니다.

1. **구성 요소** 페이지의 **퍼블릭 구성 요소** 탭을 선택한 다음 **aws.greengrass.SystemsManagerAgent**를 선택합니다.

1. **aws.greengrass.SystemsManagerAgent** 페이지에서 **배포**를 선택합니다.

1. <a name="deploy-component-choose-deployment-step"></a>**배포에 추가**에서 수정할 기존 배포를 선택하거나 새 배포 생성을 선택하고 **다음**을 선택합니다.

1. <a name="deploy-component-choose-target-step"></a>새 배포 생성을 선택한 경우 배포의 대상 코어 디바이스 또는 사물 그룹을 선택합니다. **대상 지정** 페이지의 **배포 대상**에서 코어 디바이스 또는 사물 그룹을 선택하고 **다음**을 선택합니다.

1. **구성 요소 선택** 페이지에서 **aws.greengrass.SystemsManagerAgent** 구성 요소가 선택되었는지 확인하고 **다음**을 선택합니다.

1. **구성 요소 구성** 페이지에서 **aws.greengrass.SystemsManagerAgent**를 선택하고 다음을 수행합니다.

   1. **구성 요소 구성**을 선택합니다.

   1. **구성 aws.greengrass.SystemsManagerAgent** 모달에서 **구성 업데이트** 아래의 **병합할 구성**에 다음 구성 업데이트를 입력합니다. *SSMServiceRole*을 [2단계: Systems Manager에 대한 IAM 서비스 역할 생성](#create-ssm-service-role)에서 생성한 서비스 역할의 이름으로 바꿉니다.

      ```
      {
        "SSMRegistrationRole": "SSMServiceRole",
        "SSMOverrideExistingRegistration": false
      }
      ```
**참고**  <a name="deploy-ssm-agent-component-configuration-options"></a>
코어 디바이스가 하이브리드 활성화로 등록된 Systems Manager 에이전트를 이미 실행하고 있는 경우 `SSMOverrideExistingRegistration`을 `true`로 변경합니다. 이 파라미터는 Systems Manager 에이전트가 하이브리드 활성화를 사용하는 디바이스에서 이미 실행 중일 때 Systems Manager 에이전트 구성 요소가 코어 디바이스를 등록하는지 여부를 지정합니다.  
또한 태그(`SSMResourceTags`)를 지정하여 Systems Manager 에이전트 구성 요소가 코어 디바이스에 대해 생성하는 Systems Manager 관리형 노드에 추가할 수도 있습니다. 자세한 내용은 [Systems Manager Agent component configuration](systems-manager-agent-component.md#systems-manager-agent-component-configuration)을 참조하세요.

   1. **확인**을 선택하여 모달을 닫고 **다음**을 선택합니다.

1. <a name="deploy-component-configure-advanced-settings-step"></a>**고급 설정 구성** 페이지에서 기본 구성 설정을 유지하고 **다음**을 선택합니다.

1. <a name="deploy-component-review-and-deploy-step"></a>**검토** 페이지에서 **배포**를 선택합니다.

   배포를 완료하는 데 1분 정도 걸릴 수 있습니다.

### Systems Manager 에이전트 구성 요소를 배포하려면(AWS CLI)
<a name="deploy-ssm-agent-component-cli"></a>

Systems Manager 에이전트 구성 요소를 배포하려면 `components` 객체에 `aws.greengrass.SystemsManagerAgent`를 포함하는 배포 문서를 생성하고 구성 요소에 대한 구성 업데이트를 지정합니다. [배포 만들기](create-deployments.md)의 지침에 따라 새 배포를 생성하거나 기존 배포를 수정합니다.

다음의 부분 배포 문서 예제에서는 `SSMServiceRole`이라는 서비스 역할을 사용하도록 지정합니다. *SSMServiceRole*을 [2단계: Systems Manager에 대한 IAM 서비스 역할 생성](#create-ssm-service-role)에서 생성한 서비스 역할의 이름으로 바꿉니다.

```
{
  ...,
  "components": {
    ...,
    "aws.greengrass.SystemsManagerAgent": {
      "componentVersion": "1.0.0",
      "configurationUpdate": {
        "merge": "{\"SSMRegistrationRole\":\"SSMServiceRole\",\"SSMOverrideExistingRegistration\":false}"
      }
    }
  }
}
```

**참고**  <a name="deploy-ssm-agent-component-configuration-options"></a>
코어 디바이스가 하이브리드 활성화로 등록된 Systems Manager 에이전트를 이미 실행하고 있는 경우 `SSMOverrideExistingRegistration`을 `true`로 변경합니다. 이 파라미터는 Systems Manager 에이전트가 하이브리드 활성화를 사용하는 디바이스에서 이미 실행 중일 때 Systems Manager 에이전트 구성 요소가 코어 디바이스를 등록하는지 여부를 지정합니다.  
또한 태그(`SSMResourceTags`)를 지정하여 Systems Manager 에이전트 구성 요소가 코어 디바이스에 대해 생성하는 Systems Manager 관리형 노드에 추가할 수도 있습니다. 자세한 내용은 [Systems Manager Agent component configuration](systems-manager-agent-component.md#systems-manager-agent-component-configuration)을 참조하세요.

배포를 완료하는 데 몇 분 정도 걸릴 수 있습니다. AWS IoT Greengrass 서비스를 사용하여 배포 상태를 확인할 수 있으며 코어 AWS IoT Greengrass 소프트웨어 로그 및 Systems Manager 에이전트 구성 요소 로그를 확인하여 Systems Manager 에이전트가 성공적으로 실행되는지 확인할 수 있습니다. 자세한 내용은 다음을 참조하세요.
+ [배포 상태 확인](check-deployment-status.md)
+ [AWS IoT Greengrass 로그 모니터링](monitor-logs.md)
+ *AWS Systems Manager 사용 설명서*의 [Systems Manager 에이전트 로그 보기](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-agent-logs.html) 

배포가 실패하거나 Systems Manager 에이전트가 실행되지 않는 경우 각 코어 디바이스에서 배포 문제를 해결할 수 있습니다. 자세한 내용은 다음을 참조하세요.
+ [문제 해결 AWS IoT Greengrass V2](troubleshooting.md)
+ *AWS Systems Manager 사용 설명서*의 [Systems Manager 에이전트 문제 해결](https://docs.aws.amazon.com/systems-manager/latest/userguide/troubleshooting-ssm-agent.html) 

## 5단계: Systems Manager를 사용하여 코어 디바이스 등록 확인
<a name="verify-ssm-registration"></a>

Systems Manager 에이전트 구성 요소가 실행되면 코어 디바이스를 Systems Manager의 관리형 노드로 등록합니다. AWS IoT Greengrass 콘솔, Systems Manager 콘솔 및 Systems Manager API를 사용하여 코어 디바이스가 관리형 노드로 등록되었는지 확인할 수 있습니다. 관리형 노드는 AWS 콘솔 및 API의 일부분에서 인스턴스라고도 합니다.

### 코어 디바이스 등록을 확인하려면(AWS IoT Greengrass 콘솔)
<a name="verify-ssm-registration-greengrass-console"></a>

1. [AWS IoT Greengrass 콘솔](https://console.aws.amazon.com/greengrass) 탐색 메뉴에서 **코어 디바이스**를 선택합니다.

1. 확인할 코어 디바이스를 선택합니다.

1. 코어 디바이스의 세부 정보 페이지에서 **AWS Systems Manager 인스턴스** 속성을 찾습니다. 이 속성이 있고 Systems Manager 콘솔에 대한 링크를 표시하면 코어 디바이스가 관리형 노드로 등록된 것입니다.

   또한 **AWS Systems Manager ping 상태** 속성을 찾아 코어 디바이스에서 Systems Manager 에이전트의 상태를 확인할 수 있습니다. 상태가 **온라인**인 경우 Systems Manager를 사용하여 코어 디바이스를 관리할 수 있습니다.

### 코어 디바이스 등록을 확인하려면(Systems Manager 콘솔)
<a name="verify-ssm-registration-ssm-console"></a>

1. [Systems Manager 콘솔](https://console.aws.amazon.com/systems-manager) 탐색 메뉴에서 **Fleet Manager**를 선택합니다.

1. **관리형 노드**에서 다음을 수행합니다.

   1. **소스 유형**이 **AWS::IoT::Thing**인 필터를 추가합니다.

   1. **소스 ID**가 확인할 코어 디바이스의 이름인 필터를 추가합니다.

1. **관리형 노드** 테이블에서 코어 디바이스를 찾습니다. 코어 디바이스가 테이블에 있는 경우 관리형 노드로 등록된 것입니다.

   **Systems Manager 에이전트 ping 상태** 속성을 찾아 코어 디바이스에서 Systems Manager에이전트의 상태를 확인할 수도 있습니다. 상태가 **온라인**인 경우 Systems Manager를 사용하여 코어 디바이스를 관리할 수 있습니다.

### 코어 디바이스 등록을 확인하려면(AWS CLI)
<a name="verify-ssm-registration-cli"></a>
+ [DescribeInstanceInformation](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_DescribeInstanceInformation.html) 작업을 사용하여 지정하는 필터와 일치하는 관리형 노드 목록을 가져옵니다. 다음 명령을 실행하여 코어 디바이스가 관리형 노드로 등록되어 있는지 확인합니다. *MyGreengrassCore*를 확인할 코어 디바이스의 이름으로 바꿉니다.

  ```
  aws ssm describe-instance-information --filter Key=SourceIds,Values=MyGreengrassCore Key=SourceTypes,Values=AWS::IoT::Thing
  ```

  응답에는 필터와 일치하는 관리형 노드 목록이 포함됩니다. 목록에 관리형 노드가 포함된 경우 코어 디바이스는 관리형 노드로 등록된 것입니다. 응답에서 코어 디바이스의 관리형 노드에 대한 다른 정보도 찾을 수 있습니다. `PingStatus` 속성이 `Online`인 경우 Systems Manager를 사용하여 코어 디바이스를 관리할 수 있습니다.

코어 디바이스가 Systems Manager에서 관리형 노드로 등록되어 있는지 확인한 후 Systems Manager 콘솔 및 API를 사용하여 해당 코어 디바이스를 관리할 수 있습니다. Greengrass 코어 디바이스를 관리하는 데 사용할 수 있는 Systems Manager 기능에 대한 자세한 내용은 *AWS Systems Manager 사용 설명서*의 [Systems Manager 기능](https://docs.aws.amazon.com/systems-manager/latest/userguide/features.html)을 참조하세요.