

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

# 자습서: AWS CLI를 사용한 유지 관리 기간 생성 및 구성
<a name="maintenance-windows-cli-tutorials-create"></a>

이 튜토리얼은 AWS Command Line Interface(AWS CLI)를 사용하여 유지 관리 기간 및 해당하는 대상과 태스크를 생성 및 구성하는 방법을 보여줍니다. 자습서의 주요 경로는 간단한 단계로 구성됩니다. 단일 유지 관리 기간을 만들고 단일 대상을 식별하고 유지 관리 기간을 실행할 간단한 작업을 설정합니다. 또한 더 복잡한 시나리오를 시도하는 데 사용할 수 있는 정보를 제공합니다.

이 튜토리얼의 단계를 수행하면서 *빨간색* 기울임꼴 텍스트의 값을 원하는 옵션 및 ID로 바꿉니다. 예를 들어 유지 관리 기간 ID *mw-0c50858d01EXAMPLE*과 인스턴스 ID *i-02573cafcfEXAMPLE*을 생성하는 리소스의 ID로 바꿉니다.

**Topics**
+ [1단계: AWS CLI를 사용한 유지 관리 기간 생성](mw-cli-tutorial-create-mw.md)
+ [2단계: AWS CLI를 사용하여 유지 관리 기간에 대상 노드 등록](mw-cli-tutorial-targets.md)
+ [3단계: AWS CLI를 사용하여 유지 관리 기간에 태스크 등록](mw-cli-tutorial-tasks.md)

# 1단계: AWS CLI를 사용한 유지 관리 기간 생성
<a name="mw-cli-tutorial-create-mw"></a>

이 단계에서는 유지 관리 기간을 생성하고 기본 옵션(예: 이름, 일정 및 기간)을 지정합니다. 이후 단계에서는 업데이트될 인스턴스와 실행될 작업을 선택합니다.

이 예제에서는 5분마다 실행되는 유지 관리 기간을 생성합니다. 일반적으로 유지 관리 기간을 이렇게 자주 실행하지는 않습니다. 그러나 이 속도로 설정하면 튜토리얼 결과를 빠르게 볼 수 있습니다. 태스크가 성공적으로 실행된 후 더 긴 주기로 변경하는 방법을 알려 드리겠습니다.

**참고**  
유지 관리 기간에 대한 다양한 스케줄 관련 옵션이 서로 관련되는 방법에 대한 자세한 내용은 [유지 관리 기간 예약 및 유효 기간 옵션](maintenance-windows-schedule-options.md) 섹션을 참조하세요.  
`--schedule` 옵션 작업에 대한 자세한 내용은 [참조: Systems Manager용 Cron 및 Rate 표현식](reference-cron-and-rate-expressions.md) 섹션을 참조하세요.

**AWS CLI를 사용하여 유지 관리 기간을 생성하려면**

1. AWS Command Line Interface(AWS CLI)를 열고 로컬 시스템에서 다음 명령을 실행하여 다음을 수행하는 유지 관리 기간을 생성합니다.
   + 필요한 경우 최대 2시간 동안 5분마다 실행합니다.
   + 유지 관리 기간이 끝난 후 1시간 이내에 새 태스크가 시작되지 않도록 합니다.
   + 연결되지 않은 대상(유지 관리 기간에 등록하지 않은 인스턴스)을 허용합니다.
   + 사용자 지정 태그 사용을 통해 생성자가 자습서에서 사용하려는 목적임을 명시합니다.

------
#### [ Linux & macOS ]

   ```
   aws ssm create-maintenance-window \
       --name "My-First-Maintenance-Window" \
       --schedule "rate(5 minutes)" \
       --duration 2 \
       --cutoff 1 \
       --allow-unassociated-targets \
       --tags "Key=Purpose,Value=Tutorial"
   ```

------
#### [ Windows ]

   ```
   aws ssm create-maintenance-window ^
       --name "My-First-Maintenance-Window" ^
       --schedule "rate(5 minutes)" ^
       --duration 2 ^
       --cutoff 1 ^
       --allow-unassociated-targets ^
       --tags "Key"="Purpose","Value"="Tutorial"
   ```

------

   시스템은 다음과 유사한 정보를 반환합니다.

   ```
   {
      "WindowId":"mw-0c50858d01EXAMPLE"
   }
   ```

1. 이제 다음 명령을 실행하여 이 유지 관리 기간 및 계정에 이미 존재하는 다른 모든 유지 관리 기간에 대한 세부 정보를 확인합니다.

   ```
   aws ssm describe-maintenance-windows
   ```

   시스템은 다음과 유사한 정보를 반환합니다.

   ```
   {
      "WindowIdentities":[
         {
               "WindowId": "mw-0c50858d01EXAMPLE",
               "Name": "My-First-Maintenance-Window",
               "Enabled": true,
               "Duration": 2,
               "Cutoff": 1,
               "NextExecutionTime": "2019-05-11T16:46:16.991Z"
         }
      ]
   }
   ```

계속해서 [2단계: AWS CLI를 사용하여 유지 관리 기간에 대상 노드 등록](mw-cli-tutorial-targets.md)로 이동하세요.

# 2단계: AWS CLI를 사용하여 유지 관리 기간에 대상 노드 등록
<a name="mw-cli-tutorial-targets"></a>

이 단계에서는 대상을 새 유지 관리 기간에 등록합니다. 이때 유지 관리 기간을 실행할 때 업데이트할 노드를 지정합니다.

노드 ID를 사용하여 여러 노드를 한 번에 등록하는 예제와 태그를 사용하여 여러 노드를 식별하는 예제, 그리고 리소스 그룹을 대상으로 지정하는 예제는 [예제: 유지 관리 기간에 대상 등록](mw-cli-tutorial-targets-examples.md) 섹션을 참조하세요.

**참고**  
[Maintenance Windows 튜토리얼 사전 조건](maintenance-windows-tutorials.md)에서 설명한 대로 이 단계에서 사용할 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스를 이미 생성했어야 합니다.

**AWS CLI를 사용하여 유지 관리 기간에 대상 노드를 등록하려면**

1. 로컬 시스템에서 다음 명령을 실행합니다. 각 *example resource placeholder*를 사용자의 정보로 바꿉니다.

------
#### [ Linux & macOS ]

   ```
   aws ssm register-target-with-maintenance-window \
       --window-id "mw-0c50858d01EXAMPLE" \
       --resource-type "INSTANCE" \
       --target "Key=InstanceIds,Values=i-02573cafcfEXAMPLE"
   ```

------
#### [ Windows ]

   ```
   aws ssm register-target-with-maintenance-window ^
       --window-id "mw-0c50858d01EXAMPLE" ^
       --resource-type "INSTANCE" ^
       --target "Key=InstanceIds,Values=i-02573cafcfEXAMPLE"
   ```

------

   시스템은 다음과 유사한 정보를 반환합니다.

   ```
   {
      "WindowTargetId":"e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE"
   }
   ```

1. 이제 로컬 시스템에서 다음 명령을 실행하여 유지 관리 기간 대상의 세부 정보를 볼 수 있습니다.

------
#### [ Linux & macOS ]

   ```
   aws ssm describe-maintenance-window-targets \
       --window-id "mw-0c50858d01EXAMPLE"
   ```

------
#### [ Windows ]

   ```
   aws ssm describe-maintenance-window-targets ^
       --window-id "mw-0c50858d01EXAMPLE"
   ```

------

   시스템은 다음과 유사한 정보를 반환합니다.

   ```
   {
       "Targets": [
           {
               "WindowId": "mw-0c50858d01EXAMPLE",
               "WindowTargetId": "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE",
               "ResourceType": "INSTANCE",
               "Targets": [
                   {
                       "Key": "InstanceIds",
                       "Values": [
                           "i-02573cafcfEXAMPLE"
                       ]
                   }
               ]
           }
       ]
   }
   ```

계속해서 [3단계: AWS CLI를 사용하여 유지 관리 기간에 태스크 등록](mw-cli-tutorial-tasks.md)로 이동하세요.

# 예제: 유지 관리 기간에 대상 등록
<a name="mw-cli-tutorial-targets-examples"></a>

[2단계: AWS CLI를 사용하여 유지 관리 기간에 대상 노드 등록](mw-cli-tutorial-targets.md)에 예시된 것처럼 노드 ID를 사용하여 단일 노드를 대상으로 등록할 수 있습니다. 또한 이 페이지의 명령 형식을 사용하여 하나 이상의 노드를 대상으로 등록할 수 있습니다.

일반적으로 유지 관리 기간 대상으로 사용할 노드를 식별하는 방법은 개별 노드 지정과 리소스 태그 사용 두 가지입니다. 리소스 태그를 사용하는 방법은 예제 2-3과 같이 더 많은 옵션이 제공됩니다.

또한 리소스 그룹을 1개 이상 유지 관리 기간 대상으로 지정할 수 있습니다. 리소스 그룹에는 노드를 비롯해 지원되는 AWS 리소스 유형이 다양하게 포함됩니다. 그런 다음 예제 4와 5에서는 리소스 그룹을 유지 관리 기간 대상에 추가하는 방법에 대해서 알아보겠습니다.

**참고**  
단일 유지 관리 기간 태스크가 여러 대상에 등록된 경우 해당 태스크 호출은 병렬이 아닌 순차적으로 발생합니다. 태스크를 여러 대상에서 동시에 실행해야 하는 경우 각 대상에 대해 태스크를 개별적으로 등록하고 각 태스크에 동일한 우선순위 수준을 할당합니다.

Resource Groups 생성 및 관리에 대한 자세한 내용은 *AWS Resource Groups 사용 설명서*의 [Resource Groups란?](https://docs.aws.amazon.com/ARG/latest/userguide/resource-groups.html) 및 *AWS 뉴스 블로그*의 [리소스 그룹 및 AWS를 위한 태깅](https://aws.amazon.com/blogs/aws/resource-groups-and-tagging/)을 참조하세요.

다음 예제에 지정된 경우 이외에 AWS Systems Manager의 도구인 Maintenance Windows에 대한 할당량에 대한 자세한 내용은 *Amazon Web Services 일반 참조*의 [Systems Manager 서비스 할당량](https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)을 참조하세요.

## 예 1: 노드 ID를 사용하여 여러 대상 등록
<a name="mw-target-example-1"></a>

로컬 시스템에서 다음 명령을 실행하여 여러 노드를 해당 노드 ID를 통해 대상으로 등록합니다. 각 *example resource placeholder*를 사용자의 정보로 바꿉니다.

------
#### [ Linux & macOS ]

```
aws ssm register-target-with-maintenance-window \
    --window-id "mw-0c50858d01EXAMPLE" \
    --resource-type "INSTANCE" \
    --target "Key=InstanceIds,Values=i-02573cafcfEXAMPLE,i-0471e04240EXAMPLE,i-07782c72faEXAMPLE"
```

------
#### [ Windows ]

```
aws ssm register-target-with-maintenance-window ^
    --window-id "mw-0c50858d01EXAMPLE ^
    --resource-type "INSTANCE" ^
    --target "Key=InstanceIds,Values=i-02573cafcfEXAMPLE,i-0471e04240EXAMPLE,i-07782c72faEXAMPLE
```

------

**권장 용도**: 공통 노드 태그를 공유하지 *않는* 고유한 노드 그룹을 처음 유지 관리 기간에 등록할 때 매우 유용합니다.

**할당량:** 각 유지 관리 기간 대상에 최대 50개까지 노드를 지정할 수 있습니다.

## 예 2: 노드에 적용된 리소스 태그를 사용하여 대상 등록
<a name="mw-target-example-2"></a>

로컬 시스템에서 다음 명령을 실행하여 사용자가 할당한 키 값 페어로 모두 태그 지정된 노드를 등록합니다. 각 *example resource placeholder*를 사용자의 정보로 바꿉니다.

------
#### [ Linux & macOS ]

```
aws ssm register-target-with-maintenance-window \
    --window-id "mw-0c50858d01EXAMPLE" \
    --resource-type "INSTANCE" \
    --target "Key=tag:Region,Values=East"
```

------
#### [ Windows ]

```
aws ssm register-target-with-maintenance-window ^
    --window-id "mw-0c50858d01EXAMPLE" ^
    --resource-type "INSTANCE" ^
    --target "Key=tag:Region,Values=East"
```

------

**권장 용도**: 공통 노드 태그를 공유*하는* 고유한 노드 그룹을 처음 유지 관리 기간에 등록할 때 매우 유용합니다.

**할당량:** 각 대상에 최대 5개까지 키-값 페어를 지정할 수 있습니다. 2개 이상의 키 값 페어를 지정하는 경우 대상 그룹에 포함되도록 지정한 *모든* 태그 키 및 값으로 노드에 태그를 지정해야 합니다.

**참고**  
태그-키 `Patch Group` 또는 `PatchGroup`으로 노드 그룹에 태그를 지정하고 노드에 `my-patch-group` 등의 공통 키 값을 할당할 수 있습니다. [EC2 인스턴스 메타데이터에 태그를 허용](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#allow-access-to-tags-in-IMDS)한 경우 `PatchGroup`(공백 없음)을 사용해야 합니다. Systems Manager의 도구인 Patch Manager로 노드의 `Patch Group` 또는 `PatchGroup` 키를 평가하여 노드에 적용되는 패치 기준을 결정할 수 있습니다. 태스크에서 `AWS-RunPatchBaseline` SSM 문서(또는 기존 `AWS-ApplyPatchBaseline` SSM 문서)를 실행하는 경우 대상을 유지 관리 기간에 등록할 때 동일한 `Patch Group` 또는 `PatchGroup` 키-값 페어를 지정할 수 있습니다. 예를 들면 `--target "Key=tag:PatchGroup,Values=my-patch-group`입니다. 이렇게 하면 유지 관리 기간을 사용하여 이미 동일한 패치 기준에 연결된 노드 그룹에 대한 패치를 업데이트할 수 있습니다. 자세한 내용은 [패치 그룹](patch-manager-patch-groups.md) 섹션을 참조하세요.

## 예제 3: 태그 키 그룹(태그 값 없음)을 사용하여 대상 등록
<a name="mw-target-example-3"></a>

로컬 시스템에서 다음 명령을 실행하여 키 값 여부와 상관없이 모두 하나 이상의 태그가 지정된 노드를 등록합니다. 각 *example resource placeholder*를 사용자의 정보로 바꿉니다.

------
#### [ Linux & macOS ]

```
aws ssm register-target-with-maintenance-window \
    --window-id "mw-0c50858d01EXAMPLE" \
    --resource-type "INSTANCE" \
    --target "Key=tag-key,Values=Name,Instance-Type,CostCenter"
```

------
#### [ Windows ]

```
aws ssm register-target-with-maintenance-window ^
    --window-id "mw-0c50858d01EXAMPLE" ^
    --resource-type "INSTANCE" ^
    --target "Key=tag-key,Values=Name,Instance-Type,CostCenter"
```

------

**권장 용도**: 단순한 단일 태그 키 또는 단일 태그 키 값 페어가 아닌 여러 태그 *키*(값 없음)를 지정하여 노드를 대상으로 지정하려는 경우 유용합니다.

**할당량:** 각 대상에 최대 5개까지 태그-키를 지정할 수 있습니다. 한 개 이상의 태그 키를 지정하는 경우, 대상 그룹에 포함되도록 지정한 *모든* 태그 키로 노드에 태그를 지정해야 합니다.

## 예제 4: 리소스 그룹 이름을 사용한 대상 등록
<a name="mw-target-example-4"></a>

로컬 시스템에서 다음 명령을 실행하여 포함된 리소스 유형에 상관없이 지정된 리소스 그룹을 등록합니다. *mw-0c50858d01EXAMPLE*을 사용자의 정보로 바꿉니다. 유지 관리 기간에 할당할 태스크가 리소스 그룹에 추가한 리소스 유형에서 유효하지 않을 경우에는 시스템이 오류를 보고할 수 있습니다. 이러한 오류가 발생하더라도 리소스 유형이 지원되는 작업은 계속해서 실행됩니다.

------
#### [ Linux & macOS ]

```
aws ssm register-target-with-maintenance-window \
    --window-id "mw-0c50858d01EXAMPLE" \
    --resource-type "RESOURCE_GROUP" \
    --target "Key=resource-groups:Name,Values=MyResourceGroup"
```

------
#### [ Windows ]

```
aws ssm register-target-with-maintenance-window ^
    --window-id "mw-0c50858d01EXAMPLE" ^
    --resource-type "RESOURCE_GROUP" ^
    --target "Key=resource-groups:Name,Values=MyResourceGroup"
```

------

**권장 용도**: 유지 관리 기간에서 모든 리소스 유형의 대상 지정 여부를 평가하지 않고 리소스 그룹을 대상으로 빠르게 지정할 때, 혹은 리소스 그룹에 작업이 유효한 리소스 유형만 포함되어 있다는 사실을 알고 있을 때 유용합니다.

**할당량:** 대상으로 오직 하나의 리소스만 지정할 수 있습니다.

## 예제 5: 리소스 그룹의 리소스 유형을 필터링하여 대상 등록
<a name="mw-target-example-5"></a>

로컬 시스템에서 다음 명령을 실행하여 지정한 리소스 그룹에 속해 있는 일부 리소스 유형만 등록합니다. *mw-0c50858d01EXAMPLE*을 사용자의 정보로 바꿉니다. 이 옵션을 사용하면 리소스 그룹에 속한 리소스 유형에 대해 작업을 추가하더라도 리소스 유형을 명시적으로 필터에 추가하지 않았다면 작업이 실행되지 않습니다.

------
#### [ Linux & macOS ]

```
aws ssm register-target-with-maintenance-window \
    --window-id "mw-0c50858d01EXAMPLE" \
    --resource-type "RESOURCE_GROUP" \
    --target "Key=resource-groups:Name,Values=MyResourceGroup" \
    "Key=resource-groups:ResourceTypeFilters,Values=AWS::EC2::Instance,AWS::ECS::Cluster"
```

------
#### [ Windows ]

```
aws ssm register-target-with-maintenance-window ^
    --window-id "mw-0c50858d01EXAMPLE" ^
    --resource-type "RESOURCE_GROUP" ^
    --target "Key=resource-groups:Name,Values=MyResourceGroup" ^
    "Key=resource-groups:ResourceTypeFilters,Values=AWS::EC2::Instance,AWS::ECS::Cluster"
```

------

**권장 용도**: 유지 관리 기간에 작업을 실행할 수 있는 AWS 리소스 유형을 엄격하게 제어하려고 할 때, 혹은 리소스 그룹에 다수의 리소스 유형이 포함되어 있어서 유지 관리 기간 로그에서 불필요한 오류 보고서를 피하고 싶을 때 유용합니다.

**할당량:** 대상으로 오직 하나의 리소스만 지정할 수 있습니다.

# 3단계: AWS CLI를 사용하여 유지 관리 기간에 태스크 등록
<a name="mw-cli-tutorial-tasks"></a>

튜토리얼의 이 단계에서는 Linux용 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에서 `df` 명령을 실행하는 AWS Systems Manager Run Command 태스크를 등록합니다. 이 표준 Linux 명령의 결과는 사용 가능한 공간의 양과 인스턴스의 디스크 파일 시스템에서 사용되는 공간의 양을 표시합니다.

-또는-

예를 들어 Linux 대신 Windows Server용 Amazon EC2 인스턴스를 대상으로 지정하는 경우 다음 명령에서 **df**를 **ipconfig**로 바꿉니다. 이 명령의 출력에는 대상 인스턴스의 어댑터에 대한 IP 주소, 서브넷 마스크 및 기본 게이트웨이 세부 정보가 나열됩니다.

다른 태스크 유형을 등록할 준비가 되었거나 사용 가능한 Systems Manager Run Command 옵션 중 더 많은 옵션을 사용할 준비가 되면 [예제: 유지 관리 기간에 작업 등록](mw-cli-register-tasks-examples.md) 섹션을 참조하세요. 여기서는 보다 광범위한 실제 시나리오를 계획하는 데 도움이 되는 네 가지 작업 유형 및 가장 중요한 옵션에 대한 자세한 정보를 제공합니다.

**유지 관리 기간에 작업을 등록하려면**

1. 로컬 시스템에서 다음 명령을 실행합니다. 각 *example resource placeholder*를 사용자의 정보로 바꿉니다. 로컬 Windows 시스템에서 실행할 버전에는 명령줄 도구에서 명령을 실행하는 데 필요한 이스케이프 문자("/")가 포함됩니다.

------
#### [ Linux & macOS ]

   ```
   aws ssm register-task-with-maintenance-window \
       --window-id mw-0c50858d01EXAMPLE \
       --task-arn "AWS-RunShellScript" \
       --max-concurrency 1 --max-errors 1 \
       --priority 10 \
       --targets "Key=InstanceIds,Values=i-0471e04240EXAMPLE" \
       --task-type "RUN_COMMAND" \
       --task-invocation-parameters '{"RunCommand":{"Parameters":{"commands":["df"]}}}'
   ```

------
#### [ Windows ]

   ```
   aws ssm register-task-with-maintenance-window ^
       --window-id mw-0c50858d01EXAMPLE ^
       --task-arn "AWS-RunShellScript" ^
       --max-concurrency 1 --max-errors 1 ^
       --priority 10 ^
       --targets "Key=InstanceIds,Values=i-02573cafcfEXAMPLE" ^
       --task-type "RUN_COMMAND" ^
       --task-invocation-parameters={\"RunCommand\":{\"Parameters\":{\"commands\":[\"df\"]}}}
   ```

------

   시스템은 다음과 유사한 정보를 반환합니다.

   ```
   {
       "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE"
   }
   ```

1. 이제 다음 명령을 실행하여 생성한 유지 관리 기간 작업에 대한 세부 정보를 봅니다.

------
#### [ Linux & macOS ]

   ```
   aws ssm describe-maintenance-window-tasks \
       --window-id mw-0c50858d01EXAMPLE
   ```

------
#### [ Windows ]

   ```
   aws ssm describe-maintenance-window-tasks ^
       --window-id mw-0c50858d01EXAMPLE
   ```

------

1. 시스템은 다음과 유사한 정보를 반환합니다.

   ```
   {
       "Tasks": [
           {
               "WindowId": "mw-0c50858d01EXAMPLE",
               "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE",
               "TaskArn": "AWS-RunShellScript",
               "Type": "RUN_COMMAND",
               "Targets": [
                   {
                       "Key": "InstanceIds",
                       "Values": [
                           "i-02573cafcfEXAMPLE"
                       ]
                   }
               ],
               "TaskParameters": {},
               "Priority": 10,
               "ServiceRoleArn": "arn:aws:iam::123456789012:role/MyMaintenanceWindowServiceRole",
               "MaxConcurrency": "1",
               "MaxErrors": "1"
           }
       ]
   }
   ```

1. [1단계: AWS CLI를 사용한 유지 관리 기간 생성](mw-cli-tutorial-create-mw.md) 단원에서 지정한 일정에 따라 작업을 실행할 시간이 될 때까지 기다립니다. 예를 들어 **--schedule "rate(5 minutes)"**를 지정한 경우 5분 동안 기다립니다. 기다린 후 다음 명령을 실행하여 이 작업에 대해 발생한 모든 실행에 대한 정보를 봅니다.

------
#### [ Linux & macOS ]

   ```
   aws ssm describe-maintenance-window-executions \
       --window-id mw-0c50858d01EXAMPLE
   ```

------
#### [ Windows ]

   ```
   aws ssm describe-maintenance-window-executions ^
       --window-id mw-0c50858d01EXAMPLE
   ```

------

   시스템은 다음과 유사한 정보를 반환합니다.

   ```
   {
       "WindowExecutions": [
           {
               "WindowId": "mw-0c50858d01EXAMPLE",
               "WindowExecutionId": "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE",
               "Status": "SUCCESS",
               "StartTime": 1557593493.096,
               "EndTime": 1557593498.611
           }
       ]
   }
   ```

**작은 정보**  
태스크가 성공적으로 실행되면 유지 관리 기간이 실행되는 속도를 줄일 수 있습니다. 예를 들어 빈도를 주 1회로 줄이려면 다음 명령을 실행합니다. *mw-0c50858d01EXAMPLE*을 사용자의 정보로 바꿉니다.  

```
aws ssm update-maintenance-window \
    --window-id mw-0c50858d01EXAMPLE \
    --schedule "rate(7 days)"
```

```
aws ssm update-maintenance-window ^
    --window-id mw-0c50858d01EXAMPLE ^
    --schedule "rate(7 days)"
```
유지 관리 기간 일정 관리에 대한 자세한 내용은 [참조: Systems Manager용 Cron 및 Rate 표현식](reference-cron-and-rate-expressions.md) 및 [유지 관리 기간 예약 및 유효 기간 옵션](maintenance-windows-schedule-options.md) 섹션을 참조하세요.  
AWS Command Line Interface(AWS CLI)를 사용하여 유지 관리 기간을 수정하는 방법에 대한 자세한 내용은 [자습서: AWS CLI를 사용한 유지 관리 기간 업데이트](maintenance-windows-cli-tutorials-update.md) 섹션을 참조하세요.

AWS CLI 명령을 실행하여 유지 관리 기간 작업 및 실행에 대한 자세한 내용을 보는 연습은 [자습서: AWS CLI를 사용하여 태스크 및 태크스 실행에 대한 정보 보기](mw-cli-tutorial-task-info.md) 섹션을 참조하세요.

**자습서 명령 출력 액세스**  
유지 관리 기간 태스크 실행과 관련된 Run Command 명령의 *출력*을 보기 위해 AWS CLI를 사용하는 것은 이 튜토리얼에서 다루지 않습니다.

그러나 AWS CLI를 사용하여 이 데이터를 볼 수 있습니다. 명령 출력을 저장하는 유지 관리 기간을 구성한 경우 Systems Manager 콘솔 또는 Amazon Simple Storage Service(Amazon S3) 버킷에 저장된 로그 파일에서 출력을 볼 수도 있습니다. Linux용 EC2 인스턴스에서는 **df** 명령의 출력이 다음과 유사합니다.

```
Filesystem 1K-blocks Used Available Use% Mounted on

devtmpfs 485716 0 485716 0% /dev

tmpfs 503624 0 503624 0% /dev/shm

tmpfs 503624 328 503296 1% /run

tmpfs 503624 0 503624 0% /sys/fs/cgroup

/dev/xvda1 8376300 1464160 6912140 18% /
```

Windows Server용 EC2 인스턴스에 대한 **ipconfig** 명령의 출력은 다음과 유사합니다.

```
Windows IP Configuration


Ethernet adapter Ethernet 2:

   Connection-specific DNS Suffix  . : example.com
   IPv4 Address. . . . . . . . . . . : 10.24.34.0/23
   Subnet Mask . . . . . . . . . . . : 255.255.255.255
   Default Gateway . . . . . . . . . : 0.0.0.0

Ethernet adapter Ethernet:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . : abc1.wa.example.net

Wireless LAN adapter Local Area Connection* 1:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :

Wireless LAN adapter Wi-Fi:

   Connection-specific DNS Suffix  . :
   Link-local IPv6 Address . . . . . : fe80::100b:c234:66d6:d24f%4
   IPv4 Address. . . . . . . . . . . : 192.0.2.0
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : 192.0.2.0

Ethernet adapter Bluetooth Network Connection:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :
```

# 예제: 유지 관리 기간에 작업 등록
<a name="mw-cli-register-tasks-examples"></a>

[유지 관리 기간에 태스크 등록](mw-cli-tutorial-tasks.md)에서 설명한 것처럼 AWS Command Line Interface(AWS CLI)를 사용하여 유지 관리 기간에 AWS Systems Manager의 도구인 Run Command의 태스크를 등록할 수 있습니다. 아래에 설명된 대로 Systems Manager Automation 워크플로용 태스크, AWS Lambda 함수 및 AWS Step Functions 태스크를 등록할 수도 있습니다.

**참고**  
유지 관리 기간 Run Command 유형 태스크에 대해 하나 이상의 대상을 지정합니다. 태스크에 따라 대상은 다른 유지 관리 기간 태스크 유형(Automation, AWS Lambda 및 AWS Step Functions)에 대해 옵션입니다. 대상을 지정하지 않는 태스크 실행에 대한 자세한 내용은 [대상 없이 유지 관리 기간 태스크 등록](maintenance-windows-targetless-tasks.md) 섹션을 참조하세요.

이 주제에서는 AWS Command Line Interface(AWS CLI) 명령 `register-task-with-maintenance-window`를 사용하여 4가지 지원되는 태스크 유형 각각을 유지 관리 기간에 등록하는 예제를 제공합니다. 예제는 데모용이지만 작업 등록 명령을 생성하도록 수정할 수 있습니다.

**--cli-input-json 옵션 사용**  
작업 옵션을 보다 잘 관리하기 위해 JSON 파일에서 참조되는 옵션 값과 함께 명령 옵션 `--cli-input-json`을 사용할 수 있습니다.

다음 예제에서 제공하는 샘플 JSON 파일 콘텐츠를 사용하려면 로컬 시스템에서 다음을 수행하십시오.

1. `MyRunCommandTask.json`, `MyAutomationTask.json`과 같은 이름 또는 선호하는 다른 이름으로 파일을 생성합니다.

1. JSON 샘플의 콘텐츠를 파일에 복사합니다.

1. 작업 등록을 위해 파일 콘텐츠를 수정한 다음 파일을 저장합니다.

1. 파일을 저장한 디렉터리에서 다음 명령을 실행합니다. *MyFile.json*을 사용자의 파일 이름으로 바꿉니다.

------
#### [ Linux & macOS ]

   ```
   aws ssm register-task-with-maintenance-window \
       --cli-input-json file://MyFile.json
   ```

------
#### [ Windows ]

   ```
   aws ssm register-task-with-maintenance-window ^
       --cli-input-json file://MyFile.json
   ```

------

**유지 관리 기간 태스크의 의사 파라미터**  
일부 예제에서는 ID 정보를 작업에 전달하는 방법으로 *의사 파라미터*를 사용합니다. 예를 들어 `{{TARGET_ID}}` 및 `{{RESOURCE_ID}}`를 사용하여 AWS 리소스의 ID를 Automation, Lambda 및 Step Functions 태스크에 전달할 수 있습니다. `--task-invocation-parameters` 콘텐츠의 의사 파라미터에 대한 자세한 내용은 [유지 관리 기간 작업 등록 시 의사 파라미터 사용](maintenance-window-tasks-pseudo-parameters.md) 섹션을 참조하세요.

**추가 정보**  
+ [register-task-with-maintenance-windows 명령에 대한 파라미터 옵션](mw-cli-task-options.md).
+ **AWS CLI 명령 레퍼런스의 [https://docs.aws.amazon.com/cli/latest/reference/ssm/register-task-with-maintenance-window.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/register-task-with-maintenance-window.html)
+ AWS Systems Manager API 참조의 [https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_RegisterTaskWithMaintenanceWindow.html](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_RegisterTaskWithMaintenanceWindow.html)**

## 작업 등록 예제
<a name="task-examples"></a>

다음 단원에서는 지원되는 작업 유형과, `--cli-input-json` 옵션과 함께 사용할 수 있는 JSON 샘플을 등록하기 위한 샘플 AWS CLI 명령을 제공합니다.

### Systems Manager Run Command 태스크 등록
<a name="register-tasks-tutorial-run-command"></a>

다음 예에서는 AWS CLI를 사용하여 유지 관리 기간에 Systems Manager Run Command 태스크를 등록하는 방법을 보여줍니다.

------
#### [ Linux & macOS ]

```
aws ssm register-task-with-maintenance-window \
    --window-id mw-0c50858d01EXAMPLE \
    --task-arn "AWS-RunShellScript" \
    --max-concurrency 1 --max-errors 1 --priority 10 \
    --targets "Key=InstanceIds,Values=i-02573cafcfEXAMPLE" \
    --task-type "RUN_COMMAND" \
    --task-invocation-parameters '{"RunCommand":{"Parameters":{"commands":["df"]}}}'
```

------
#### [ Windows ]

```
aws ssm register-task-with-maintenance-window ^
    --window-id mw-0c50858d01EXAMPLE ^
    --task-arn "AWS-RunShellScript" ^
    --max-concurrency 1 --max-errors 1 --priority 10 ^
    --targets "Key=InstanceIds,Values=i-02573cafcfEXAMPLE" ^
    --task-type "RUN_COMMAND" ^
    --task-invocation-parameters "{\"RunCommand\":{\"Parameters\":{\"commands\":[\"df\"]}}}"
```

------

**`--cli-input-json` 파일 옵션과 함께 사용할 JSON 콘텐츠:**

```
{
    "TaskType": "RUN_COMMAND",
    "WindowId": "mw-0c50858d01EXAMPLE",
    "Description": "My Run Command task to update SSM Agent on an instance",
    "MaxConcurrency": "1",
    "MaxErrors": "1",
    "Name": "My-Run-Command-Task",
    "Priority": 10,
    "Targets": [
        {
            "Key": "WindowTargetIds",
            "Values": [
                "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE"
            ]
        }
    ],
    "TaskArn": "AWS-UpdateSSMAgent",
    "TaskInvocationParameters": {
        "RunCommand": {
            "Comment": "A TaskInvocationParameters test comment",
            "NotificationConfig": {
                "NotificationArn": "arn:aws:sns:region:123456789012:my-sns-topic-name",
                "NotificationEvents": [
                    "All"
                ],
                "NotificationType": "Invocation"
            },
            "OutputS3BucketName": "amzn-s3-demo-bucket",
            "OutputS3KeyPrefix": "S3-PREFIX",
            "TimeoutSeconds": 3600
        }
    }
}
```

### Systems Manager Automation 태스크 등록
<a name="register-tasks-tutorial-automation"></a>

다음 예에서는 AWS CLI를 사용하여 유지 관리 기간에 Systems Manager Automation 태스크를 등록하는 방법을 보여줍니다.

**AWS CLI 명령:**

------
#### [ Linux & macOS ]

```
aws ssm register-task-with-maintenance-window \
    --window-id "mw-0c50858d01EXAMPLE" \
    --task-arn "AWS-RestartEC2Instance" \
    --service-role-arn arn:aws:iam::123456789012:role/MyMaintenanceWindowServiceRole \
    --task-type AUTOMATION \
    --task-invocation-parameters "Automation={DocumentVersion=5,Parameters={InstanceId='{{RESOURCE_ID}}'}}" \
    --priority 0 --name "My-Restart-EC2-Instances-Automation-Task" \
    --description "Automation task to restart EC2 instances"
```

------
#### [ Windows ]

```
aws ssm register-task-with-maintenance-window ^
    --window-id "mw-0c50858d01EXAMPLE" ^
    --task-arn "AWS-RestartEC2Instance" ^
    --service-role-arn arn:aws:iam::123456789012:role/MyMaintenanceWindowServiceRole ^
    --task-type AUTOMATION ^
    --task-invocation-parameters "Automation={DocumentVersion=5,Parameters={InstanceId='{{TARGET_ID}}'}}" ^
    --priority 0 --name "My-Restart-EC2-Instances-Automation-Task" ^
    --description "Automation task to restart EC2 instances"
```

------

**`--cli-input-json` 파일 옵션과 함께 사용할 JSON 콘텐츠:**

```
{
    "WindowId": "mw-0c50858d01EXAMPLE",
        "TaskArn": "AWS-PatchInstanceWithRollback",
    "TaskType": "AUTOMATION","TaskInvocationParameters": {
        "Automation": {
            "DocumentVersion": "1",
            "Parameters": {
                "instanceId": [
                    "{{RESOURCE_ID}}"
                ]
            }
        }
    }
}
```

### AWS Lambda 작업 등록
<a name="register-tasks-tutorial-lambda"></a>

다음 예에서는 AWS CLI를 사용하여 유지 관리 기간에 Lambda 함수 태스크를 등록하는 방법을 보여줍니다.

Lambda 함수를 생성한 사용자가 `SSMrestart-my-instances`라는 이름을 지정하고 `instanceId`와 `targetType`이라는 2개의 파라미터를 생성했습니다.

**중요**  
Maintenance Windows의 IAM 정책에서는 Lambda 함수 이름(또는 별칭) 앞에 접두사 `SSM`을 추가해야 합니다. 이러한 유형의 태스크를 등록하기 전에 AWS Lambda에서 `SSM`을 포함하도록 이름을 업데이트합니다. 예를 들어 Lambda 함수 이름이 `MyLambdaFunction`인 경우 `SSMMyLambdaFunction`으로 변경합니다.

**AWS CLI 명령:**

------
#### [ Linux & macOS ]

**중요**  
AWS CLI 버전 2를 사용하는 경우 Lambda 페이로드가 base64로 인코딩되지 않은 경우 다음 명령에 `--cli-binary-format raw-in-base64-out` 옵션을 포함해야 합니다. `cli_binary_format` 옵션은 버전 2에서만 사용할 수 있습니다. 이 파일 설정과 기타 AWS CLI `config` 파일 설정에 대한 자세한 내용은 *AWS Command Line Interface 사용 설명서*의 [지원되는 `config` 파일 설정](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html#cli-configure-files-settings)을 참조하세요.

```
aws ssm register-task-with-maintenance-window \
    --window-id "mw-0c50858d01EXAMPLE" \
    --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" \
    --priority 2 --max-concurrency 10 --max-errors 5 --name "My-Lambda-Example" \
    --description "A description for my LAMBDA example task" --task-type "LAMBDA" \
    --task-arn "arn:aws:lambda:region:123456789012:function:serverlessrepo-SSMrestart-my-instances-C4JF9EXAMPLE" \
    --task-invocation-parameters '{"Lambda":{"Payload":"{\"InstanceId\":\"{{RESOURCE_ID}}\",\"targetType\":\"{{TARGET_TYPE}}\"}","Qualifier": "$LATEST"}}'
```

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

**중요**  
AWS CLI 버전 2를 사용하는 경우 Lambda 페이로드가 base64로 인코딩되지 않은 경우 다음 명령에 `--cli-binary-format raw-in-base64-out` 옵션을 포함해야 합니다. `cli_binary_format` 옵션은 버전 2에서만 사용할 수 있습니다. 이 파일 설정과 기타 AWS CLI `config` 파일 설정에 대한 자세한 내용은 *AWS Command Line Interface 사용 설명서*의 [지원되는 `config` 파일 설정](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html#cli-configure-files-settings)을 참조하세요.

```
aws ssm register-task-with-maintenance-window `
    --window-id "mw-0c50858d01EXAMPLE" `
    --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" `
    --priority 2 --max-concurrency 10 --max-errors 5 --name "My-Lambda-Example" `
    --description "A description for my LAMBDA example task" --task-type "LAMBDA" `
    --task-arn "arn:aws:lambda:region:123456789012:function:serverlessrepo-SSMrestart-my-instances-C4JF9EXAMPLE" `
    --task-invocation-parameters '{\"Lambda\":{\"Payload\":\"{\\\"InstanceId\\\":\\\"{{RESOURCE_ID}}\\\",\\\"targetType\\\":\\\"{{TARGET_TYPE}}\\\"}\",\"Qualifier\": \"$LATEST\"}}'
```

------

**`--cli-input-json` 파일 옵션과 함께 사용할 JSON 콘텐츠:**

```
{
    "WindowId": "mw-0c50858d01EXAMPLE",
    "Targets": [
        {
            "Key": "WindowTargetIds",
            "Values": [
                "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE"
            ]
        }
    ],
    "TaskArn": "SSM_RestartMyInstances",
    "TaskType": "LAMBDA",
    "MaxConcurrency": "10",
    "MaxErrors": "10",
    "TaskInvocationParameters": {
        "Lambda": {
            "ClientContext": "ew0KICAi--truncated--0KIEXAMPLE",
            "Payload": "{ \"instanceId\": \"{{RESOURCE_ID}}\", \"targetType\": \"{{TARGET_TYPE}}\" }",
            "Qualifier": "$LATEST"
        }
    },
    "Name": "My-Lambda-Task",
    "Description": "A description for my LAMBDA task",
    "Priority": 5
}
```

### Step Functions 태스크 등록
<a name="register-tasks-tutorial-step-functions"></a>

다음 예에서는 AWS CLI를 사용하여 유지 관리 기간에 Step Functions 상태 머신 태스크를 등록하는 방법을 보여줍니다.

**참고**  
유지 관리 기간 태스크는 Step Functions 표준 상태 머신 워크플로만 지원합니다. 익스프레스 상태 머신 워크플로는 지원하지 않습니다. 상태 머신 워크플로 유형에 대한 자세한 내용은 *AWS Step Functions개발자 안내서의* [표준 워크플로와 익스프레스 워크플로](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-standard-vs-express.html)를 참조하세요.

이러한 예의 경우 Step Functions 상태 머신을 생성한 사용자가 `instanceId` 파라미터가 있는 상태 시스템 `SSMMyStateMachine`을 생성했습니다.

**중요**  
Maintenance Windows의 AWS Identity and Access Management(IAM) 정책에서는 Step Functions 상태 시스템 이름 앞에 접두사 `SSM`을 추가해야 합니다. 이러한 유형의 작업을 등록하기 전에 AWS Step Functions에서 `SSM`을 포함하도록 이름을 업데이트해야 합니다. 예를 들어 상태 시스템 이름이 `MyStateMachine`인 경우 `SSMMyStateMachine`으로 변경합니다.

**AWS CLI 명령:**

------
#### [ Linux & macOS ]

```
aws ssm register-task-with-maintenance-window \
    --window-id "mw-0c50858d01EXAMPLE" \
    --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" \
    --task-arn arn:aws:states:region:123456789012:stateMachine:SSMMyStateMachine-MggiqEXAMPLE \
    --task-type STEP_FUNCTIONS \
    --task-invocation-parameters '{"StepFunctions":{"Input":"{\"InstanceId\":\"{{RESOURCE_ID}}\"}", "Name":"{{INVOCATION_ID}}"}}' \
    --priority 0 --max-concurrency 10 --max-errors 5 \
    --name "My-Step-Functions-Task" --description "A description for my Step Functions task"
```

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

```
aws ssm register-task-with-maintenance-window `
    --window-id "mw-0c50858d01EXAMPLE" `
    --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" `
    --task-arn arn:aws:states:region:123456789012:stateMachine:SSMMyStateMachine-MggiqEXAMPLE `
    --task-type STEP_FUNCTIONS `
    --task-invocation-parameters '{\"StepFunctions\":{\"Input\":\"{\\\"InstanceId\\\":\\\"{{RESOURCE_ID}}\\\"}\", \"Name\":\"{{INVOCATION_ID}}\"}}' `
    --priority 0 --max-concurrency 10 --max-errors 5 `
    --name "My-Step-Functions-Task" --description "A description for my Step Functions task"
```

------

**`--cli-input-json` 파일 옵션과 함께 사용할 JSON 콘텐츠:**

```
{
    "WindowId": "mw-0c50858d01EXAMPLE",
    "Targets": [
        {
            "Key": "WindowTargetIds",
            "Values": [
                "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE"
            ]
        }
    ],
    "TaskArn": "SSM_MyStateMachine",
    "TaskType": "STEP_FUNCTIONS",
    "MaxConcurrency": "10",
    "MaxErrors": "10",
    "TaskInvocationParameters": {
        "StepFunctions": {
            "Input": "{ \"instanceId\": \"{{TARGET_ID}}\" }",
            "Name": "{{INVOCATION_ID}}"
        }
    },
    "Name": "My-Step-Functions-Task",
    "Description": "A description for my Step Functions task",
    "Priority": 5
}
```

# register-task-with-maintenance-windows 명령에 대한 파라미터 옵션
<a name="mw-cli-task-options"></a>

**register-task-with-maintenance-window** 명령은 필요에 따라 작업을 구성하기 위한 몇 가지 옵션을 제공합니다. 일부는 필수 옵션이고 일부는 선택 옵션이며 일부는 단일 유지 관리 기간 작업 유형에만 적용됩니다.

이 주제에서는 이 자습서 단원의 샘플 작업에 도움이 되는 몇 가지 옵션에 대한 정보를 제공합니다. 모든 명령 옵션에 대한 자세한 내용은 *AWS CLI Command Reference*의 **[https://docs.aws.amazon.com/cli/latest/reference/ssm/register-task-with-maintenance-window.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/register-task-with-maintenance-window.html)** 섹션을 참조하세요.

**명령 옵션: `--task-arn`**  
`--task-arn` 옵션은 태스크가 작업 중에 사용하는 리소스를 지정하는 데 사용됩니다. 지정하는 값은 다음 표에 설명된 대로 등록 중인 태스크 유형에 따라 달라집니다.


**유지 관리 기간 작업을 위한 TaskArn 형식**  

| 유지 관리 기간 작업 유형 | TaskArn 값 | 
| --- | --- | 
|  **`RUN_COMMAND`** 및 **`AUTOMATION`**  |  `TaskArn`은 SSM 문서 이름 또는 Amazon 리소스 이름(ARN)입니다. 예:  `AWS-RunBatchShellScript`  -또는- `arn:aws:ssm:region:111122223333:document/My-Document`.  | 
|  **`LAMBDA`**  |  `TaskArn`은 함수 이름 또는 ARN입니다. 예:  `SSMMy-Lambda-Function` -또는- `arn:aws:lambda:region:111122223333:function:SSMMyLambdaFunction`.  Maintenance Windows의 IAM 정책에서는 Lambda 함수 이름(또는 별칭) 앞에 접두사 `SSM`을 추가해야 합니다. 이러한 유형의 태스크를 등록하기 전에 AWS Lambda에서 `SSM`을 포함하도록 이름을 업데이트합니다. 예를 들어 Lambda 함수 이름이 `MyLambdaFunction`인 경우 `SSMMyLambdaFunction`으로 변경합니다.   | 
|  **`STEP_FUNCTIONS`**  |  `TaskArn`은 상태 시스템 ARN입니다. 예:  `arn:aws:states:us-east-2:111122223333:stateMachine:SSMMyStateMachine`.  유지 관리 기간의 IAM 정책에서는 Step Functions 상태 시스템 이름 앞에 접두사 `SSM`을 추가해야 합니다. 이러한 유형의 작업을 등록하기 전에 AWS Step Functions에서 `SSM`을 포함하도록 이름을 업데이트해야 합니다. 예를 들어 상태 시스템 이름이 `MyStateMachine`인 경우 `SSMMyStateMachine`으로 변경합니다.   | 

**명령 옵션: `--service-role-arn`**  
유지 관리 기간 작업을 실행할 때 수임할 AWS Systems Manager 역할입니다.

자세한 내용은 [Maintenance Windows 설정](setting-up-maintenance-windows.md) 섹션을 참조하세요.

**명령 옵션: `--task-invocation-parameters`**  
`--task-invocation-parameters` 옵션은 네 가지 작업 유형 각각에 고유한 파라미터를 지정하는 데 사용됩니다. 다음 표에서는 네 가지 작업 유형 각각에 대해 지원되는 파라미터를 설명합니다.

**참고**  
\$1\$1TARGET\$1ID\$1\$1 등 `--task-invocation-parameters` 콘텐츠에서의 의사 파라미터 사용에 대한 자세한 내용은 [유지 관리 기간 작업 등록 시 의사 파라미터 사용](maintenance-window-tasks-pseudo-parameters.md) 섹션을 참조하세요.

유지 관리 기간 작업에 대한 작업 호출 파라미터 옵션


| 유지 관리 기간 작업 유형 | 사용 가능한 파라미터  | 예제 | 
| --- | --- | --- | 
|  **`RUN_COMMAND`**  |  `Comment` `DocumentHash` `DocumentHashType` `NotificationConfig` `OutputS3BucketName` `OutPutS3KeyPrefix` `Parameters` `ServiceRoleArn` `TimeoutSeconds`  |  <pre>"TaskInvocationParameters": {<br />        "RunCommand": {<br />            "Comment": "My Run Command task comment",<br />            "DocumentHash": "6554ed3d--truncated--5EXAMPLE",<br />            "DocumentHashType": "Sha256",<br />            "NotificationConfig": {<br />                "NotificationArn": "arn:aws:sns:region:123456789012:my-sns-topic-name",<br />                "NotificationEvents": [<br />                    "FAILURE"<br />                ],<br />                "NotificationType": "Invocation"<br />            },<br />            "OutputS3BucketName": "amzn-s3-demo-bucket",<br />            "OutputS3KeyPrefix": "S3-PREFIX",<br />            "Parameters": {<br />                "commands": [<br />                    "Get-ChildItem$env: temp-Recurse|Remove-Item-Recurse-force"<br />                ]<br />            },<br />            "ServiceRoleArn": "arn:aws:iam::123456789012:role/MyMaintenanceWindowServiceRole",<br />            "TimeoutSeconds": 3600<br />        }<br />    }</pre>  | 
|  **`AUTOMATION`**  |  `DocumentVersion` `Parameters`  |  <pre>"TaskInvocationParameters": {<br />        "Automation": {<br />            "DocumentVersion": "3",<br />            "Parameters": {<br />                "instanceid": [<br />                    "{{TARGET_ID}}"<br />                ]<br />            }<br />        }<br />    }</pre>  | 
|  **`LAMBDA`**  |  `ClientContext` `Payload` `Qualifier`  |  <pre>"TaskInvocationParameters": {<br />        "Lambda": {<br />            "ClientContext": "ew0KICAi--truncated--0KIEXAMPLE",<br />            "Payload": "{ \"targetId\": \"{{TARGET_ID}}\", \"targetType\": \"{{TARGET_TYPE}}\" }",<br />            "Qualifier": "$LATEST"<br />        }<br />    }</pre>  | 
|  **`STEP_FUNCTIONS`**  |  `Input` `Name`  |  <pre>"TaskInvocationParameters": {<br />        "StepFunctions": {<br />            "Input": "{ \"targetId\": \"{{TARGET_ID}}\" }",<br />            "Name": "{{INVOCATION_ID}}"<br />        }<br />    }</pre>  | 