

# Amazon EC2 인스턴스 상태 모니터링
인스턴스 상태 모니터링

인스턴스의 상태 확인과 예약된 이벤트 정보를 확인하면 인스턴스의 상태를 모니터링할 수 있습니다.

상태 확인은 Amazon EC2에서 실시하는 자동 확인 작업을 통해 정보를 제공합니다. 이러한 자동 검사는 인스턴스에 영향을 미치는 특정 문제가 있을 때 이를 감지합니다. 상태 확인 정보는 Amazon CloudWatch에서 제공되는 데이터와 함께 각 인스턴스에 대한 세부적인 운영 정보를 시각적으로 제공합니다.

인스턴스에서 예약된 특정 이벤트의 상태도 확인할 수 있습니다. 이벤트 상태는 재부팅이나 만료 등 인스턴스에 대해 설정된 예정 활동에 대한 정보를 제공합니다. 또한 각 이벤트의 예약된 시작 시간과 종료 시간도 제공합니다.

**Topics**
+ [

# Amazon EC2 인스턴스 상태 확인
](monitoring-system-instance-status-check.md)
+ [

# Amazon EC2 인스턴스의 상태 변경 이벤트
](monitoring-instance-state-changes.md)
+ [

# Amazon EC2 인스턴스의 예약된 이벤트
](monitoring-instances-status-check_sched.md)

# Amazon EC2 인스턴스 상태 확인
상태 확인

인스턴스 상태 모니터링 작업은 Amazon EC2에서 인스턴스의 애플리케이션 실행에 지장을 줄 수 있는 문제를 발견했을 때 빠르게 확인할 수 있는 방법입니다. Amazon EC2는 실행 중인 모든 EC2 인스턴스에서 자동 확인을 수행하여 하드웨어 및 소프트웨어 문제를 식별합니다. 이러한 상태 확인 결과를 토대로 식별 가능한 특정 문제를 확인할 수 있습니다. 이벤트 상태 데이터는 Amazon EC2가 이미 각 인스턴스 상태(`pending`, `running`, `stopping` 등)에 대해 제공하는 정보와 Amazon CloudWatch가 모니터링하는 사용 지표(CPU 사용량, 네트워크 트래픽, 디스크 활동)를 보완합니다.

상태 확인은 1분마다 실행되며 통과 또는 실패 상태를 반환합니다. 모든 검사 결과가 통과인 경우 인스턴스의 전체 상태는 **정상**으로 표시됩니다. 하나 이상의 검사 결과가 실패인 경우에는 인스턴스의 전체 상태가 **손상됨**으로 표시됩니다. 상태 확인은 Amazon EC2에 내장된 기능으로 비활성화하거나 삭제할 수 없습니다.

상태 확인이 실패하면 상태 확인에 대한 해당 CloudWatch 지표가 증가합니다. 자세한 내용은 [상태 확인 지표](viewing_metrics_with_cloudwatch.md#status-check-metrics) 섹션을 참조하세요. 이러한 지표를 사용하여 상태 확인 결과를 기준으로 트리거되는 CloudWatch 경보를 생성할 수 있습니다. 예를 들어 특정 인스턴스의 상태 확인에서 실패 항목이 있을 때 알리는 경보를 생성할 수 있습니다. 자세한 내용은 [상태 확인에 실패한 Amazon EC2 인스턴스에 대한 CloudWatch 경보 생성](creating_status_check_alarms.md) 섹션을 참조하세요.

Amazon EC2 인스턴스를 모니터링하고 기본 문제로 인해 인스턴스가 손상된 경우 인스턴스를 자동으로 복구하는 Amazon CloudWatch 경보를 생성할 수도 있습니다. 자세한 내용은 [자동 인스턴스 복구](ec2-instance-recover.md) 섹션을 참조하세요.

**Topics**
+ [

## 상태 확인 유형
](#types-of-instance-status-checks)
+ [

# Amazon EC2 인스턴스 상태 확인 보기
](viewing_status.md)
+ [

# 상태 확인에 실패한 Amazon EC2 인스턴스에 대한 CloudWatch 경보 생성
](creating_status_check_alarms.md)

## 상태 확인 유형


상태 확인에는 세 가지 유형이 있습니다.
+ [시스템 상태 확인](#system-status-checks)
+ [인스턴스 상태 확인](#instance-status-checks)
+ [연결된 EBS 상태 확인](#attached-ebs-status-checks)

### 시스템 상태 확인


시스템 상태 확인은 인스턴스가 실행되는 AWS 시스템을 모니터링합니다. 이러한 확인에서는 복구 시 AWS 개입이 필요한 인스턴스와 관련된 근본적인 문제를 찾아냅니다. 시스템 상태 확인이 실패한 경우, AWS에서 문제를 해결할 때까지 기다리거나 문제를 직접 해결할 수 있습니다. Amazon EBS가 지원하는 인스턴스의 경우, 직접 인스턴스를 중지한 후 시작할 수 있으며 대부분의 경우 이 인스턴스를 새 호스트로 마이그레이션합니다. 인스턴스 저장소 기반 인스턴스(Linux 인스턴스에서만 지원됨)의 경우 인스턴스를 종료하고 교체할 수 있습니다. 인스턴스 저장소 볼륨은 일시적이며 인스턴스가 중지되면 모든 데이터가 손실됩니다.

다음은 시스템 상태 확인의 실패 원인이 되는 몇 가지 문제의 예입니다.
+ 네트워크 연결 끊김
+ 시스템 전원 중단
+ 물리적 호스트의 소프트웨어 문제
+ 네트워크 연결성에 영향을 주는 물리적 호스트의 하드웨어 문제

시스템 상태 검사에 실패하면 [StatusCheckFailed\$1System](viewing_metrics_with_cloudwatch.md#status-check-metrics) 지표가 증가합니다.

**베어 메탈 인스턴스**  
베어 메탈 인스턴스의 운영 체제에서 다시 시작하는 경우 시스템 상태 확인에서 일시적으로 실패 상태를 반환할 수 있습니다. 인스턴스를 사용할 수 있게 되면 시스템 상태 확인에서 통과 상태를 반환해야 합니다.

### 인스턴스 상태 확인


인스턴스 상태 검사에서는 개별 인스턴스에 대한 소프트웨어 및 네트워크 연결을 모니터링합니다. Amazon EC2는 네트워크 인터페이스(NIC)로 주소 확인 프로토콜(ARP)을 전송하여 인스턴스의 상태를 확인합니다. 이러한 확인에서는 복구 시 사용자의 개입이 필요한 문제를 찾아냅니다. 인스턴스 상태 확인이 실패할 경우에는 일반적으로 사용자가 인스턴스를 재부팅하거나 인스턴스 구성을 변경하는 등의 방법으로 문제를 직접 해결해야 합니다.

**참고**  
네트워크 구성에 `systemd-networkd`를 사용하는 최신 Linux 배포판은 이전 배포판과 다르게 상태 확인을 보고할 수 있습니다. 이러한 유형의 네트워크는 부팅 프로세스 중에 더 일찍 시작되어 인스턴스 상태에 영향을 미칠 수 있는 다른 시작 작업보다 먼저 완료될 수 있습니다. 네트워크 가용성에 따라 달라지는 상태 확인은 다른 태스크가 완료되기 전에 정상 상태를 보고할 수 있습니다.

다음은 인스턴스 상태 확인의 실패 원인이 되는 몇 가지 문제의 예입니다.
+ 시스템 상태 확인 실패
+ 잘못된 네트워킹 또는 스타트업 구성
+ 메모리가 모두 사용됨
+ 파일 시스템 손상
+ 호환되지 않는 커널
+ 재부팅 중에 인스턴스 상태 확인은 인스턴스를 다시 사용할 수 있을 때까지 실패를 보고합니다.

인스턴스 상태 검사에 실패하면 [StatusCheckFailed\$1Instance](viewing_metrics_with_cloudwatch.md#status-check-metrics) 지표가 증가합니다.

**베어 메탈 인스턴스**  
베어 메탈 인스턴스의 운영 체제에서 다시 시작하는 경우 인스턴스 상태 확인에서 일시적으로 실패 상태를 반환할 수 있습니다. 인스턴스를 사용할 수 있게 되면 인스턴스 상태 확인에서 통과 상태를 반환해야 합니다.

### 연결된 EBS 상태 확인


연결된 EBS 상태 확인은 인스턴스에 연결된 Amazon EBS 볼륨이 연결 가능하고 I/O 작업을 완료할 수 있는지 모니터링합니다. `StatusCheckFailed_AttachedEBS` 지표는 인스턴스에 연결된 하나 이상의 EBS 볼륨이 I/O 작업을 완료할 수 없는 경우 손상을 나타내는 이진 값입니다. 이러한 상태 확인은 컴퓨팅 또는 Amazon EBS 인프라의 근본적인 문제를 감지합니다. 연결된 EBS 상태 확인 지표가 실패하면 AWS에서 문제가 해결될 때까지 기다리거나 영향을 받는 볼륨의 교체 또는 인스턴스 중지 후 재시작 등의 조치를 취할 수 있습니다.

다음은 연결된 EBS 상태 확인의 실패 원인이 되는 몇 가지 문제의 예입니다.
+ EBS 볼륨의 기반이 되는 스토리지 하위 시스템의 하드웨어 또는 소프트웨어 문제
+ EBS 볼륨의 연결성에 영향을 주는 물리적 호스트의 하드웨어 문제
+ 인스턴스와 EBS 볼륨 간의 연결 문제

`StatusCheckFailed_AttachedEBS` 지표를 사용하여 워크로드의 복원성을 개선할 수 있습니다. 이 지표를 사용하여 상태 확인 결과를 기준으로 트리거되는 Amazon CloudWatch 경보를 생성할 수 있습니다. 예를 들어, 장기간의 영향이 감지되면 보조 인스턴스 또는 가용 영역으로 장애 조치할 수 있습니다. 아니면 EBS CloudWatch 지표를 사용하여 연결된 각 볼륨의 I/O 성능을 모니터링하여 손상된 볼륨을 감지하고 교체할 수 있습니다. 워크로드가 인스턴스에 연결된 EBS 볼륨으로 I/O를 제공하지 않고, 연결된 EBS 상태 확인에서 장애가 표시되는 경우 인스턴스를 중지하고 시작하여 새 호스트로 이동할 수 있습니다. 이렇게 하면 EBS 볼륨의 연결성에 영향을 미치는 기본적인 호스트 문제를 해결할 수 있습니다. 자세한 내용은 [Amazon CloudWatch metrics for Amazon EBS](https://docs.aws.amazon.com/ebs/latest/userguide/using_cloudwatch_ebs.html)를 참조하세요.

또한 연결된 EBS 상태 확인 실패를 탐지하도록 Amazon EC2 Auto Scaling 그룹을 구성한 다음, 영향을 받는 인스턴스를 새 인스턴스로 대체할 수 있습니다. 자세한 내용은 *Amazon EC2 Auto Scaling 사용 설명서*의 [손상된 Amazon EBS 볼륨이 있는 Auto Scaling 인스턴스 모니터링 및 교체](https://docs.aws.amazon.com/autoscaling/ec2/userguide/monitor-and-replace-instances-with-impaired-ebs-volumes.html)를 참조하세요.

**참고**  
연결된 EBS 상태 확인 지표는 Nitro 인스턴스에만 사용할 수 있습니다.

# Amazon EC2 인스턴스 상태 확인 보기
상태 확인 보기

인스턴스 상태 확인이 실패할 경우에는 일반적으로 사용자가 인스턴스를 재부팅하거나 인스턴스 구성을 변경하는 등의 방법으로 문제를 직접 해결해야 합니다. 시스템 또는 인스턴스 상태 확인 실패 문제를 직접 해결하려면 [상태 확인에 실패한 Amazon EC2 Linux 인스턴스 문제 해결](TroubleshootingInstances.md) 섹션을 참조하세요.

------
#### [ Console ]

**상태 확인 보기**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **인스턴스**를 선택합니다.

1. **인스턴스(Instances)** 페이지의 **상태 검사(Status check)** 열에는 각 인스턴스의 운영 상태가 목록으로 표시됩니다.

1. 특정 인스턴스의 상태를 보려면 인스턴스를 선택하고 **상태 및 경보** 탭을 선택합니다.

1. 상태 확인에 대한 CloudWatch 지표를 검토하려면 **상태 및 경보** 탭에서 **지표**를 확장하여 다음 지표에 대한 그래프를 확인합니다.
   + **시스템에서 상태 확인 실패**
   + **인스턴스에서 상태 확인 실패**
   + **연결된 EBS의 상태 확인 실패**

   자세한 내용은 [상태 확인 지표](viewing_metrics_with_cloudwatch.md#status-check-metrics) 섹션을 참조하세요.

------
#### [ AWS CLI ]

**상태 확인 보기**  
[describe-instance-status](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instance-status.html) 명령을 사용합니다.

**예**: 실행 중인 모든 인스턴스의 상태 가져오기

```
aws ec2 describe-instance-status
```

**예**: 모든 인스턴스의 상태 가져오기

```
aws ec2 describe-instance-status --include-all-instances
```

**예**: 실행 중인 단일 인스턴스의 상태 가져오기

```
aws ec2 describe-instance-status --instance-ids i-1234567890abcdef0
```

**예**: 상태가 `impaired`인 모든 인스턴스 가져오기

```
aws ec2 describe-instance-status \
--filters Name=instance-status.status,Values=impaired
```

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

**상태 확인 보기**  
[Get-EC2InstanceStatus](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2InstanceStatus.html) 명령을 사용합니다.

**예**: 실행 중인 모든 인스턴스의 상태 가져오기

```
Get-EC2InstanceStatus
```

**예**: 모든 인스턴스의 상태 가져오기

```
Get-EC2InstanceStatus -IncludeAllInstance $true
```

**예**: 실행 중인 단일 인스턴스의 상태 가져오기

```
Get-EC2InstanceStatus -InstanceId i-1234567890abcdef0
```

**예**: 상태가 `impaired`인 모든 인스턴스 가져오기

```
Get-EC2InstanceStatus \
-Filter @{Name="instance-status.status"; Values="impaired"}
```

------

# 상태 확인에 실패한 Amazon EC2 인스턴스에 대한 CloudWatch 경보 생성
상태 확인 경보 생성

[상태 확인 지표](viewing_metrics_with_cloudwatch.md#status-check-metrics)를 사용하여 인스턴스에 실패한 상태 확인이 있을 때 알리는 CloudWatch 경보를 생성할 수 있습니다.

누락된 지표 데이터 요소가 있는 경우 상태 검사 및 상태 검사 경보가 일시적으로 *데이터 부족* 상태로 전환될 수 있습니다. 드물기는 하지만, 지표 보고 시스템이 중단되면 인스턴스가 정상인 경우에도 이 문제가 발생할 수 있습니다. 상태 확인 실패 또는 경보 위반 대신 이 상태를 누락된 데이터로 처리하는 것이 좋습니다. 응답으로 인스턴스에서 중지, 종료, 재부팅 또는 복구 작업을 수행할 때 특히 중요합니다.

------
#### [ Console ]

이 예제는 인스턴스가 상태 확인에 실패할 때 알림을 보내는 경보를 구성합니다. 선택적으로 인스턴스를 중지, 종료 또는 복구할 수 있습니다.

**상태 확인 경보를 생성하는 방법**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **인스턴스**를 선택합니다.

1. 인스턴스를 선택하고, **상태 검사(Status Checks)** 탭을 선택한 후 **작업(Actions)**, **상태 검사 경보 생성(Create status check alarm)**을 선택합니다.

1. [**CloudWatch 경보 관리(Manage CloudWatch alarms)**] 페이지의 [**경보 추가 또는 편집(Add or edit alarm)**]에서 [**경보 생성(Create an alarm)**]을 선택합니다.

1. **경보 알림(Alarm notification)**에서 토글을 켜서 Amazon Simple Notification Service(Amazon SNS) 알림을 구성합니다. 기존 Amazon SNS 주제를 선택하거나 이름을 입력하여 새 주제를 생성합니다.

   수신자 목록에 이메일 주소를 추가하거나 새 주제를 생성하는 경우 Amazon SNS에서는 각 새 주소로 확인 이메일을 보냅니다. 각 수신자는 이메일에서 확인 링크를 선택해야 합니다. 확인된 주소만 경보 알림을 수신합니다.

1. **경보 작업(Alarm action)**에서 토글을 켜서 경보가 트리거될 때 수행할 작업을 지정합니다. 작업을 선택합니다.

1. [**경보 임곗값(Alarm thresholds)**]에서 경보에 대한 지표와 기준을 선택합니다.

   **샘플 그룹화 기준**의 기본 설정(**Average**)과 **샘플링할 데이터 유형**의 기본 설정(**Status check failed:either**)을 그대로 두어도 되며, 필요에 따라 원하는 설정으로 변경할 수도 있습니다.

   [**연속 기간(Consecutive Period)**]에서 평가 주기의 개수를 설정하고 [**기간(Period)**]에서 경보가 실행되고 이메일 전송이 이루어지기 전에 적용할 평가 주기의 시간 단위를 설정합니다.

1. (선택 사항) **샘플 지표 데이터**의 경우 **대시보드에 추가**를 선택합니다.

1. **Create**를 선택합니다.

인스턴스 상태 경보를 변경해야 하는 경우 편집할 수 있습니다.

**상태 확인 경보를 편집하는 방법**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **인스턴스**를 선택합니다.

1. 인스턴스를 선택하고 **작업**, **모니터링**, **CloudWatch 경보 관리**를 차례로 선택합니다.

1. [**CloudWatch 경보 관리(Manage CloudWatch alarms)**] 페이지의 [**경보 추가 또는 편집(Add or edit alarm)**]에서 [**경보 편집(Edit an alarm)**]을 선택합니다.

1. [**경보 검색(Search for alarm)**]에서 경보를 선택합니다.

1. 변경을 마치면 [**업데이트(Update)**]를 선택합니다.

------
#### [ AWS CLI ]

다음 예제에서는 인스턴스가 2번 이상 연속으로 인스턴스 검사 또는 시스템 상태 확인에 실패하면 경보가 SNS 주제에 알림을 게시합니다. 사용된 CloudWatch 지표는 `StatusCheckFailed`입니다.

**상태 확인 경보를 생성하는 방법**

1. 기존의 SNS 주제를 선택하거나 새로운 주제를 생성합니다. 자세한 내용은 *AWS Command Line Interface 사용 설명서*에서 [AWS CLI에서 Amazon SNS 액세스](https://docs.aws.amazon.com/cli/latest/userguide/cli-services-sns.html)를 참조하세요.

1. 아래와 같이 [list-metrics](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/list-metrics.html) 명령을 사용하여 Amazon EC2에 유효한 Amazon CloudWatch 지표를 확인합니다.

   ```
   aws cloudwatch list-metrics --namespace AWS/EC2
   ```

1. 아래와 같이 [put-metric-alarm](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/put-metric-alarm.html) 명령을 사용하여 경보를 생성합니다.

   ```
   aws cloudwatch put-metric-alarm \
       --alarm-name StatusCheckFailed-Alarm-for-i-1234567890abcdef0 \
       --metric-name StatusCheckFailed \
       --namespace AWS/EC2 \
       --statistic Maximum \
       --dimensions Name=InstanceId,Value=i-1234567890abcdef0 \
       --unit Count \
       --period 300 \
       --evaluation-periods 2 \
       --threshold 1 \
       --comparison-operator GreaterThanOrEqualToThreshold \
       --alarm-actions arn:aws:sns:us-west-2:111122223333:my-sns-topic
   ```

   기간은 Amazon CloudWatch 지표가 수집되는 시간 프레임(초)입니다. 이 예제에서는 60초와 5분을 곱셈하여 300초를 사용합니다. 평가 기간은 지표 값을 임곗값과 비교해야 하는 연속 기간의 수입니다. 이 예제에서는 2를 사용합니다. 경보 작업은 경보가 트리거될 때 수행할 작업입니다.

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

**상태 확인 경보를 생성하는 방법**  
다음과 같이 [Write-CWMetricAlarm](https://docs.aws.amazon.com/powershell/latest/reference/items/Write-CWMetricAlarm.html) cmdlet을 사용하여 인스턴스가 2번 이상 연속으로 상태 확인에 실패할 때 SNS 주제에 알림을 게시합니다.

```
Write-CWMetricAlarm `
    -AlarmName "StatusCheckFailed-Alarm-for-i-1234567890abcdef0" `
    -MetricName "StatusCheckFailed" `
    -Namespace "AWS/EC2" `
    -Statistic "Maximum" `
    -Dimension @{Name="InstanceId"; Values="i-1234567890abcdef0"} `
    -Unit "Count" `
    -Period 300 `
    -EvaluationPeriod 2 `
    -Threshold 1 `
    -ComparisonOperator "GreaterThanOrEqualToThreshold" `
    -AlarmAction "arn:aws:sns:us-west-2:111122223333:my-sns-topic"
```

기간은 Amazon CloudWatch 지표가 수집되는 시간 프레임(초)입니다. 이 예제에서는 60초와 5분을 곱셈하여 300초를 사용합니다. 평가 기간은 지표 값을 임곗값과 비교해야 하는 연속 기간의 수입니다. 이 예제에서는 2를 사용합니다. 경보 작업은 경보가 트리거될 때 수행할 작업입니다.

------

# Amazon EC2 인스턴스의 상태 변경 이벤트
상태 변경 이벤트

Amazon EC2는 인스턴스 상태가 변경되면 `EC2 Instance State-change Notification` 이벤트를 Amazon EventBridge로 보냅니다.

다음은 이 이벤트의 예제 데이터입니다. 이 예제에서는 인스턴스가 `pending` 상태가 되었습니다.

```
{
   "id":"7bf73129-1428-4cd3-a780-95db273d1602",
   "detail-type":"EC2 Instance State-change Notification",
   "source":"aws.ec2",
   "account":"123456789012",
   "time":"2021-11-11T21:29:54Z",
   "region":"us-east-1",
   "resources":[
      "arn:aws:ec2:us-east-1:123456789012:instance/i-1234567890abcdef0"
   ],
   "detail":{
      "instance-id":"i-1234567890abcdef0",
      "state":"pending"
   }
}
```

`state`에 대해 가능한 값은 다음과 같습니다.
+ `pending`
+ `running`
+ `stopping`
+ `stopped`
+ `shutting-down`
+ `terminated`

인스턴스를 시작하면 `pending` 상태로 전환되고 나서 `running` 상태로 전환됩니다. 인스턴스를 중지하면 `stopping` 상태로 전환되고 나서 `stopped` 상태로 전환됩니다. 인스턴스를 종료하면 `shutting-down` 상태로 전환되고 나서 `terminated` 상태로 전환됩니다. 자세한 내용은 [Amazon EC2 인스턴스 상태 변경](ec2-instance-lifecycle.md) 섹션을 참조하세요.

# Amazon EC2 인스턴스의 상태가 변경될 때 이메일을 보내는 경보 생성
인스턴스 상태 변경에 대한 경보 생성

인스턴스 상태가 변경될 때 이메일 알림을 받으려면 Amazon SNS 주제를 생성한 다음 `EC2 Instance State-change Notification` 이벤트에 대한 EventBridge 규칙을 생성합니다.

**SNS 주제를 생성하려면**

1. [https://console.aws.amazon.com/sns/v3/home](https://console.aws.amazon.com/sns/v3/home)에서 Amazon SNS 콘솔을 엽니다.

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

1. **주제 생성**을 선택합니다.

1. **유형**에서 **표준**을 선택합니다.

1. **Name**(이름)에 주제의 이름을 입력합니다.

1. **주제 생성**을 선택합니다.

1. **구독 생성**을 선택합니다.

1. **프로토콜**에서 **이메일**을 선택합니다.

1. **Endpoint**(엔드포인트)에 알림을 받는 데 사용할 이메일 주소를 입력합니다.

1. **구독 생성**을 선택합니다.

1. AWS Notification - Subscription Confirmation이라는 제목의 이메일 메시지를 받게 됩니다. 지시에 따라 구독을 확인합니다.

**EventBridge 규칙을 생성하려면**

1. [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/)에서 Amazon EventBridge 콘솔을 엽니다.

1. **Create rule**을 선택합니다.

1. **Name**(이름)에 규칙의 이름을 입력합니다.

1. **규칙 유형(Rule type)**에서 **이벤트 패턴이 있는 규칙(Rule with an event pattern)**을 생성합니다.

1. **다음**을 선택합니다.

1. **이벤트 패턴(Event pattern)**에서 다음을 수행하세요.

   1. **이벤트 소스(Event source)**에서 **AWS 서비스**를 선택합니다.

   1. **AWS 서비스**로 **EC2**를 선택합니다.

   1. **이벤트 유형**에서 **EC2 인스턴스 상태 변경 알림**을 선택합니다.

   1. 기본적으로 모든 인스턴스의 상태 변경에 대한 알림을 보냅니다. 원하는 경우 특정 상태 또는 특정 인스턴스를 선택할 수 있습니다.

1. **다음**을 선택합니다.

1. 다음과 같이 대상을 지정합니다.

   1. **대상 유형(Target types**)에서 **AWS 서비스**를 선택합니다.

   1. **대상 선택**에서 **SNS 주제**를 선택합니다.

   1. **Topic**(주제)에서 이전 절차에서 생성한 SNS 주제를 선택합니다.

1. **다음**을 선택합니다.

1. (선택 사항) 규칙에 태그를 추가합니다.

1. **다음**을 선택합니다.

1. **규칙 생성**을 선택합니다.

1. 규칙을 테스트하려면 상태 변경을 시작합니다. 예를 들어 중지된 인스턴스를 시작하거나 실행 중인 인스턴스를 중지하거나 인스턴스를 시작합니다. AWS Notification Message라는 제목의 이메일 메시지를 받게 됩니다. 이메일 본문에는 이벤트 데이터가 포함되어 있습니다.

# Amazon EC2 인스턴스의 예약된 이벤트
예약된 이벤트

인프라 신뢰성 및 성능을 보장하기 위해 AWS는 인스턴스를 재부팅, 중지 및 사용 중지하도록 이벤트를 예약할 수 있습니다. 이러한 이벤트들은 자주 발생하지 않습니다.

인스턴스 중 하나가 예약된 이벤트의 영향을 받는 경우 AWS는 AWS 계정과 연결된 이메일 주소를 사용하여 이메일로 미리 알립니다. 이메일은 시작 날짜 및 종료 날짜 등 이벤트에 대한 세부 정보를 제공합니다. 이벤트 유형에 따라 이벤트 타이밍을 제어하는 작업을 수행할 수 있습니다. AWS는 Amazon EventBridge를 사용하여 모니터링 및 관리할 수 있는 AWS Health 이벤트도 보냅니다. 자세한 내용은 [Monitoring events in AWS Health with Amazon EventBridge](https://docs.aws.amazon.com/health/latest/ug/cloudwatch-events-health.html)를 참조하세요.

예약된 이벤트는 AWS에서 관리합니다. 인스턴스에 대한 이벤트를 예약할 수 없습니다. 그러나 다음을 수행할 수 있습니다.
+ 인스턴스에 대해 예약된 이벤트를 확인합니다.
+ 이메일 알림에서 태그를 포함하거나 제거하도록 예약된 이벤트 알림을 사용자 지정합니다.
+ 예약된 특정 이벤트를 다시 예약합니다.
+ 예약된 이벤트에 대한 사용자 지정 이벤트 기간을 생성합니다.
+ 인스턴스가 재부팅, 중지 또는 사용 중지되도록 예약된 경우 관련 작업을 수행합니다.

예약된 이벤트 알림을 수신하는지 확인하려면 [계정](https://console.aws.amazon.com/billing/home?#/account) 페이지에서 연락처 정보를 확인합니다.

**참고**  
인스턴스가 예약된 이벤트의 영향을 받고 Auto Scaling 그룹의 일부인 경우 Amazon EC2 Auto Scaling은 결국 상태 확인의 일부로 인스턴스를 대체하며, 추가 작업이 필요하지 않습니다. Amazon EC2 Auto Scaling이 수행하는 상태 확인에 대한 자세한 내용은 *Amazon EC2 Auto Scaling 사용 설명서*의 [Auto Scaling 그룹의 인스턴스에 대한 상태 확인](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-health-checks.html)을 참조하세요.

## 예약된 이벤트 유형


Amazon EC2는 예약된 시간에 이벤트가 발생하는 인스턴스에 대해 다음과 같은 유형의 예약된 이벤트를 생성할 수 있습니다.


| 이벤트 유형 | 이벤트 코드 | 이벤트 작업 | 
| --- | --- | --- | 
| 인스턴스 중지 | instance-stop | 예약된 시간에 인스턴스가 중지됩니다. 인스턴스를 다시 시작하면 새 호스트로 마이그레이션됩니다. Amazon EBS 루트 볼륨이 있는 인스턴스에만 적용됩니다. | 
| 인스턴스 만료 | instance-retirement | 예약된 시간에 Amazon EBS 루트 볼륨이 있는 경우 인스턴스가 중지되고, 인스턴스 저장소 루트 볼륨이 있는 경우 인스턴스가 종료됩니다. | 
| 인스턴스 재부팅 | instance-reboot | 예약된 시간에 인스턴스가 재부팅됩니다. 인스턴스는 호스트에 남아 있으며 재부팅 중에 호스트는 유지 관리 상태입니다. 이를 인플레이스 재부팅이라고 합니다. | 
| 시스템 재부팅 | system-reboot | 예약된 시간에 인스턴스는 재부팅되고 새 호스트로 마이그레이션됩니다. 이를 재부팅 마이그레이션이라고 합니다. | 
| 시스템 유지 관리 | system-maintenance | 예약된 시간에 네트워크 또는 전력 유지 관리로 인스턴스가 일시적인 영향을 받을 수 있습니다. | 

## 이벤트 유형 결정


인스턴스에 대해 예약된 이벤트 유형을 확인할 수 있습니다.

------
#### [ Console ]

**이벤트 유형을 확인하는 방법**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 [**이벤트(Events)**]를 선택합니다.

1. 표에서 **이벤트 유형** 열에 이벤트 코드가 나타납니다.

1. 인스턴스의 이벤트만 표시하도록 표를 필터링하려면 검색 필드의 필터 목록에서 **리소스 유형: 인스턴스**를 선택하세요.

------
#### [ AWS CLI ]

**인스턴스의 이벤트 유형을 확인하려면**  
[describe-instance-status](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instance-status.html) 명령을 사용합니다. 인스턴스에 연결된 예약된 이벤트가 있는 경우 출력은 예약된 이벤트에 대한 정보를 제공합니다.

```
aws ec2 describe-instance-status \
    --instance-id i-1234567890abcdef0 \
    --query InstanceStatuses[].Events
```

다음은 예제 출력입니다. 예약된 이벤트 코드는 `system-reboot`입니다.

```
[
    "Events": [
        {
            "InstanceEventId": "instance-event-0d59937288b749b32",
            "Code": "system-reboot",
            "Description": "The instance is scheduled for a reboot",
            "NotAfter": "2020-03-14T22:00:00.000Z",
            "NotBefore": "2020-03-14T20:00:00.000Z",
            "NotBeforeDeadline": "2020-04-05T11:00:00.000Z"
        }
    ]
]
```

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

**인스턴스의 이벤트 유형을 확인하려면**  
[Get-EC2InstanceStatus](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2InstanceStatus.html) cmdlet을 사용합니다. 인스턴스에 연결된 예약된 이벤트가 있는 경우 출력은 예약된 이벤트에 대한 정보를 제공합니다.

```
(Get-EC2InstanceStatus `
    -InstanceId i-1234567890abcdef0).Events
```

다음은 예제 출력입니다. 예약된 이벤트 코드는 `system-reboot`입니다.

```
Code              : system-reboot
Description       : The instance is scheduled for a reboot
InstanceEventId   : instance-event-0d59937288b749b32
NotAfter          : 2020-03-14T22:00:00.000Z
NotBefore         : 2020-03-14T20:00:00.000Z
NotBeforeDeadline : 2020-04-05T11:00:00.000Z
```

------

**Topics**
+ [

## 예약된 이벤트 유형
](#types-of-scheduled-events)
+ [

## 이벤트 유형 결정
](#scheduled-event-type)
+ [

# 중지 또는 사용 중지하도록 Amazon EC2 인스턴스 관리
](schedevents_actions_retire.md)
+ [

# 재부팅하도록 예약된 Amazon EC2 인스턴스 관리
](schedevents_actions_reboot.md)
+ [

# 유지 관리를 위해 예약된 Amazon EC2 인스턴스 관리
](schedevents_actions_maintenance.md)
+ [

# Amazon EC2 인스턴스에 영향을 미치는 예약된 이벤트 보기
](viewing_scheduled_events.md)
+ [

# EC2 인스턴스에 대한 예약된 이벤트 알림 사용자 지정
](customizing_scheduled_event_notifications.md)
+ [

# EC2 인스턴스에 대해 예약된 이벤트 다시 예약
](reschedule-event.md)
+ [

# Amazon EC2 인스턴스에 영향을 미치는 예약된 이벤트에 대한 사용자 지정 이벤트 기간 생성
](event-windows.md)

# 중지 또는 사용 중지하도록 Amazon EC2 인스턴스 관리
중지 또는 사용 중지하도록 예약된 인스턴스 관리

AWS가 인스턴스의 기본 호스트에서 복구 불가능한 결함을 감지하면 인스턴스의 루트 볼륨 유형에 따라 인스턴스의 중지 또는 종료를 예약합니다.
+ 인스턴스에 Amazon EBS 루트 볼륨이 있는 경우 인스턴스 중지가 예약됩니다.
+ 인스턴스에 인스턴스 저장소 루트 볼륨이 있는 경우 인스턴스 종료가 예약됩니다.

자세한 내용은 [인스턴스 만료](instance-retirement.md) 섹션을 참조하세요.

**중요**  
인스턴스가 중단되거나 최대 절전 모드로 전환되거나 종료되면 인스턴스 저장소 볼륨에 저장되었던 데이터는 모두 삭제됩니다. 여기에는 EBS 루트 볼륨이 있는 인스턴스에 연결된 인스턴스 저장소 볼륨도 포함됩니다. 따라서 인스턴스 저장소 볼륨에서 나중에 필요한 데이터는 인스턴스가 중단되거나 최대 절전 모드로 전환되거나 종료되기 전에 반드시 저장해야 합니다.

## 수행할 수 있는 작업


**EBS 루트 볼륨이 있는 인스턴스에서 수행할 수 있는 작업**

예약된 `instance-stop` 이벤트 알림을 수신하면 다음 작업 중 하나를 수행할 수 있습니다.
+ **예약된 중지 대기:** 예약된 유지 관리 기간에 인스턴스가 중지될 때까지 기다릴 수 있습니다.
+ **수동 중지 및 시작 수행:** 사용자에게 편한 시간에 직접 인스턴스를 중지하고 시작할 수 있으며, 이때 인스턴스는 새 호스트로 마이그레이션됩니다. 이는 인스턴스 재부팅과 동일하지 않습니다. 자세한 내용은 [Amazon EC2 인스턴스 중지 및 시작](Stop_Start.md) 섹션을 참조하세요.
+ **중지 및 시작 자동화:** 예약된 `instance-stop` 이벤트에 대한 응답으로 즉시 중지 및 시작을 자동화할 수 있습니다. 자세한 내용은 *AWS Health 사용 설명서*의 [AWS Health에서 이벤트에 대한 응답으로 EC2 인스턴스에서 자동으로 작업 실행](https://docs.aws.amazon.com/health/latest/ug/automating-instance-actions.html)을 참조하세요.

**인스턴스 저장소 루트 볼륨이 있는 인스턴스에서 수행할 수 있는 작업**

예약된 `system-retirement` 이벤트 알림을 수신한 경우 데이터를 유지하려면 다음 작업을 수행할 수 있습니다.

1. 최신 AMI에서 대체 인스턴스를 시작하세요.

1. 인스턴스 종료를 예약하기 전에 필요한 모든 데이터를 대체 인스턴스로 마이그레이션하세요.

1. 원본 인스턴스를 종료하거나 예약한 대로 종료될 때까지 기다리세요.

수행할 수 있는 작업에 대한 자세한 내용은 [인스턴스 만료](instance-retirement.md) 섹션을 참조하세요.

# 재부팅하도록 예약된 Amazon EC2 인스턴스 관리
재부팅이 예약된 인스턴스 관리

AWS가 업데이트 설치나 기본 호스트 유지 관리 등의 작업을 수행해야 하는 경우 인스턴스 재부팅을 예약할 수 있습니다. 예약된 재부팅 중에 인스턴스는 다음과 같이 이벤트에 따라 동일한 호스트에서 유지되거나 다른 호스트로 마이그레이션됩니다.
+ `instance-reboot` 이벤트를 트리거합니다
  + 재부팅하는 동안 인스턴스는 호스트에 남아 있습니다. 이를 *인플레이스 재부팅*이라고 합니다.
  + 현재 호스트가 유지 관리를 수행합니다.
  + 일반적으로 몇 초 만에 완료됩니다.
+ `system-reboot` 이벤트를 트리거합니다
  + 재부팅 중에 인스턴스는 새 호스트로 마이그레이션됩니다. 이를 *재부팅 마이그레이션*이라고 합니다.
  + 일반적으로 몇 분 안에 완료됩니다.

인스턴스에 대해 예약된 이벤트 유형을 확인하려면 [이벤트 유형 결정](monitoring-instances-status-check_sched.md#scheduled-event-type) 섹션을 참조하세요.

## 수행할 수 있는 작업


예약된 `instance-reboot` 또는 `system-reboot` 이벤트 알림을 수신하면 다음 작업 중 하나를 수행할 수 있습니다.
+ **예약된 재부팅 대기:** 예약된 유지 관리 기간에 인스턴스 재부팅이 수행될 때까지 기다릴 수 있습니다.
+ **재부팅 다시 예약:** 사용자에게 편한 날짜 및 시간으로 인스턴스 재부팅을 [다시 예약](reschedule-event.md)할 수 있습니다.
+ **사용자 시작 재부팅 수행:** 사용자에게 편한 시간에 인스턴스를 직접 수동으로 [재부팅](ec2-instance-reboot.md)할 수 있습니다. 그러나 결과는 이벤트에 따라 달라집니다.
  + `instance-reboot` 이벤트 - 인스턴스가 현재 하드웨어에 남아 있고(인플레이스 재부팅), 호스트 유지 관리가 수행되지 않으며, 이벤트가 열린 상태로 유지됩니다.
  + `system-reboot` 이벤트를 트리거합니다
    + 인스턴스에서 재부팅 마이그레이션이 활성화된 경우 사용자 시작 재부팅은 인스턴스를 새 하드웨어로 마이그레이션하려고 시도합니다. 성공하면 이벤트가 지워집니다. 실패하면 인플레이스 재부팅이 발생하고 이벤트는 예약된 상태로 유지됩니다.
    + 인스턴스에서 재부팅 마이그레이션이 비활성화된 경우 사용자 시작 재부팅은 인스턴스를 동일한 하드웨어에 유지하고(인플레이스 재부팅), 호스트 유지 관리가 수행되지 않으며, 이벤트는 예약된 상태로 유지됩니다. 예약된 이벤트가 최종적으로 발생하면 AWS는 인스턴스를 새 하드웨어로 이동합니다(재부팅 마이그레이션).

**AWS에서 인스턴스를 재부팅한 후**

AWS에서 인스턴스를 재부팅한 후 다음이 적용됩니다.
+ 예약된 이벤트가 지워집니다.
+ 이벤트 설명이 업데이트됩니다.
+ `instance-reboot` 이벤트의 경우:
  + 기본 호스트의 유지 관리가 완료됩니다.
+ `system-reboot` 이벤트의 경우:
  + 인스턴스가 새 호스트로 이동합니다.
  + 인스턴스는 IP 주소 및 DNS 이름을 유지합니다.
  + 로컬 인스턴스 저장소 볼륨의 모든 데이터는 보존됩니다.
+ 인스턴스가 완전히 부팅된 후에 인스턴스를 사용할 수 있습니다.

**대체 옵션**

사용자 시작 재부팅의 경우 재부팅 이벤트를 다시 예약하거나 재부팅 마이그레이션을 활성화할 수 없지만 예약된 유지 관리 기간에 정상 작업을 유지하려면 다음을 수행할 수 있습니다.
+ **EBS 루트 볼륨이 있는 인스턴스의 경우**
  + 수동으로 인스턴스를 중지한 후 시작해 새 호스트로 마이그레이션합니다. 이는 인스턴스 수동 재부팅(인스턴스가 동일한 호스트에서 유지됨)과 동일하지 않습니다.
  + 선택적으로 예약된 재부팅 이벤트에 대한 응답으로 즉시 인스턴스 중지 및 시작을 자동화합니다. 자세한 내용은 *AWS Health 사용 설명서*의 [AWS Health에서 이벤트에 대한 응답으로 EC2 인스턴스에서 자동으로 작업 실행](https://docs.aws.amazon.com/health/latest/ug/automating-instance-actions.html)을 참조하세요.
**중요**  
인스턴스가 중지되면 인스턴스 저장소 볼륨의 데이터가 유실됩니다. 자세한 내용은 [Amazon EC2 인스턴스 중지 및 시작](Stop_Start.md) 섹션을 참조하세요.
+ **인스턴스 저장소 루트 볼륨이 있는 인스턴스의 경우**

  1. 최신 AMI에서 대체 인스턴스를 시작하세요.

  1. 예약된 유지 관리 기간 전에 필요한 모든 데이터를 대체 인스턴스로 마이그레이션하세요.

  1. 원래 인스턴스를 종료하세요.

## 재부팅 마이그레이션 활성화 또는 비활성화


인스턴스가 `system-reboot` 이벤트에 예약되면 이벤트 전에 인스턴스를 재부팅할 수 있습니다. 사용자 시작 재부팅의 결과는 인스턴스의 재부팅 마이그레이션 설정에 따라 달라집니다.
+ 활성화됨 - 사용자 시작 재부팅이 인스턴스를 새 하드웨어로 마이그레이션하려고 시도합니다(재부팅 마이그레이션). 성공하면 이벤트가 지워집니다. 실패하면 인플레이스 재부팅이 발생하고 이벤트는 예약된 상태로 유지됩니다. 활성화한 경우에도 인스턴스가 [재부팅 마이그레이션 요구 사항](#requirements-for-reboot-migration)을 충족하는 경우에만 재부팅 마이그레이션이 발생할 수 있습니다.
+ 비활성화됨 - 사용자 시작 재부팅은 인스턴스를 동일한 하드웨어에 유지하고(인플레이스 재부팅), 호스트 유지 관리가 수행되지 않으며, 이벤트는 예약된 상태로 유지됩니다. 예약된 이벤트가 최종적으로 발생하면 AWS는 인스턴스를 새 하드웨어로 이동합니다(재부팅 마이그레이션).

마이그레이션을 포함한 재부팅은 인플레이스 재부팅보다 오래 걸립니다.
+ 인플레이스 재부팅: 약 30초
+ 마이그레이션을 포함한 재부팅: 몇 분

**참고**  
사용자 시작 재부팅 마이그레이션의 경우 `system-reboot` 이벤트 알림을 수신하는 인스턴스가 기본적으로 활성화됩니다.

### 재부팅 마이그레이션 활성화 요구 사항


다음 기준을 충족하는 인스턴스에서 재부팅 마이그레이션을 활성화할 수 있습니다.

**인스턴스 유형**  
모든 인스턴스 유형이 재부팅 마이그레이션 활성화를 지원하는 것은 아닙니다. 재부팅 마이그레이션 활성화를 지원하는 인스턴스 유형을 볼 수 있습니다.  

**재부팅 마이그레이션 활성화를 지원하는 인스턴스 유형을 보려면**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 왼쪽 탐색 창에서 **인스턴스 유형(Instance Types)**을 선택합니다.

1. 필터 표시줄에 **Reboot Migration support: supported**를 입력합니다. 문자를 입력할 때 필터 이름이 나타나면 해당 필터 이름을 선택할 수 있습니다.

   **인스턴스 유형** 테이블에 재부팅 마이그레이션 활성화를 지원하는 모든 인스턴스 유형이 표시됩니다.
**재부팅 마이그레이션 활성화를 지원하는 인스턴스 유형을 보려면**  
[describe-instance-types](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instance-types.html) 명령을 `reboot-migration-support` 필터와 함께 사용합니다.

```
aws ec2 describe-instance-types \
    --filters Name=reboot-migration-support,Values=supported \
    --query "InstanceTypes[*].[InstanceType]" \
    --output text | sort
```
**재부팅 마이그레이션 활성화를 지원하는 인스턴스 유형을 보려면**  
[Get-EC2InstanceType](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2InstanceType.html) cmdlet을 `reboot-migration-support` 필터와 함께 사용합니다.

```
Get-EC2InstanceType `
    -Filter @{Name="reboot-migration-support";Values="true"} | `
    Select InstanceType | Sort-Object InstanceType
```

**Tenancy**  
+ 공유
+ Dedicated Instance
자세한 내용은 [Amazon EC2 전용 인스턴스](dedicated-instance.md) 섹션을 참조하세요.

**제한 사항 **

다음과 같은 특성을 가진 인스턴스에는 재부팅 마이그레이션이 지원되지 **않습니다**.
+ 플랫폼: Xen 하이퍼바이저에서 기본적으로 실행되는 인스턴스
+ 인스턴스 크기: `metal` 인스턴스
+ 테넌시: 전용 호스트. 전용 호스트의 경우 [전용 호스트 자동 복구](dedicated-hosts-recovery.md)를 대신 사용합니다.
+ 스토리지: 인스턴스 저장소 볼륨이 있는 인스턴스
+ 네트워킹: Elastic Fabric Adapter를 사용하는 인스턴스
+ Auto Scaling: Auto Scaling 그룹에 포함된 인스턴스

### 재부팅 마이그레이션 활성화 또는 비활성화 단계


인스턴스는 `system-reboot` 이벤트를 수신하면 기본적으로 재부팅 마이그레이션이 활성화됩니다. 사용자 시작 재부팅 중에 인스턴스가 동일한 하드웨어에 유지되도록 재부팅 마이그레이션을 비활성화할 수 있습니다(인플레이스 재부팅).

`default` 구성은 지원되지 않는 인스턴스의 재부팅 마이그레이션을 활성화하지 않습니다. 자세한 내용은 [재부팅 마이그레이션 활성화 요구 사항](#requirements-for-reboot-migration) 섹션을 참조하세요.

실행 중이거나 중지된 인스턴스에서 재부팅 마이그레이션을 비활성화하거나 활성화할 수 있습니다.

------
#### [ AWS CLI ]

**재부팅 마이그레이션을 비활성화하려면**  
[modify-instance-maintenance-options](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-instance-maintenance-options.html) 명령을 사용하고 `--reboot-migration` 파라미터를 `disabled`로 설정합니다.

```
aws ec2 modify-instance-maintenance-options \ 
    --instance-id i-0abcdef1234567890 \ 
    --reboot-migration disabled
```

**재부팅 마이그레이션을 활성화하려면**  
[modify-instance-maintenance-options](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-instance-maintenance-options.html) 명령을 사용하고 `--reboot-migration` 파라미터를 `default`로 설정합니다.

```
aws ec2 modify-instance-maintenance-options \ 
    --instance-id i-0abcdef1234567890 \ 
    --reboot-migration default
```

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

**재부팅 마이그레이션을 비활성화하려면**  
[Edit-EC2InstanceMaintenanceOption](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2InstanceMaintenanceOption.html) cmdlet을 사용합니다.

```
Edit-EC2InstanceMaintenanceOption `
    -InstanceId  `
    -RebootMigration Disabled
```

**재부팅 마이그레이션을 활성화하려면**  
[Edit-EC2InstanceMaintenanceOption](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2InstanceMaintenanceOption.html) cmdlet을 사용합니다.

```
Edit-EC2InstanceMaintenanceOption `
    -InstanceId i-1234567890abcdef0 `
    -RebootMigration Enabled
```

------

# 유지 관리를 위해 예약된 Amazon EC2 인스턴스 관리
유지 관리를 위해 예약된 인스턴스 작업

AWS에서 인스턴스의 기본 호스트를 유지 관리해야 하는 경우 인스턴스의 유지 관리가 예약됩니다. 유지 관리 유형은 네트워크 유지 관리와 전력 유지 관리, 두 가지입니다.
+ 네트워크 유지 관리 시에는 예약된 인스턴스의 네트워크 연결이 잠시 동안 끊어집니다. 유지 관리가 완료되면 인스턴스의 네트워크 연결이 평소처럼 복구됩니다.
+ 전력 유지 관리 시에는 예약된 인스턴스가 잠시 동안 오프라인 상태로 전환되었다가 재부팅됩니다. 재부팅 이후에도 인스턴스의 모든 구성 설정은 그대로 유지됩니다.

약 몇 분 후에 인스턴스가 재부팅되면 애플리케이션이 정상적으로 작동하는지 확인하도록 합니다. 이때 인스턴스에 더 이상 예약된 이벤트가 없거나, 있는 경우 예약된 이벤트가 **[완료]**로 표시됩니다. 인스턴스 상태 설명을 새로 고치는 데 최대 1시간이 걸리는 경우도 있습니다. 완료된 유지 관리 이벤트는 Amazon EC2 콘솔 대시보드에 일주일까지 표시됩니다.

## 수행할 수 있는 작업


**EBS 루트 볼륨이 있는 인스턴스에서 수행할 수 있는 작업**

`system-maintenance` 이벤트 알림을 수신하면 다음 작업 중 하나를 수행할 수 있습니다.
+ **예약된 유지 관리 대기:** 유지 관리가 예약된 대로 수행될 때까지 기다릴 수 있습니다.
+ **수동 중지 및 시작 수행:** 사용자가 인스턴스를 중지하고 시작할 수 있으며, 이때 인스턴스는 새 호스트로 마이그레이션됩니다. 이는 인스턴스 재부팅과 동일하지 않습니다. 자세한 내용은 [Amazon EC2 인스턴스 중지 및 시작](Stop_Start.md) 섹션을 참조하세요.
+ **중지 및 시작 자동화:** 예약된 유지 관리 이벤트에 대한 응답으로 즉시 중지 및 시작을 자동화할 수 있습니다. 자세한 내용은 *AWS Health 사용 설명서*의 [AWS Health에서 이벤트에 대한 응답으로 EC2 인스턴스에서 자동으로 작업 실행](https://docs.aws.amazon.com/health/latest/ug/automating-instance-actions.html)을 참조하세요.

**인스턴스 저장소 루트 볼륨이 있는 인스턴스에서 수행할 수 있는 작업**

`system-maintenance` 이벤트 알림을 수신하면 다음 작업 중 하나를 수행할 수 있습니다.
+ **예약된 유지 관리 대기:** 유지 관리가 예약된 대로 수행될 때까지 기다릴 수 있습니다.
+ **대체 인스턴스 시작:** 예약된 유지 관리 기간에 정상 작업을 유지하는 방법:

  1. 최신 AMI에서 대체 인스턴스를 시작하세요.

  1. 예약된 유지 관리 기간 전에 필요한 모든 데이터를 대체 인스턴스로 마이그레이션하세요.

  1. 원래 인스턴스를 종료하세요.

# Amazon EC2 인스턴스에 영향을 미치는 예약된 이벤트 보기
예약된 이벤트 보기

예약된 이벤트에 대한 알림 메시지를 이메일로 받는 것 외에도, 예약된 이벤트를 확인할 수 있습니다.

------
#### [ Console ]

**인스턴스에 예약된 이벤트를 확인하는 방법**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 대시보드에 **예약된 이벤트** 아래에 연결된 이벤트가 있는 모든 리소스가 표시됩니다.  
![\[대시보드를 통한 이벤트 확인\]](http://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/images/dashboard-scheduled-events.png)

1. 자세한 내용은 탐색 창에서 **이벤트**를 선택하세요. 연결된 이벤트가 있는 모든 리소스가 표시됩니다. 이벤트 유형, 리소스 유형 및 가용 영역 등의 특징을 기준으로 필터링할 수 있습니다.  
![\[이벤트 페이지를 통한 이벤트 확인\]](http://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/images/events-instance-scheduled-stop.png)

------
#### [ AWS CLI ]

**인스턴스에 예약된 이벤트를 확인하는 방법**  
[describe-instance-status](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instance-status.html) 명령을 사용합니다.

```
aws ec2 describe-instance-status \
    --instance-id i-1234567890abcdef0 \
    --query "InstanceStatuses[].Events"
```

다음 예제 출력은 재부팅 이벤트를 보여줍니다.

```
[
    "Events": [
        {
            "InstanceEventId": "instance-event-0d59937288b749b32",
            "Code": "system-reboot",
            "Description": "The instance is scheduled for a reboot",
            "NotAfter": "2019-03-15T22:00:00.000Z",
            "NotBefore": "2019-03-14T20:00:00.000Z",
            "NotBeforeDeadline": "2019-04-05T11:00:00.000Z"
         }

    ]
]
```

다음 예제 출력은 인스턴스 만료 이벤트를 표시합니다.

```
[
    "Events": [
        {
            "InstanceEventId": "instance-event-0e439355b779n26",                        
            "Code": "instance-stop",
            "Description": "The instance is running on degraded hardware",
            "NotBefore": "2015-05-23T00:00:00.000Z"
        }
    ]
]
```

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

**인스턴스에 예약된 이벤트를 확인하는 방법**  
다음 [Get-EC2InstanceStatus](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2InstanceStatus.html) 명령을 사용합니다.

```
(Get-EC2InstanceStatus -InstanceId i-1234567890abcdef0).Events
```

다음 예제 출력은 인스턴스 만료 이벤트를 표시합니다.

```
Code         : instance-stop
Description  : The instance is running on degraded hardware
NotBefore    : 5/23/2015 12:00:00 AM
```

------
#### [ Instance metadata ]

**인스턴스 메타데이터를 사용해 인스턴스에 예약된 이벤트를 확인하는 방법**  
인스턴스 메타데이터 서비스 버전 2 또는 인스턴스 메타데이터 서비스 버전 1을 사용하여 [인스턴스 메타데이터](ec2-instance-metadata.md)에서 인스턴스에 대해 활성화된 유지 관리 이벤트 정보를 검색할 수 있습니다.

**IMDSv2**

```
[ec2-user ~]$ TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \
&& curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/events/maintenance/scheduled
```

**IMDSv1**

```
[ec2-user ~]$ curl http://169.254.169.254/latest/meta-data/events/maintenance/scheduled
```

다음은 예약된 시스템 재부팅 이벤트에 관한 정보를 JSON 형식으로 표시하는 예제 출력입니다.

```
[ 
  {
    "NotBefore" : "21 Jan 2019 09:00:43 GMT",
    "Code" : "system-reboot",
    "Description" : "scheduled reboot",
    "EventId" : "instance-event-0d59937288b749b32",
    "NotAfter" : "21 Jan 2019 09:17:23 GMT",
    "State" : "active"
  } 
]
```

**인스턴스 메타데이터를 사용하여 인스턴스에 대해 완료되거나 취소된 이벤트 관련 이벤트 기록을 확인하는 방법**  
인스턴스 메타데이터 서비스 버전 2 또는 인스턴스 메타데이터 서비스 버전 1을 사용하여 [인스턴스 메타데이터](ec2-instance-metadata.md)에서 인스턴스에 대해 완료되거나 취소된 이벤트 관련 정보를 검색할 수 있습니다.

**IMDSv2**

```
[ec2-user ~]$ TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \
&& curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/events/maintenance/history
```

**IMDSv1**

```
[ec2-user ~]$ curl http://169.254.169.254/latest/meta-data/events/maintenance/history
```

다음은 취소된 시스템 재부팅 이벤트와 완료된 시스템 재부팅 이벤트 관련 정보를 JSON 형식으로 표현하는 예제 출력입니다.

```
[ 
  {
    "NotBefore" : "21 Jan 2019 09:00:43 GMT",
    "Code" : "system-reboot",
    "Description" : "[Canceled] scheduled reboot",
    "EventId" : "instance-event-0d59937288b749b32",
    "NotAfter" : "21 Jan 2019 09:17:23 GMT",
    "State" : "canceled"
  }, 
  {
    "NotBefore" : "29 Jan 2019 09:00:43 GMT",
    "Code" : "system-reboot",
    "Description" : "[Completed] scheduled reboot",
    "EventId" : "instance-event-0d59937288b749b32",
    "NotAfter" : "29 Jan 2019 09:17:23 GMT",
    "State" : "completed"
  }
]
```

------
#### [ AWS Health ]

AWS Health Dashboard을(를) 사용하여 인스턴스에 영향을 줄 수 있는 이벤트에 대해 알아볼 수 있습니다. Health Dashboard는 미해결 문제, 예약된 변경, 기타 알림이라는 세 그룹으로 문제를 정리합니다. 예약된 변경 그룹에는 진행 중이거나 예정된 항목이 포함됩니다.

자세한 내용은 *AWS Health 사용 설명서*의 [AWS Health Dashboard 시작하기](https://docs.aws.amazon.com/health/latest/ug/getting-started-health-dashboard.html)를 참조하세요.

------

# EC2 인스턴스에 대한 예약된 이벤트 알림 사용자 지정
예약된 이벤트 알림 사용자 지정

이메일 알림에 태그를 포함하도록 예약된 이벤트 알림을 사용자 지정할 수 있습니다. 이렇게 하면 영향을 받는 리소스(인스턴스 또는 전용 호스트)를 더 쉽게 식별하고 다가오는 이벤트에 대한 작업의 우선순위를 지정할 수 있습니다.

태그를 포함하도록 이벤트 알림을 사용자 지정할 때 다음을 포함하도록 선택할 수 있습니다.
+ 영향을 받는 리소스와 연결된 모든 태그
+ 영향을 받는 리소스와 연결된 특정 태그만

예를 들어 모든 인스턴스에 `application`, `costcenter`, `project` 및 `owner` 태그를 할당하는 경우, 이벤트 알림에 이러한 모든 태그를 포함하도록 선택하거나 이벤트 알림에 `owner` 및 `project` 태그만 표시하기 위해 이러한 태그만 포함하도록 선택할 수 있습니다.

포함할 태그를 선택하면 이벤트 알림에 영향을 받는 리소스와 연결된 리소스 ID(인스턴스 전용 호스트 ID 또는 ID)와 태그 키 및 값 페어가 포함됩니다.

**Topics**
+ [

## 이벤트 알림에 태그 포함
](#register-tags)
+ [

## 이벤트 알림에서 태그 제거
](#deregister-tags)
+ [

## 이벤트 알림에 포함할 태그 보기
](#view-tags)

## 이벤트 알림에 태그 포함


포함하도록 선택한 태그는 선택한 리전의 모든 리소스(인스턴스 및 전용 호스트)에 적용됩니다. 다른 리전에서 이벤트 알림을 사용자 지정하려면 먼저 필요한 리전을 선택한 후 다음 단계를 수행합니다.

------
#### [ Console ]

**이벤트 알림에 태그를 포함하려면**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 [**Events**]를 선택합니다.

1. **작업**, **Manage event notifications(이벤트 알림 관리)**를 선택합니다.

1. **이벤트 알림에 태그 포함**을 켭니다.

1. 이벤트 알림에 포함할 태그에 따라 다음 중 하나를 수행합니다.
   + 영향을 받는 인스턴스 또는 전용 호스트와 연결된 모든 태그를 포함하려면 **모든 태그 포함**을 선택합니다.
   + 포함할 태그를 선택하려면 **포함할 태그 선택**을 선택한 다음 태그 키를 선택하거나 입력합니다.

1. **저장**(Save)을 선택합니다.

------
#### [ AWS CLI ]

**이벤트 알림에 모든 태그를 포함하려면**  
[register-instance-event-notification-attributes](https://docs.aws.amazon.com/cli/latest/reference/ec2/register-instance-event-notification-attributes.html) 명령을 사용하고 `IncludeAllTagsOfInstance` 파라미터를 `true`로 설정합니다.

```
aws ec2 register-instance-event-notification-attributes \
    --instance-tag-attribute "IncludeAllTagsOfInstance=true"
```

**이벤트 알림에 특정 태그를 포함하려면**  
[register-instance-event-notification-attributes](https://docs.aws.amazon.com/cli/latest/reference/ec2/register-instance-event-notification-attributes.html) 명령을 사용하고 `InstanceTagKeys` 파라미터를 사용하여 포함할 태그를 지정합니다.

```
aws ec2 register-instance-event-notification-attributes \
    --instance-tag-attribute 'InstanceTagKeys=["tag_key_1", "tag_key_2", "tag_key_3"]'
```

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

**이벤트 알림에 모든 태그를 포함하려면**  
[Register-EC2InstanceEventNotificationAttribute](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2InstanceEventNotificationAttribute.html) cmdlet을 사용합니다.

```
Register-EC2InstanceEventNotificationAttribute `
    -InstanceTagAttribute_IncludeAllTagsOfInstance $true
```

**이벤트 알림에 특정 태그를 포함하려면**  
[Register-EC2InstanceEventNotificationAttribute](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2InstanceEventNotificationAttribute.html) cmdlet을 사용합니다.

```
Register-EC2InstanceEventNotificationAttribute `
    -InstanceTagAttribute_InstanceTagKey tag_key_1, tag_key_2, tag_key_3
```

------

## 이벤트 알림에서 태그 제거


이벤트 알림에서 태그를 제거할 수 있습니다.

------
#### [ Console ]

**이벤트 알림에서 태그를 제거하려면**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 [**Events**]를 선택합니다.

1. **작업**, **Manage event notifications(이벤트 알림 관리)**를 선택합니다.

1. 이벤트 알림에서 모든 태그를 제거하려면 **이벤트 알림에 태그 포함**을 끕니다.

1. 이벤트 알림에서 특정 태그를 제거하려면 해당 태그 키에 대해 **X**를 선택합니다.

1. **저장**(Save)을 선택합니다.

------
#### [ AWS CLI ]

**이벤트 알림에서 모든 태그를 제거하려면**  
[deregister-instance-event-notification-attributes](https://docs.aws.amazon.com/cli/latest/reference/ec2/deregister-instance-event-notification-attributes.html) 명령을 사용하고 `IncludeAllTagsOfInstance` 파라미터를 `false`로 설정합니다.

```
aws ec2 deregister-instance-event-notification-attributes \
    --instance-tag-attribute "IncludeAllTagsOfInstance=false"
```

**이벤트 알림에서 태그를 제거하려면**  
[deregister-instance-event-notification-attributes](https://docs.aws.amazon.com/cli/latest/reference/ec2/deregister-instance-event-notification-attributes.html) 명령을 사용하고 `InstanceTagKeys` 파라미터를 사용하여 제거할 태그를 지정합니다.

```
aws ec2 deregister-instance-event-notification-attributes \
    --instance-tag-attribute 'InstanceTagKeys=["tag_key_3"]'
```

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

**이벤트 알림에서 모든 태그를 제거하려면**  
[Unregister-EC2InstanceEventNotificationAttribute](https://docs.aws.amazon.com/powershell/latest/reference/items/Unregister-EC2InstanceEventNotificationAttribute.html) cmdlet을 사용합니다.

```
Unregister-EC2InstanceEventNotificationAttribute `
    -InstanceTagAttribute_IncludeAllTagsOfInstance $false
```

**이벤트 알림에서 태그를 제거하려면**  
[Unregister-EC2InstanceEventNotificationAttribute](https://docs.aws.amazon.com/powershell/latest/reference/items/Unregister-EC2InstanceEventNotificationAttribute.html) cmdlet을 사용합니다.

```
Unregister-EC2InstanceEventNotificationAttribute `
    -InstanceTagAttribute_InstanceTagKey tag_key_3
```

------

## 이벤트 알림에 포함할 태그 보기


이벤트 알림에 포함할 태그를 볼 수 있습니다.

------
#### [ Console ]

**이벤트 알림에 포함할 태그를 보려면**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 [**Events**]를 선택합니다.

1. **작업**, **Manage event notifications(이벤트 알림 관리)**를 선택합니다.

------
#### [ AWS CLI ]

**이벤트 알림에 포함할 태그를 보는 방법**  
[describe-instance-event-notification-attributes](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instance-event-notification-attributes.html) 명령을 사용합니다.

```
aws ec2 describe-instance-event-notification-attributes
```

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

**이벤트 알림에 포함할 태그를 보는 방법**  
[Get-EC2InstanceEventNotificationAttribute](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2InstanceEventNotificationAttribute.html) cmdlet을 사용합니다.

```
Get-EC2InstanceEventNotificationAttribute
```

------

# EC2 인스턴스에 대해 예약된 이벤트 다시 예약
예약된 이벤트 다시 예약

이벤트가 적합한 특정 날짜와 시간에 발생하도록 다시 예약할 수 있습니다. 이벤트를 다시 예약한 후 업데이트된 날짜가 표시되기까지 1\$12분이 걸릴 수 있습니다.

**제한 사항**
+ 이벤트 기한이 있는 이벤트만 다시 예약할 수 있습니다. 이 이벤트는 이벤트 기한까지 다시 예약될 수 있습니다. 이벤트 기한 날짜는 **기한** 열(콘솔) 및 `NotBeforeDeadline` 필드(AWS CLI)에 표시됩니다.
+ 아직 시작하지 않은 이벤트만 다시 예약할 수 있습니다. 시작 시간은 **시작 시간** 열(콘솔) 및 `NotBefore` 필드(AWS CLI)에 표시됩니다. 다음 5분 안에 시작하도록 예약된 이벤트는 다시 예약할 수 없습니다.
+ 새 이벤트 시작 시간은 현재 시간에서 최소 60분 내여야 합니다.
+ 콘솔을 사용하여 여러 이벤트를 다시 예약하는 경우 이벤트 기한은 가장 이른 이벤트 기한의 이벤트에 의해 결정됩니다.

------
#### [ Console ]

**이벤트를 다시 예약하는 방법**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 [**Events**]를 선택합니다.

1. 필터 목록에서 **리소스 유형: 인스턴스**를 선택합니다.

1. 하나 이상의 인스턴스를 선택한 다음 **작업**, **Schedule event(이벤트 예약)**를 선택합니다.

   **Deadline(기한)** 값으로 표시되는 이벤트 기한이 있는 이벤트만 다시 예약할 수 있습니다. 선택한 이벤트 중 하나에 기한 날짜가 없으면 **작업**, **Schedule event(이벤트 예약)**가 비활성화됩니다.

1. **New start time(새 시작 시간)**에 이벤트에 대한 새 날짜 및 시간을 입력합니다. 새 날짜 및 시간은 **Event deadline(이벤트 기한)** 이전이어야 합니다.

1. **저장**(Save)을 선택합니다.

   업데이트된 이벤트 시작 시간이 콘솔에 반영되려면 1\$12분이 걸릴 수 있습니다.

------
#### [ AWS CLI ]

**이벤트를 다시 예약하는 방법**  
[https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-instance-event-start-time.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-instance-event-start-time.html) 명령을 사용합니다.

```
aws ec2 modify-instance-event-start-time \
    --instance-id i-1234567890abcdef0 \
    --instance-event-id instance-event-0d59937288b749b32 \
    --not-before 2020-03-25T10:00:00.000
```

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

**이벤트를 다시 예약하는 방법**  
[Edit-EC2InstanceEventStartTime](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2InstanceEventStartTime.html) cmdlet을 사용합니다.

```
Edit-EC2InstanceEventStartTime `
    -InstanceId i-1234567890abcdef0 `
    -InstanceEventId instance-event-0d59937288b749b32 `
    -NotBefore 2020-03-25T10:00:00.000
```

------

# Amazon EC2 인스턴스에 영향을 미치는 예약된 이벤트에 대한 사용자 지정 이벤트 기간 생성
사용자 지정 이벤트 기간 생성

Amazon EC2 인스턴스를 재부팅, 중지 또는 종료하는 예약된 이벤트에 대해 매주 반복되는 사용자 지정 이벤트 기간을 정의할 수 있습니다. 하나 이상의 인스턴스를 이벤트 기간에 연결할 수 있습니다. 해당 인스턴스에 대해 예약된 이벤트가 계획되면 AWS는 관련 이벤트 기간 내에 이벤트를 예약합니다.

이벤트 기간을 사용하여 워크로드가 적은 기간 동안 발생하는 이벤트 기간을 지정하여 워크로드 가용성을 극대화할 수 있습니다. 또한 이벤트 기간을 내부 유지 관리 스케줄에 맞출 수도 있습니다.

시간 범위 세트를 지정하여 이벤트 기간을 정의합니다. 최소 시간 범위는 2시간입니다. 결합된 시간 범위는 최소 4시간 이상이어야 합니다.

인스턴스 ID 또는 인스턴스 태그를 사용하여 하나 이상의 인스턴스를 이벤트 기간에 연결할 수 있습니다. 호스트 ID를 사용하여 전용 호스트를 이벤트 기간에 연결할 수도 있습니다.

**주의**  
이벤트 기간은 인스턴스를 중지, 재부팅 또는 종료하는 예약된 이벤트에만 적용할 수 있습니다.  
다음에는 이벤트 기간을 적용할 수 없습니다.  
예약된 신속 이벤트 및 네트워크 유지 관리 이벤트.
[자동 인스턴스 복구](ec2-instance-recover.md) 및 계획되지 않은 재부팅과 같은 예약되지 않은 유지 관리.

**Topics**
+ [

## 고려 사항
](#event-windows-considerations)
+ [

## 이벤트 기간 생성
](#create-event-windows)
+ [

## 이벤트 기간에 대상 연결
](#associate-target-event-window)
+ [

## 이벤트 기간에서 대상 연결 해제
](#disassociate-target-event-window)
+ [

## 이벤트 기간 수정
](#modify-event-windows)
+ [

## 이벤트 기간 삭제
](#delete-event-windows)

## 고려 사항

+ 모든 이벤트 기간 시간은 UTC입니다.
+ 이벤트 기간은 여러 시간 범위를 포함할 수 있습니다. 각 개별 범위는 최소 2시간이어야 하지만 모든 범위의 총 기간은 최소 4시간이어야 합니다.
+ 하나의 대상 유형(인스턴스 ID, 전용 호스트 ID 또는 인스턴스 태그)만 이벤트 기간에 연결할 수 있습니다.
+ 대상(인스턴스 ID, 전용 호스트 ID 또는 인스턴스 태그)은 하나의 이벤트 기간에만 연결할 수 있습니다.
+ 이벤트 기간에는 최대 100개의 인스턴스 ID 또는 50개의 전용 호스트 ID 또는 50개의 인스턴스 태그를 연결할 수 있습니다. 인스턴스 태그는 제한 없이 원하는 수의 인스턴스에 연결할 수 있습니다.
+ AWS 리전당 최대 200개의 이벤트 기간을 생성할 수 있습니다.
+ 이벤트 기간에 연결된 여러 인스턴스에서 예약된 이벤트가 동시에 발생할 수 있습니다.
+ AWS가 이미 이벤트를 예약한 경우 이벤트 기간을 수정해도 예약된 이벤트의 시간은 변경되지 않습니다. 이벤트에 기한 날짜가 있는 경우 [이벤트 스케줄을 조정](reschedule-event.md)할 수 있습니다.
+ 예약된 이벤트 전에 인스턴스를 중지하고 시작할 수 있습니다. 그러면 인스턴스가 새 호스트로 마이그레이션되고 이벤트가 지워집니다.

## 이벤트 기간 생성


하나 이상의 이벤트 기간을 생성할 수 있습니다. 각 이벤트 기간에 대해 시간 블록을 하나 이상 지정합니다. 예를 들어 매일 오전 4시에 2시간 동안 발생하는 시간 블록으로 이벤트 기간을 생성할 수 있습니다. 또는 일요일 오전 2시\$1오전 4시 및 수요일 오전 3시\$1오전 5시에 발생하는 시간 블록으로 이벤트 기간을 생성할 수도 있습니다.

이벤트 기간은 사용자가 삭제할 때까지 매주 반복됩니다.

------
#### [ Console ]

**이벤트 기간을 생성하는 방법**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 [**Events**]를 선택합니다.

1. [**작업(Actions)**], [**Windows 이벤트 관리(Manage event windows)**]를 차례로 선택합니다.

1. [**인스턴스 이벤트 기간 생성(Create instance event window)**]을 선택합니다.

1. [**이벤트 기간 이름(Event window name)**]에 이벤트 기간을 설명하는 이름을 입력합니다.

1. [**이벤트 기간 일정(Event window schedule)**]에서 cron 일정 작성기를 사용하거나 시간 범위를 지정하여 이벤트 기간에서 시간 블록을 지정하도록 선택합니다.
   + [**Cron 일정 작성기(Cron schedule builder)**]를 선택한 경우 다음을 지정합니다.

     1. [**요일(UTC)(Days (UTC))**]에서 이벤트 기간이 발생하는 요일을 지정합니다.

     1. [**시작 시간(UTC)(Start time (UTC))**]에서 이벤트 기간이 시작되는 시간을 지정합니다.

     1. [**지속 시간(Duration)**]에서 이벤트 기간에 있는 시간 블록의 지속 시간을 지정합니다. 시간 블록당 최소 지속 시간은 2시간입니다. 이벤트 기간의 최소 지속 시간은 총 4시간 이상이어야 합니다. 모든 시간은 협정 세계시(UTC)입니다.
   + [**시간 범위(Time ranges)**]를 선택한 경우 [**새 시간 범위 추가(Add new time range)**]를 선택하고 시작 날짜 및 시간, 종료 날짜 및 시간을 지정합니다. 각 시간 범위에 대해 반복합니다. 시간 범위당 최소 지속 시간은 2시간입니다. 결합된 모든 시간 범위의 최소 지속 시간은 총 4시간 이상이어야 합니다.

1. (선택 사항) **대상 세부 정보**에서 하나 이상의 인스턴스를 이벤트 창에 연결하세요. 인스턴스 ID 또는 인스턴스 태그를 사용하여 인스턴스를 연결하세요. 호스트 ID를 사용하여 전용 호스트를 연결하세요. 유지 관리를 위해 이러한 대상이 예약되면 이 이벤트 기간에 이벤트가 발생합니다.

   대상을 기간에 연결하지 않고 이벤트 기간을 생성할 수도 있습니다. 나중에 기간을 수정하여 하나 이상의 대상을 연결할 수 있습니다.

1. (선택 사항) [**이벤트 기간 태그(Event window tags)**]에서 [**태그 추가(Add tag)**]를 선택하고 해당 태그의 키와 값을 입력합니다. 각 태그에 대해 반복합니다.

1. [**이벤트 기간 생성(Create event window)**]을 선택합니다.

------
#### [ AWS CLI ]

**시간 범위로 이벤트 기간을 생성하는 방법**  
[create-instance-event-window](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-instance-event-window.html) 명령을 사용합니다.

```
aws ec2 create-instance-event-window \
    --time-range StartWeekDay=monday,StartHour=2,EndWeekDay=wednesday,EndHour=8 \
    --tag-specifications "ResourceType=instance-event-window,Tags=[{Key=K1,Value=V1}]" \
    --name myEventWindowName
```

다음은 예제 출력입니다.

```
{
    "InstanceEventWindow": {
        "InstanceEventWindowId": "iew-0abcdef1234567890",
        "TimeRanges": [
            {
                "StartWeekDay": "monday",
                "StartHour": 2,
                "EndWeekDay": "wednesday",
                "EndHour": 8
            }
        ],
        "Name": "myEventWindowName",
        "State": "creating",
        "Tags": [
            {
                "Key": "K1",
                "Value": "V1"
            }
        ]
    }
}
```

**cron 표현식으로 이벤트 기간을 생성하는 방법**  
[create-instance-event-window](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-instance-event-window.html) 명령을 사용합니다.

```
aws ec2 create-instance-event-window \
    --cron-expression "* 21-23 * * 2,3" \
    --tag-specifications "ResourceType=instance-event-window,Tags=[{Key=K1,Value=V1}]" \
    --name myEventWindowName
```

다음은 예제 출력입니다.

```
{
    "InstanceEventWindow": {
        "InstanceEventWindowId": "iew-0abcdef1234567890",
        "Name": "myEventWindowName",
        "CronExpression": "* 21-23 * * 2,3",
        "State": "creating",
        "Tags": [
            {
                "Key": "K1",
                "Value": "V1"
            }
        ]
    }
}
```

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

**시간 범위로 이벤트 기간을 생성하는 방법**  
[New-EC2InstanceEventWindow](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2InstanceEventWindow.html) cmdlet을 사용합니다.

```
$timeRange = New-Object Amazon.EC2.Model.InstanceEventWindowTimeRangeRequest
$timeRange.StartWeekDay = "monday"
$timeRange.EndWeekDay = "wednesday"
$timeRange.StartHour = 2
$timeRange.EndHour = 8
$tag = @{Key="key1"; Value="value1"}
$tagspec = New-Object Amazon.EC2.Model.TagSpecification
$tagspec.ResourceType = "instance-event-window"
$tagspec.Tags.Add($tag)
New-EC2InstanceEventWindow `
    -Name my-event-window `
    -TagSpecification $tagspec `
    -TimeRange @($timeRange)
```

다음은 예제 출력입니다.

```
AssociationTarget     : 
CronExpression        : 
InstanceEventWindowId : iew-0abcdef1234567890
Name                  : my-event-window
State                 : creating
Tags                  : {key1}
TimeRanges            : {Amazon.EC2.Model.InstanceEventWindowTimeRange}
```

**cron 표현식으로 이벤트 기간을 생성하는 방법**  
[New-EC2InstanceEventWindow](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2InstanceEventWindow.html) cmdlet을 사용합니다.

```
$tag = @{Key="key1"; Value="value1"}
$tagspec = New-Object Amazon.EC2.Model.TagSpecification
$tagspec.ResourceType = "instance-event-window"
$tagspec.Tags.Add($tag)
New-EC2InstanceEventWindow `
    -Name my-event-window `
    -TagSpecification $tagspec`
    -CronExpression "* 21-23 * * 2,3"
```

다음은 예제 출력입니다.

```
AssociationTarget     : 
CronExpression        : * 21-23 * * 2,3
InstanceEventWindowId : iew-0abcdef1234567890
Name                  : my-event-window
State                 : creating
Tags                  : {key1}
TimeRanges            : {}
```

------

## 이벤트 기간에 대상 연결


이벤트 기간을 생성한 후 대상을 이벤트 기간과 연결할 수 있습니다. 이벤트 기간에는 한 가지 유형의 대상만 연결할 수 있습니다. 인스턴스 ID, 전용 호스트 ID 또는 인스턴스 태그를 지정할 수 있습니다.

------
#### [ Console ]

**대상을 이벤트 기간에 연결하려면**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 [**이벤트(Events)**]를 선택합니다.

1. 수정할 이벤트 기간을 선택합니다.

1. **작업**, **인스턴스 이벤트 기간 수정**을 선택합니다.

------
#### [ AWS CLI ]

**인스턴스 태그를 이벤트 기간에 연결하는 방법**  
[associate-instance-event-window](https://docs.aws.amazon.com/cli/latest/reference/ec2/associate-instance-event-window.html) 명령을 사용합니다.

```
aws ec2 associate-instance-event-window \
    --instance-event-window-id iew-0abcdef1234567890 \
    --association-target "InstanceTags=[{Key=k2,Value=v2},{Key=k1,Value=v1}]"
```

다음은 예제 출력입니다.

```
{
    "InstanceEventWindow": {
        "InstanceEventWindowId": "iew-0abcdef1234567890",
        "Name": "myEventWindowName",
        "CronExpression": "* 21-23 * * 2,3",
        "AssociationTarget": {
            "InstanceIds": [],
            "Tags": [
                {
                    "Key": "k2",
                    "Value": "v2"
                },
                {
                    "Key": "k1",
                    "Value": "v1"
                }
            ],
            "DedicatedHostIds": []
        },
        "State": "creating"
    }
}
```

**인스턴스 ID를 이벤트 기간에 연결하려면**  
[associate-instance-event-window](https://docs.aws.amazon.com/cli/latest/reference/ec2/associate-instance-event-window.html) 명령을 사용합니다.

```
aws ec2 associate-instance-event-window \
    --instance-event-window-id iew-0abcdef1234567890 \
    --association-target "InstanceIds=i-1234567890abcdef0,i-0598c7d356eba48d7"
```

다음은 예제 출력입니다.

```
{
    "InstanceEventWindow": {
        "InstanceEventWindowId": "iew-0abcdef1234567890",
        "Name": "myEventWindowName",
        "CronExpression": "* 21-23 * * 2,3",
        "AssociationTarget": {
            "InstanceIds": [
                "i-1234567890abcdef0",
                "i-0598c7d356eba48d7"
            ],
            "Tags": [],
            "DedicatedHostIds": []
        },
        "State": "creating"
    }
}
```

**전용 호스트를 이벤트 기간에 연결하는 방법**  
[associate-instance-event-window](https://docs.aws.amazon.com/cli/latest/reference/ec2/associate-instance-event-window.html) 명령을 사용합니다.

```
aws ec2 associate-instance-event-window \
    --instance-event-window-id iew-0abcdef1234567890 \
    --association-target "DedicatedHostIds=h-029fa35a02b99801d"
```

다음은 예제 출력입니다.

```
{
    "InstanceEventWindow": {
        "InstanceEventWindowId": "iew-0abcdef1234567890",
        "Name": "myEventWindowName",
        "CronExpression": "* 21-23 * * 2,3",
        "AssociationTarget": {
            "InstanceIds": [],
            "Tags": [],
            "DedicatedHostIds": [
                "h-029fa35a02b99801d"
            ]
        },
        "State": "creating"
    }
}
```

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

**인스턴스 태그를 이벤트 기간에 연결하는 방법**  
[Register-EC2InstanceEventWindow](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2InstanceEventWindow.html) cmdlet을 사용합니다.

```
$tag1 = @{Key="key1"; Value="value1"}
$tag2 = @{Key="key2"; Value="value2"}
Register-EC2InstanceEventWindow `
    -InstanceEventWindowId iew-0abcdef1234567890 `
    -AssociationTarget_InstanceTag @($tag1,$tag2)
```

**인스턴스 ID를 이벤트 기간에 연결하려면**  
[Register-EC2InstanceEventWindow](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2InstanceEventWindow.html) cmdlet을 사용합니다.

```
Register-EC2InstanceEventWindow `
    -InstanceEventWindowId iew-0abcdef1234567890 `
    -AssociationTarget_InstanceId i-1234567890abcdef0, i-0598c7d356eba48d7
```

**전용 호스트를 이벤트 기간에 연결하는 방법**  
[Register-EC2InstanceEventWindow](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2InstanceEventWindow.html) cmdlet을 사용합니다.

```
Register-EC2InstanceEventWindow `
    -InstanceEventWindowId iew-0abcdef1234567890 `
    -AssociationTarget_DedicatedHostId h-029fa35a02b99801d
```

------

## 이벤트 기간에서 대상 연결 해제


------
#### [ Console ]

**이벤트 기간에서 대상을 연결 해제하려면**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 [**이벤트(Events)**]를 선택합니다.

1. 수정할 이벤트 기간을 선택합니다.

1. **작업**, **인스턴스 이벤트 기간 수정**을 선택합니다.

------
#### [ AWS CLI ]

**이벤트 기간에서 인스턴스 태그를 연결 해제하는 방법**  
[disassociate-instance-event-window](https://docs.aws.amazon.com/cli/latest/reference//ec2/disassociate-instance-event-window.html) 명령을 사용합니다.

```
aws ec2 disassociate-instance-event-window \
    --instance-event-window-id iew-0abcdef1234567890 \
    --association-target "InstanceTags=[{Key=k2,Value=v2},{Key=k1,Value=v1}]"
```

다음은 예제 출력입니다.

```
{
    "InstanceEventWindow": {
        "InstanceEventWindowId": "iew-0abcdef1234567890",
        "Name": "myEventWindowName",
        "CronExpression": "* 21-23 * * 2,3",
        "AssociationTarget": {
            "InstanceIds": [],
            "Tags": [],
            "DedicatedHostIds": []
        },
        "State": "creating"
    }
}
```

**이벤트 기간에서 인스턴스 ID를 연결 해제하려면**  
[disassociate-instance-event-window](https://docs.aws.amazon.com/cli/latest/reference/ec2/disassociate-instance-event-window.html) 명령을 사용합니다.

```
aws ec2 disassociate-instance-event-window \
    --instance-event-window-id iew-0abcdef1234567890 \
    --association-target "InstanceIds=i-1234567890abcdef0,i-0598c7d356eba48d7"
```

다음은 예제 출력입니다.

```
{
    "InstanceEventWindow": {
        "InstanceEventWindowId": "iew-0abcdef1234567890",
        "Name": "myEventWindowName",
        "CronExpression": "* 21-23 * * 2,3",
        "AssociationTarget": {
            "InstanceIds": [],
            "Tags": [],
            "DedicatedHostIds": []
        },
        "State": "creating"
    }
}
```

**이벤트 기간에서 전용 호스트를 연결 해제하는 방법**  
[disassociate-instance-event-window](https://docs.aws.amazon.com/cli/latest/reference/ec2/disassociate-instance-event-window.html) 명령을 사용합니다.

```
aws ec2 disassociate-instance-event-window \
    --instance-event-window-id iew-0abcdef1234567890 \
    --association-target DedicatedHostIds=h-029fa35a02b99801d
```

다음은 예제 출력입니다.

```
{
    "InstanceEventWindow": {
        "InstanceEventWindowId": "iew-0abcdef1234567890",
        "Name": "myEventWindowName",
        "CronExpression": "* 21-23 * * 2,3",
        "AssociationTarget": {
            "InstanceIds": [],
            "Tags": [],
            "DedicatedHostIds": []
        },
        "State": "creating"
    }
}
```

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

**이벤트 기간에서 인스턴스 태그를 연결 해제하는 방법**  
[Unregister-EC2InstanceEventWindow](https://docs.aws.amazon.com/powershell/latest/reference/items/Unregister-EC2InstanceEventWindow.html) cmdlet을 사용합니다.

```
$tag1 = @{Key="key1"; Value="value1"}
$tag2 = @{Key="key2"; Value="value2"}
Unregister-EC2InstanceEventWindow `
    -InstanceEventWindowId iew-0abcdef1234567890 `
    -AssociationTarget_InstanceTag @($tag1, $tag2)
```

**이벤트 기간에서 인스턴스 ID를 연결 해제하려면**  
[Unregister-EC2InstanceEventWindow](https://docs.aws.amazon.com/powershell/latest/reference/items/Unregister-EC2InstanceEventWindow.html) cmdlet을 사용합니다.

```
Unregister-EC2InstanceEventWindow `
    -InstanceEventWindowId iew-0abcdef1234567890 `
    -AssociationTarget_InstanceId i-1234567890abcdef0, i-0598c7d356eba48d7
```

**이벤트 기간에서 전용 호스트를 연결 해제하는 방법**  
[Unregister-EC2InstanceEventWindow](https://docs.aws.amazon.com/powershell/latest/reference/items/Unregister-EC2InstanceEventWindow.html) cmdlet을 사용합니다.

```
Unregister-EC2InstanceEventWindow `
    -InstanceEventWindowId iew-0abcdef1234567890 `
    -AssociationTarget_DedicatedHostId h-029fa35a02b99801d
```

------

## 이벤트 기간 수정


ID를 제외한 이벤트 기간의 모든 필드를 수정할 수 있습니다. 예를 들어 일광 절약 시간이 시작될 때 이벤트 기간 일정을 수정할 수 있습니다. 기존 이벤트 기간의 경우 대상을 추가하거나 제거할 수 있습니다.

이벤트 기간을 수정할 때 시간 범위 또는 cron 표현식을 수정할 수 있지만 둘 다 수정할 수는 없습니다.

------
#### [ Console ]

**이벤트 기간을 수정하는 방법**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 [**Events**]를 선택합니다.

1. [**작업(Actions)**], [**Windows 이벤트 관리(Manage event windows)**]를 차례로 선택합니다.

1. 수정할 이벤트 기간을 선택한 후 [**작업(Actions)**], [**인스턴스 이벤트 기간 수정(Modify instance event window)**]을 차례로 선택합니다.

1. 이벤트 기가에서 필드를 수정한 후 [**이벤트 기간 수정(Modify event window)**]을 선택합니다.

------
#### [ AWS CLI ]

**이벤트 기간의 시간 범위를 수정하는 방법**  
[modify-instance-event-window](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-instance-event-window.html) 명령을 사용합니다.

```
aws ec2 modify-instance-event-window 
    --instance-event-window-id iew-0abcdef1234567890 \
    --time-range StartWeekDay=monday,StartHour=2,EndWeekDay=wednesday,EndHour=8
```

다음은 예제 출력입니다.

```
{
    "InstanceEventWindow": {
        "InstanceEventWindowId": "iew-0abcdef1234567890",
        "TimeRanges": [
            {
                "StartWeekDay": "monday",
                "StartHour": 2,
                "EndWeekDay": "wednesday",
                "EndHour": 8
            }
        ],
        "Name": "myEventWindowName",
        "AssociationTarget": {
            "InstanceIds": [
                "i-0abcdef1234567890",
                "i-0be35f9acb8ba01f0"
            ],
            "Tags": [],
            "DedicatedHostIds": []
        },
        "State": "creating",
        "Tags": [
            {
                "Key": "K1",
                "Value": "V1"
            }
        ]
    }
}
```

**이벤트 기간의 시간 범위 세트를 수정하는 방법**  
[modify-instance-event-window](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-instance-event-window.html) 명령을 사용합니다.

```
aws ec2 modify-instance-event-window 
    --instance-event-window-id iew-0abcdef1234567890 \
    --time-range '[{"StartWeekDay": "monday", "StartHour": 2, "EndWeekDay": "wednesday", "EndHour": 8},
	  {"StartWeekDay": "thursday", "StartHour": 2, "EndWeekDay": "friday", "EndHour": 8}]'
```

다음은 예제 출력입니다.

```
{
    "InstanceEventWindow": {
        "InstanceEventWindowId": "iew-0abcdef1234567890",
        "TimeRanges": [
            {
                "StartWeekDay": "monday",
                "StartHour": 2,
                "EndWeekDay": "wednesday",
                "EndHour": 8
            },
            {
                "StartWeekDay": "thursday",
                "StartHour": 2,
                "EndWeekDay": "friday",
                "EndHour": 8
            }
        ],
        "Name": "myEventWindowName",
        "AssociationTarget": {
            "InstanceIds": [
                "i-0abcdef1234567890",
                "i-0be35f9acb8ba01f0"
            ],
            "Tags": [],
            "DedicatedHostIds": []
        },
        "State": "creating",
        "Tags": [
            {
                "Key": "K1",
                "Value": "V1"
            }
        ]
    }
}
```

**이벤트 기간의 cron 표현식을 수정하는 방법**  
[modify-instance-event-window](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-instance-event-window.html) 명령을 사용합니다.

```
aws ec2 modify-instance-event-window 
    --instance-event-window-id iew-0abcdef1234567890 \
    --cron-expression "* 21-23 * * 2,3"
```

다음은 예제 출력입니다.

```
{
    "InstanceEventWindow": {
        "InstanceEventWindowId": "iew-0abcdef1234567890",
        "Name": "myEventWindowName",
        "CronExpression": "* 21-23 * * 2,3",
        "AssociationTarget": {
            "InstanceIds": [
                "i-0abcdef1234567890",
                "i-0be35f9acb8ba01f0"
            ],
            "Tags": [],
            "DedicatedHostIds": []
        },
        "State": "creating",
        "Tags": [
            {
                "Key": "K1",
                "Value": "V1"
            }
        ]
    }
}
```

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

**이벤트 기간의 시간 범위를 수정하는 방법**  
[Edit-EC2InstanceEventWindow](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2InstanceEventWindow.html) cmdlet을 사용합니다.

```
$timeRange1 = New-Object Amazon.EC2.Model.InstanceEventWindowTimeRangeRequest
$timeRange1.StartWeekDay = "monday"
$timeRange1.EndWeekDay = "wednesday"
$timeRange1.StartHour = 2
$timeRange1.EndHour = 8
$timeRange2 = New-Object Amazon.EC2.Model.InstanceEventWindowTimeRangeRequest
$timeRange2.StartWeekDay = "thursday"
$timeRange2.EndWeekDay = "friday"
$timeRange2.StartHour = 1
$timeRange2.EndHour = 6
Edit-EC2InstanceEventWindow `
    -InstanceEventWindowId iew-0abcdef1234567890 `
    -TimeRange @($timeRange1, $timeRange2)
```

**이벤트 기간의 cron 표현식을 수정하는 방법**  
[Edit-EC2InstanceEventWindow](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2InstanceEventWindow.html) cmdlet을 사용합니다.

```
Edit-EC2InstanceEventWindow `
    -InstanceEventWindowId iew-0abcdef1234567890 `
    -CronExpression "* 21-23 * * 2,3"
```

------

## 이벤트 기간 삭제


이벤트 기간을 한 번에 하나씩 삭제할 수 있습니다.

------
#### [ Console ]

**이벤트 기간을 삭제하는 방법**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 [**Events**]를 선택합니다.

1. [**작업(Actions)**], [**Windows 이벤트 관리(Manage event windows)**]를 차례로 선택합니다.

1. 삭제할 이벤트 기간을 선택한 후 [**작업(Actions)**], [**인스턴스 이벤트 기간 삭제(Delete instance event window)**]를 차례로 선택합니다.

1. 메시지가 표시되면 **delete**를 입력한 후 **삭제**를 선택합니다.

------
#### [ AWS CLI ]

**이벤트 기간을 삭제하는 방법**  
[delete-instance-event-window](https://docs.aws.amazon.com/cli/latest/reference/ec2/delete-instance-event-window.html) 명령을 사용하고 삭제할 이벤트 기간을 지정합니다.

```
aws ec2 delete-instance-event-window \
    --instance-event-window-id iew-0abcdef1234567890
```

**이벤트 기간을 강제 삭제하는 방법**  
현재 이벤트 기간이 대상과 연결되어 있는 경우 `--force-delete` 파라미터를 사용합니다.

```
aws ec2 delete-instance-event-window \
    --instance-event-window-id iew-0abcdef1234567890 \
    --force-delete
```

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

**이벤트 기간을 삭제하는 방법**  
[Remove-EC2InstanceEventWindow](https://docs.aws.amazon.com/powershell/latest/reference/items/Remove-EC2InstanceEventWindow.html) cmdlet을 사용합니다.

```
Remove-EC2InstanceEventWindow `
    -InstanceEventWindowId iew-0abcdef1234567890
```

**이벤트 기간을 강제 삭제하는 방법**  
[Remove-EC2InstanceEventWindow](https://docs.aws.amazon.com/powershell/latest/reference/items/Remove-EC2InstanceEventWindow.html) cmdlet을 사용합니다.

```
Remove-EC2InstanceEventWindow `
    -InstanceEventWindowId iew-0abcdef1234567890 `
    -ForceDelete $true
```

------