

• AWS Systems Manager CloudWatch 대시보드는 2026년 4월 30일 이후에는 더 이상 사용할 수 없습니다. 고객은 Amazon CloudWatch 콘솔을 계속 사용하여 현재와 마찬가지로 Amazon CloudWatch 대시보드를 보고, 생성하고, 관리할 수 있습니다. 자세한 내용은 [Amazon CloudWatch 대시보드 설명서](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html)를 참조하세요.

# Distributor 패키지 설치 또는 업데이트
<a name="distributor-working-with-packages-deploy"></a>

AWS Systems Manager의 도구인 Distributor를 사용하여 AWS Systems Manager 관리형 노드에 패키지를 배포할 수 있습니다. 패키지를 배포하려면 AWS Management Console 또는 AWS Command Line Interface(AWS CLI)를 사용합니다. 명령당 한 패키지의 버전을 하나만 배포할 수 있습니다. 새 패키지를 설치하거나 기존 설치를 인플레이스 업데이트할 수 있습니다. 특정 버전을 배포하도록 선택하거나 항상 패키지의 최신 버전을 배포하도록 선택할 수 있습니다. AWS Systems Manager의 도구인 State Manager를 사용하여 패키지를 설치하는 것이 좋습니다. State Manager를 사용하면 관리형 노드에서 항상 최신 버전의 패키지를 실행하도록 할 수 있습니다.

**중요**  
Distributor를 사용하여 설치하는 패키지는 Distributor를 사용하여 제거해야 합니다. 그렇지 않으면 Systems Manager가 애플리케이션을 `INSTALLED` 상태로 등록하고, 이로 인해 의도하지 않은 결과가 발생할 수 있습니다.


| 기본 설정 | AWS Systems Manager 작업 | 추가 정보 | 
| --- | --- | --- | 
|  패키지를 즉시 설치하거나 업데이트합니다.  |  Run Command  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/systems-manager/latest/userguide/distributor-working-with-packages-deploy.html)  | 
|  설치에 항상 기본 버전이 포함되도록 정기적으로 패키지를 설치 또는 업데이트합니다.  |  State Manager  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/systems-manager/latest/userguide/distributor-working-with-packages-deploy.html)  | 
|  특정 태그 또는 태그 세트가 있는 새 관리형 노드에 패키지를 자동으로 설치합니다. 예를 들어 새 인스턴스에 Amazon CloudWatch 에이전트를 설치합니다.  |  State Manager  |  이렇게 하기 위한 한 가지 방법은 새 인스턴스에 태그를 적용한 다음 State Manager 연결에서 해당 태그를 대상으로 지정하는 것입니다. 그러면 State Manager 태그가 일치하는 인스턴스에서 연결에 패키지를 자동으로 설치합니다. [State Manager 연결에서의 대상 및 속도 제어 이해](systems-manager-state-manager-targets-and-rate-controls.md)을(를) 참조하세요.  | 

**Topics**
+ [콘솔을 사용하여 패키지 한 번 설치 또는 업데이트](#distributor-deploy-pkg-console)
+ [콘솔을 사용하여 패키지 설치 또는 업데이트 예약](#distributor-deploy-sm-pkg-console)
+ [AWS CLI를 사용한 패키지 한 번 설치](#distributor-deploy-pkg-cli)
+ [AWS CLI를 사용한 패키지 한 번 업데이트](#distributor-update-pkg-cli)
+ [AWS CLI를 사용한 패키지 설치 예약](#distributor-smdeploy-pkg-cli)
+ [AWS CLI를 사용한 패키지 업데이트 예약](#distributor-smupdate-pkg-cli)

## 콘솔을 사용하여 패키지 한 번 설치 또는 업데이트
<a name="distributor-deploy-pkg-console"></a>

AWS Systems Manager 콘솔을 사용하여 패키지를 한 번만 설치 또는 업데이트할 수 있습니다. 일회성 설치를 구성하는 경우 Distributor는 AWS Systems Manager의 도구인 [AWS Systems Manager Run Command](run-command.md)를 사용하여 설치를 수행합니다.

**콘솔을 사용하여 패키지를 한 번 설치하거나 업데이트하려면**

1. [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/)에서 AWS Systems Manager 콘솔을 엽니다.

1. 탐색 창에서 **Distributor**를 선택합니다.

1. Distributor 홈 페이지에서 설치할 패키지를 선택합니다.

1. **Install one time(한 번만 설치)**을 선택합니다.

   이 명령은 Run Command를 열며, 명령 문서 `AWS-ConfigureAWSPackage` 및 Distributor 패키지가 이미 선택되어 있습니다.

1. **문서 버전**에서 실행할 `AWS-ConfigureAWSPackage` 문서의 버전을 선택합니다.

1. **작업**에서 **설치**를 선택합니다.

1. **Installation type(설치 유형)**에서 다음 중 하나를 선택합니다.
   + **Uninstall and reinstall(제거 및 재설치)**: 패키지가 완전히 제거되었다가 다시 설치됩니다. 재설치가 완료될 때까지 애플리케이션을 사용할 수 없습니다.
   + [**인플레이스 업데이트(In-place update)**]: `update` 스크립트에서 제공한 지침에 따라 새 파일이나 변경된 파일만 기존 설치에 추가됩니다. 애플리케이션은 업데이트 프로세스 전체에서 사용할 수 있습니다. 이 옵션은 `AWSEC2Launch-Agent` 패키지를 제외한 AWS 게시 패키지에 대해 지원되지 않습니다.

1. **이름**에 선택한 패키지 이름이 입력되었는지 확인합니다.

1. (선택 사항) **버전**에 패키지의 버전 이름 값을 입력합니다. 이 필드를 비워 두면 Run Command에서는 Distributor에서 선택한 기본 버전을 설치합니다.

1. **대상** 섹션에서, 태그를 지정하거나, 수동으로 관리형 노드를 선택하거나, 리소스 그룹을 지정하여 이 작업을 실행할 인스턴스 또는 장치를 식별합니다.
**참고**  
목록에 관리형 노드가 표시되지 않은 경우에는 [관리형 노드 가용성 문제 해결](fleet-manager-troubleshooting-managed-nodes.md) 섹션을 참조하세요.

1. **Other parameters**(다른 파라미터):
   + **Comment**(설명)에 명령에 대한 정보를 입력합니다.
   + **제한 시간(초)**에서 전체 명령 실행이 실패할 때까지 시스템이 기다리는 시간을 초 단위로 지정합니다.

1. **속도 제어(Rate control)**에서:
   + **동시성(Concurrency)**에서 명령을 동시에 실행할 대상의 백분율 또는 개수를 지정합니다.
**참고**  
태그나 리소스 그룹을 지정하여 대상을 선택하였지만 대상으로 지정할 관리형 노드 수를 잘 모를 경우에는 백분율을 지정하여 동시에 문서를 실행할 수 있는 대상의 수를 제한합니다.
   + **오류 임계값**에서, 명령이 관리형 노드의 개수 또는 백분율에서 실패한 후 다른 대상에서 해당 명령의 실행을 중지할 시간을 지정합니다. 예를 들어 세 오류를 지정하면 네 번째 오류를 받았을 때 Systems Manager가 명령 전송을 중지합니다. 여전히 명령을 처리 중인 관리형 노드도 오류를 전송할 수 있습니다.

1. (선택 사항) **Output options**(출력 옵션)에서 명령 출력을 파일에 저장하려면 **Write command output to an S3 bucket**(S3 버킷에 명령 출력 쓰기) 상자를 선택합니다. 상자에 버킷 및 접두사(폴더) 이름을 입력합니다.
**참고**  
데이터를 S3 버킷에 쓰는 기능을 부여하는 S3 권한은 이 작업을 수행하는 IAM 사용자의 권한이 아니라 인스턴스에 할당된 인스턴스 프로파일(EC2 인스턴스용) 또는 IAM 서비스 역할(하이브리드 정품 인증 시스템)의 권한입니다. 자세한 내용은 [Systems Manager에 필요한 인스턴스 권한 구성](setup-instance-permissions.md)이나 [하이브리드 환경을 위한 IAM 서비스 역할 생성](hybrid-multicloud-service-role.md)을 참조하세요. 또한 지정된 S3 버킷이 다른 AWS 계정에 있는 경우 관리형 노드와 연결된 인스턴스 프로파일 또는 IAM 서비스 역할은 해당 버킷에 쓸 수 있는 권한이 있어야 합니다.

1. **SNS notifications**(SNS 알림) 섹션에서, 명령 실행 상태에 대한 알림이 전송되도록 하려면 **Enable SNS notifications**(SNS 알림 활성화) 확인란을 선택합니다.

   Run Command에 대한 Amazon SNS 알림 구성에 대한 자세한 내용은 [Amazon SNS 알림을 사용하여 Systems Manager 상태 변경 모니터링](monitoring-sns-notifications.md) 섹션을 참조하세요.

1. 패키지를 설치할 준비가 되면 [**실행(Run)**]을 선택합니다.

1. **Command status(명령 상태)** 영역은 실행 진행률을 보고합니다. 명령이 계속 진행 중인 경우 **Overall status(전체 상태)** 또는 **세부 상태** 열에 **성공** 또는 **실패**가 표시될 때까지 콘솔의 왼쪽 위 모서리에 있는 새로 고침 아이콘을 선택합니다.

1. **대상 및 출력(Targets and output)** 영역에서 관리형 노드 이름 옆에 있는 버튼을 선택한 후 **출력 보기(View output)**를 선택합니다.

   명령 출력 페이지에 명령 실행 결과가 표시됩니다.

1. (옵션) Amazon S3 버킷에 명령 출력을 쓰도록 선택한 경우 출력 로그 데이터를 볼 수 있도록 [**Amazon S3**]를 선택합니다.

## 콘솔을 사용하여 패키지 설치 또는 업데이트 예약
<a name="distributor-deploy-sm-pkg-console"></a>

AWS Systems Manager 콘솔을 사용하여 패키지 설치 또는 업데이트를 예약할 수 있습니다. 패키지 설치 또는 업데이트를 예약할 때 Distributor는 [AWS Systems Manager State Manager](systems-manager-state.md)을 사용해 설치 또는 업데이트합니다.

**콘솔을 사용하여 패키지 설치를 예약하려면**

1. [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/)에서 AWS Systems Manager 콘솔을 엽니다.

1. 탐색 창에서 **Distributor**를 선택합니다.

1. Distributor 홈 페이지에서 설치 또는 업데이트할 패키지를 선택합니다.

1. **Package(패키지)**에서 **Install on a schedule(일정에 따라 설치)**을 선택합니다.

   이 명령은 자동으로 생성된 새 연결에 대한 State Manager를 엽니다.

1. **이름**에 이름(예: **Deploy-test-agent-package**)을 입력합니다. 이는 선택 사항이며, 권장 사항은 아닙니다. 공백은 이름에 사용할 수 없습니다.

1. **문서** 목록에는 문서 이름 `AWS-ConfigureAWSPackage`가 이미 선택되어 있습니다.

1. **작업**에서 **설치**가 선택되어 있는지 확인합니다.

1. **Installation type(설치 유형)**에서 다음 중 하나를 선택합니다.
   + **Uninstall and reinstall(제거 및 재설치)**: 패키지가 완전히 제거되었다가 다시 설치됩니다. 재설치가 완료될 때까지 애플리케이션을 사용할 수 없습니다.
   + [**인플레이스 업데이트(In-place update)**]: `update` 스크립트에서 제공한 지침에 따라 새 파일이나 변경된 파일만 기존 설치에 추가됩니다. 애플리케이션은 업데이트 프로세스 전체에서 사용할 수 있습니다.

1. **이름**에 패키지 이름이 입력되었는지 확인합니다.

1. 최신 게시 버전 이외의 패키지 버전을 설치하려면 **버전**에 버전 식별자를 입력합니다.

1. **대상**에서 **이 계정의 모든 관리형 인스턴스 선택**, **태그 지정** 또는 **수동으로 인스턴스 선택**을 선택합니다. 태그를 사용하여 리소스 대상을 지정하는 경우 제공된 필드에 태그 키 및 태그 값을 입력합니다.
**참고**  
**이 계정의 모든 관리형 인스턴스 선택** 또는 **인스턴스 수동 선택** 중 하나를 통해 관리형 AWS IoT Greengrass 코어 디바이스를 선택할 수 있습니다.

1. **일정 지정**에서 정기적으로 연결을 실행하려면 **일정이 있을 때**를, 연결을 한 번만 실행하려면 **일정이 없을 때**를 선택합니다. 이러한 옵션에 대한 자세한 내용은 [Systems Manager에서 연결 작업](state-manager-associations.md) 섹션을 참조하세요. 컨트롤을 사용하여 `cron` 또는 연결에 대한 일정을 생성합니다.

1. **연결 생성**을 선택합니다.

1. **연결** 페이지에서 생성된 연결 옆에 있는 단추를 선택한 다음, **지금 연결 적용**을 선택합니다.

   State Manager는 지정된 대상에 대해 연결을 생성하고 즉시 실행합니다. 실행 중인 연결의 결과에 대한 자세한 내용은 이 설명서의 [Systems Manager에서 연결 작업](state-manager-associations.md) 섹션을 참조하세요.

**고급 옵션**, **비율 제어(Rate control)** 및 **출력 옵션(Output options)**에서의 옵션 작업에 대한 자세한 내용은 [Systems Manager에서 연결 작업](state-manager-associations.md) 섹션을 참조하세요.

## AWS CLI를 사용한 패키지 한 번 설치
<a name="distributor-deploy-pkg-cli"></a>

AWS CLI에서 **send-command**를 실행하여 Distributor 패키지를 한 번 설치할 수 있습니다. 패키지가 이미 설치되어 있으면 패키지가 제거되고 새 버전이 설치되는 동안 애플리케이션이 오프라인으로 전환됩니다.

**AWS CLI를 사용하여 패키지를 한 번 설치하려면**
+ AWS CLI에서 다음과 같은 명령을 실행합니다.

  ```
  aws ssm send-command \
      --document-name "AWS-ConfigureAWSPackage" \
      --instance-ids "instance-IDs" \
      --parameters '{"action":["Install"],"installationType":["Uninstall and reinstall"],"name":["package-name (in same account) or package-ARN (shared from different account)"]}'
  ```
**참고**  
`installationType`에 대한 기본 동작은 `Uninstall and reinstall`입니다. 전체 패키지를 설치할 때 이 명령에서 `"installationType":["Uninstall and reinstall"]`을 생략할 수 있습니다.

  다음은 예입니다.

  ```
  aws ssm send-command \
      --document-name "AWS-ConfigureAWSPackage" \
      --instance-ids "i-00000000000000" \
      --parameters '{"action":["Install"],"installationType":["Uninstall and reinstall"],"name":["ExamplePackage"]}'
  ```

**send-command** 명령과 함께 사용할 수 있는 다른 옵션에 대한 자세한 내용은 *AWS CLI Command Reference*의 AWS Systems Manager 섹션에 있는 [https://docs.aws.amazon.com/cli/latest/reference/ssm/send-command.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/send-command.html)를 참조하세요.

## AWS CLI를 사용한 패키지 한 번 업데이트
<a name="distributor-update-pkg-cli"></a>

AWS CLI에서 **send-command**을 실행하면 관련 애플리케이션을 오프라인으로 전환하지 않고 Distributor 패키지를 업데이트할 수 있습니다. 패키지의 새 파일이나 업데이트된 파일만 바뀝니다.

**AWS CLI를 사용하여 패키지를 한 번 업데이트하려면**
+ AWS CLI에서 다음과 같은 명령을 실행합니다.

  ```
  aws ssm send-command \
      --document-name "AWS-ConfigureAWSPackage" \
      --instance-ids "instance-IDs" \
      --parameters '{"action":["Install"],"installationType":["In-place update"],"name":["package-name (in same account) or package-ARN (shared from different account)"]}'
  ```
**참고**  
새 파일이나 변경된 파일을 추가할 때는 명령에 `"installationType":["In-place update"]`를 포함해야 합니다.

  다음은 예입니다.

  ```
  aws ssm send-command \
      --document-name "AWS-ConfigureAWSPackage" \
      --instance-ids "i-02573cafcfEXAMPLE" \
      --parameters '{"action":["Install"],"installationType":["In-place update"],"name":["ExamplePackage"]}'
  ```

**send-command** 명령과 함께 사용할 수 있는 다른 옵션에 대한 자세한 내용은 *AWS CLI Command Reference*의 AWS Systems Manager 섹션에 있는 [https://docs.aws.amazon.com/cli/latest/reference/ssm/send-command.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/send-command.html)를 참조하세요.

## AWS CLI를 사용한 패키지 설치 예약
<a name="distributor-smdeploy-pkg-cli"></a>

AWS CLI에서 **create-association**을 실행하여 일정에 따라 Distributor 패키지를 설치할 수 있습니다. `--name` 값 즉, 문서 이름은 항상 `AWS-ConfigureAWSPackage`입니다. 다음 명령은 키 `InstanceIds`를 사용하여 대상 관리형 노드를 지정합니다. 패키지가 이미 설치되어 있으면 패키지가 제거되고 새 버전이 설치되는 동안 애플리케이션이 오프라인으로 전환됩니다.

```
aws ssm create-association \
    --name "AWS-ConfigureAWSPackage" \
    --parameters '{"action":["Install"],"installationType":["Uninstall and reinstall"],"name":["package-name (in same account) or package-ARN (shared from different account)"]}' \
    --targets [{\"Key\":\"InstanceIds\",\"Values\":[\"instance-ID1\",\"instance-ID2\"]}]
```

**참고**  
`installationType`에 대한 기본 동작은 `Uninstall and reinstall`입니다. 전체 패키지를 설치할 때 이 명령에서 `"installationType":["Uninstall and reinstall"]`을 생략할 수 있습니다.

다음은 예입니다.

```
aws ssm create-association \
    --name "AWS-ConfigureAWSPackage" \
    --parameters '{"action":["Install"],"installationType":["Uninstall and reinstall"],"name":["Test-ConfigureAWSPackage"]}' \
    --targets [{\"Key\":\"InstanceIds\",\"Values\":[\"i-02573cafcfEXAMPLE\",\"i-0471e04240EXAMPLE\"]}]
```

**create-association** 명령과 함께 사용할 수 있는 다른 옵션에 대한 자세한 내용은 *AWS CLI Command Reference*의 AWS Systems Manager 섹션에 있는 [https://docs.aws.amazon.com/cli/latest/reference/ssm/create-association.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/create-association.html)를 참조하세요.

## AWS CLI를 사용한 패키지 업데이트 예약
<a name="distributor-smupdate-pkg-cli"></a>

AWS CLI에서 **create-association**을 실행하면 관련 애플리케이션을 오프라인으로 전환하지 않고 일정에 따라 Distributor 패키지를 업데이트할 수 있습니다. 패키지의 새 파일이나 업데이트된 파일만 바뀝니다. `--name` 값 즉, 문서 이름은 항상 `AWS-ConfigureAWSPackage`입니다. 다음 명령은 키 `InstanceIds`를 사용하여 대상 인스턴스를 지정합니다.

```
aws ssm create-association \
    --name "AWS-ConfigureAWSPackage" \
    --parameters '{"action":["Install"],"installationType":["In-place update"],"name":["package-name (in same account) or package-ARN (shared from different account)"]}' \
    --targets [{\"Key\":\"InstanceIds\",\"Values\":[\"instance-ID1\",\"instance-ID2\"]}]
```

**참고**  
새 파일이나 변경된 파일을 추가할 때는 명령에 `"installationType":["In-place update"]`를 포함해야 합니다.

다음은 예입니다.

```
aws ssm create-association \
    --name "AWS-ConfigureAWSPackage" \
    --parameters '{"action":["Install"],"installationType":["In-place update"],"name":["Test-ConfigureAWSPackage"]}' \
    --targets [{\"Key\":\"InstanceIds\",\"Values\":[\"i-02573cafcfEXAMPLE\",\"i-0471e04240EXAMPLE\"]}]
```

**create-association** 명령과 함께 사용할 수 있는 다른 옵션에 대한 자세한 내용은 *AWS CLI Command Reference*의 AWS Systems Manager 섹션에 있는 [https://docs.aws.amazon.com/cli/latest/reference/ssm/create-association.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/create-association.html)를 참조하세요.