

# Amazon EC2 インスタンスの予定されているイベント
<a name="monitoring-instances-status-check_sched"></a>

インフラストラクチャの信頼性とパフォーマンスを維持するために、 AWS はインスタンスの再起動、停止、終了イベントをスケジュールすることがあります。これらのイベントは頻繁には発生しません。

予定されたイベントの影響を受けるインスタンスがある場合、AWS は AWS アカウントに関連付けられている E メールアドレスを使用して、事前に E メールで通知します。この E メールには、開始日や終了日などのイベントに関する詳細が記載されています。イベントタイプによっては、イベントのタイミングを制御するアクションを実行できる場合があります。AWS は AWS Health イベントも送信し、Amazon EventBridge を使用してモニタリングおよび管理できます。詳細については「[Amazon EventBridge を使用した AWS Health でのイベントのモニタリング](https://docs.aws.amazon.com/health/latest/ug/cloudwatch-events-health.html)」を参照してください。

予定されたイベントは AWS によって管理されます。インスタンスのイベントをスケジュールすることはできません。ただし、以下はできます。
+ インスタンスに予定されたイベントを表示します。
+ 予定されたイベント通知をカスタマイズして、E メール通知にタグを追加または削除します。
+ 特定の予定されたイベントを再スケジュールします。
+ 予定されているイベントのカスタムイベントウィンドウを作成します。
+ インスタンスの再起動、停止、またはリタイアが予定されているときにアクションを実行します。

スケジュールされたイベントの通知を確実に受信するには、[[アカウント]](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)」を参照してください。

## 予定されたイベントのタイプ
<a name="types-of-scheduled-events"></a>

Amazon EC2 は、インスタンスに対して、スケジュールされた時間に発生する以下の種類のスケジュールされたイベントを作成できます。


| イベントタイプ | イベントコード | イベントアクション | 
| --- | --- | --- | 
| インスタンスの停止 | instance-stop | スケジュールされた時刻になると、インスタンスは停止します。再度起動すると、新しいホストに移行されます。Amazon EBS ルートボリュームを持つインスタンスに対してのみ適用されます。 | 
| インスタンスのリタイア | instance-retirement | スケジュールされた時刻に、インスタンスは Amazon EBS ルートボリュームがある場合は停止され、インスタンスストアルートボリュームがある場合は終了されます。 | 
| インスタンスの再起動 | instance-reboot | スケジュールされた時刻になると、インスタンスは再起動されます。インスタンスはホストに留まり、再起動中にホストのメンテナンスが実行されます。これはインプレース再起動と呼ばれます。 | 
| システムの再起動 | system-reboot | スケジュールされた時刻に、インスタンスが再起動され、新しいホストに移行されます。これは再起動移行と呼ばれます。 | 
| [System maintenance] | system-maintenance | スケジュールされた時刻になると、インスタンスはネットワークメンテナンスまたは電源のメンテナンスの影響を一時的に受ける場合があります。 | 

## イベントタイプを決定する
<a name="scheduled-event-type"></a>

インスタンスでスケジュールされているイベントのタイプを確認できます。

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

**イベントタイプを確認するには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/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) コマンドレットを使用します。インスタンスにスケジュールされたイベントが関連付けられている場合、出力にはスケジュールされたイベントに関する情報が提供されます。

```
(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 インスタンスを管理する
<a name="schedevents_actions_retire"></a>

AWS はインスタンスの基盤となるホストの回復不能な障害を検出すると、インスタンスのルートボリュームタイプに応じて、インスタンスを停止または終了するようにスケジュールします。
+ インスタンスに Amazon EBS ルートボリュームがある場合、インスタンスは停止するようにスケジュールされます。
+ インスタンスにインスタンスストアのルート ボリュームがある場合、インスタンスは終了するようにスケジュールされます。

詳細については、「[インスタンスのリタイア](instance-retirement.md)」を参照してください。

**重要**  
インスタンスストアボリュームに格納されているデータはいずれも、インスタンスが停止、休止、または終了されると失われます。これにはEBS ルートボリュームを備えたインスタンスにアタッチされたインスタンスストアボリュームも含まれます。インスタンスが停止、休止、または終了される前に、後で必要となるインスタンスストアボリュームからデータを必ず保存しておきます。

## 実行できるアクション
<a name="actions-you-can-take-for-scheduled-stop-or-retire-event"></a>

**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 インスタンスを管理する
<a name="schedevents_actions_reboot"></a>

AWS は更新のインストールや基盤となるホストのメンテナンスなどのタスクを実行する必要があるとき、インスタンスの再起動をスケジュールできます。スケジュールされた再起動中、インスタンスは次のようにイベントに応じて、同じホストに留まるか、別のホストに移行します。
+ `instance-reboot` イベント
  + 再起動中、インスタンスはホスト上に留まります。これは*インプレース再起動*と呼ばれます。
  + 現在のホストはメンテナンス中です。
  + 通常、秒単位で完了します。
+ `system-reboot` イベント
  + 再起動中、インスタンスは新しいホストに移行されます。これは*再起動移行*と呼ばれます。
  + 通常、数分で完了します。

インスタンスでスケジュールされているイベントのタイプを確認するには、「[イベントタイプを決定する](monitoring-instances-status-check_sched.md#scheduled-event-type)」を参照してください。

## 実行できるアクション
<a name="actions-you-can-take-for-scheduled-reboot-event"></a>

スケジュールされた `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. 元のインスタンスを終了します。

## 再起動移行を有効または無効にする
<a name="reboot-migration"></a>

インスタンスが `system-reboot` イベントにスケジュールされている場合も、イベント予定日時の前にインスタンスを手動で再起動できます。ユーザー操作による再起動の結果は、そのインスタンスの再起動移行設定によって異なります。
+ 有効 – ユーザー操作による再起動を行うと、システムはインスタンスを新しいハードウェアに移行しようとします (再起動移行)。成功すると、イベントはクリアされます。失敗するとインプレース再起動が発生し、イベントはスケジュールされたままになります。なお、再起動移行を有効に設定していても、再起動移行はそのインスタンスが[再起動移行要件](#requirements-for-reboot-migration)を満たしている場合にのみ実行可能である点に留意してください。
+ 無効 – ユーザー操作による再起動を行ってもインスタンスは同じハードウェアに保持され (インプレース再起動)、ホストメンテナンスは行われず、イベントはスケジュールされたままになります。その後スケジュールされたイベントが予定通りに発生すると、AWS はインスタンスを新しいハードウェアに移動します (再起動移行)。

移行を伴う再起動は、インプレース再起動よりも時間がかかります。
+ インプレース再起動: 約 30 秒
+ 移行を伴う再起動: 数分

**注記**  
`system-reboot` イベント通知を受信するインスタンスでは、デフォルトでユーザー操作による再起動移行が有効になっています。

### 再起動移行を有効にするための要件
<a name="requirements-for-reboot-migration"></a>

再起動移行は、次の条件を満たすインスタンスで有効にできます。

**インスタンスのタイプ**  
すべてのインスタンスタイプが再起動移行の有効化をサポートしているわけではありません。再起動移行の有効化をサポートするインスタンスタイプを確認することができます。  

**再起動移行の有効化をサポートするインスタンスタイプを確認するには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/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) コマンドレットを `reboot-migration-support` フィルタと共に使用します。

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

**テナンシー**  
+ Shared
+ Dedicated Instance
詳細については「[Amazon EC2 ハードウェア専有インスタンス](dedicated-instance.md)」を参照してください。

**制限事項**

再起動移行は、次の特性を持つインスタンスでは**サポートされていません**。
+ プラットフォーム: Xen ハイパーバイザーでネイティブに実行されているインスタンス
+ インスタンスサイズ: `metal`インスタンス
+ テナンシー: 専用ホスト。専用ホスト の場合は代わりに [Dedicated Host Auto Recovery](dedicated-hosts-recovery.md) を使用します。
+ ストレージ: インスタンスストアボリュームを持つインスタンス
+ ネットワーク: エラスティックファブリックアダプタ を使用するインスタンス
+ Auto Scaling: Auto Scaling グループの一部であるインスタンス

### 再起動移行を有効化または無効化する手順
<a name="configure-reboot-migration-behavior"></a>

インスタンスが `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) コマンドレットを使用します。

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

**再起動移行を有効にするには**  
[Edit-EC2InstanceMaintenanceOption](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2InstanceMaintenanceOption.html) コマンドレットを使用します。

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

------

# メンテナンスがスケジュールされている Amazon EC2 インスタンスを管理する
<a name="schedevents_actions_maintenance"></a>

AWS はインスタンスの基盤となるホストをメンテナンスする必要があるときに、インスタンスのメンテナンスを予定します。2 種類のメンテナンスイベントがあります。1 つはネットワークメンテナンスで、もう 1 つは電源のメンテナンスです。
+ ネットワークメンテナンス中は短い期間、予定されたインスタンスのネットワーク接続が切断されます。メンテナンスが終了すると、インスタンスとの通常のネットワーク接続が回復します。
+ 電源のメンテナンス中は短い期間、予定されたインスタンスはオフラインになり、その後再起動されます。再起動されると、インスタンスの設定内容はすべて維持されます。

インスタンスが再起動したら (通常、数分かかります)、アプリケーションが正常に動作していることを確認します。この時点で、インスタンスにスケジュールされたイベントは残っていません。残っている場合はスケジュールされたイベントの説明の先頭に [**Completed**] と表示されます。インスタンスのステータス説明が更新するのに、最大で 1 時間ほどかかる場合があります。完了したメンテナンスイベントは最長で 1 週間、Amazon EC2 コンソールのダッシュボードに表示されます。

## 実行できるアクション
<a name="actions-you-can-take-for-scheduled-maintenance-event"></a>

**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 インスタンスに影響する予定されているイベントの表示
<a name="viewing_scheduled_events"></a>

スケジュールされたイベント通知を E メールで受信することに加え、スケジュールされたイベントを確認できます。

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

**インスタンスに予定されたイベントを表示するには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) を開いてください。

1. ダッシュボードには[**Scheduled events**] の下に関連付けられているイベントを持つすべてのリソースが表示されます。  
![\[ダッシュボードを使用してイベントを表示します。\]](http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/images/dashboard-scheduled-events.png)

1. 詳細についてはナビゲーションペインで **[イベント]** を選択してください。イベントに関連付けられたリソースがすべて表示されます。イベントタイプ、リソースタイプ、アベイラビリティーゾーンなどの特性でフィルタリングできます。  
![\[[Events] ページを使用してイベントを表示します。\]](http://docs.aws.amazon.com/ja_jp/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 では未解決の問題、予定された変更、その他の通知という 3 つのグループに問題が分類されます。予定された変更には進行中または予定されている変更が含まれます。

詳細についてはAWS Health ユーザーガイドの「*[AWS Health Dashboard の開始方法](https://docs.aws.amazon.com/health/latest/ug/getting-started-health-dashboard.html)*」を参照してください。

------

# EC2 インスタンスのスケジュールされたイベント通知をカスタマイズする
<a name="customizing_scheduled_event_notifications"></a>

スケジュールされたイベント通知をカスタマイズして、メール通知にタグを含めることができます。これにより、影響を受けるリソース (インスタンスまたは 専用ホスト) を特定して、その後のイベントに対するアクションに優先順位を付けやすくなります。

タグを含めるようにイベント通知をカスタマイズする場合、次のいずれかを含めることができます。
+ 影響を受けるリソースに関連付けられているすべてのタグ
+ 影響を受けるリソースに関連付けられている特定のタグのみ

例えば、`application`、`costcenter`、`project`、`owner` タグをすべてのインスタンスに割り当てるとします。イベント通知にはこれらのすべてのタグを含めることができます。また、イベント通知に `owner` タグと `project` タグのみを表示したい場合はそれらのタグのみを含めることもできます。

含めるタグを選択すると、イベント通知には影響を受けるリソースに関連付けられているリソース ID (インスタンス ID または Dedicated Host ID) とタグのキーと値のペアが含まれます。

**Topics**
+ [イベント通知にタグを含める](#register-tags)
+ [イベント通知からのタグの削除](#deregister-tags)
+ [イベント通知に含めるタグの表示](#view-tags)

## イベント通知にタグを含める
<a name="register-tags"></a>

含めるように選択したタグは選択したリージョンのすべてのリソース (インスタンスと 専用ホスト) に適用されます。他のリージョンのイベント通知をカスタマイズするにはまず必要なリージョンを選択してから、次の手順を実行します。

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

**イベント通知にタグを含めるには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) を開いてください。

1. ナビゲーションペインの [**Events**] を選択してください。

1. [**アクション**]、[**Manage event notifications (イベント通知の管理)**] の順に選択してください。

1. **[イベント通知にタグを含める]**をオンにします。

1. イベント通知に含めるタグに応じて、次のいずれかの操作を行います。
   + 影響を受けるインスタンスまたは専有ホストに関連付けられている全タグを含めるには**[全タグを含める]** を選択してください。
   + 含めるタグを選択するには **[含めるタグを選択]** を選択し、タグキーを選択または入力してください。

1. [**Save**] を選択してください。

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

**イベント通知にすべてのタグを含めるには**  
`IncludeAllTagsOfInstance` コマンドの [register-instance-event-notification-attributes](https://docs.aws.amazon.com/cli/latest/reference/ec2/register-instance-event-notification-attributes.html) を使用して、`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) コマンドレットを使用します。

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

**イベント通知に特定のタグを含めるには**  
[Register-EC2InstanceEventNotificationAttribute](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2InstanceEventNotificationAttribute.html) コマンドレットを使用します。

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

------

## イベント通知からのタグの削除
<a name="deregister-tags"></a>

イベント通知からタグを削除できます。

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

**イベント通知からタグを削除するには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) を開いてください。

1. ナビゲーションペインの [**Events**] を選択してください。

1. [**アクション**]、[**Manage event notifications (イベント通知の管理)**] の順に選択してください。

1. イベント通知からすべてのタグを削除するには**[イベント通知にタグを含める]** をオフにします。

1. イベント通知から特定のタグを削除するには対応するタグキーの [**X**] を選択してください。

1. [**Save**] を選択してください。

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

**イベント通知からすべてのタグを削除するには**  
`IncludeAllTagsOfInstance` コマンドの [deregister-instance-event-notification-attributes](https://docs.aws.amazon.com/cli/latest/reference/ec2/deregister-instance-event-notification-attributes.html) を使用して、`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) コマンドレットを使用します。

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

**イベント通知からタグを削除するには**  
[Unregister-EC2InstanceEventNotificationAttribute](https://docs.aws.amazon.com/powershell/latest/reference/items/Unregister-EC2InstanceEventNotificationAttribute.html) コマンドレットを使用します。

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

------

## イベント通知に含めるタグの表示
<a name="view-tags"></a>

イベント通知に含めるタグを表示できます。

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

**イベント通知に含めるタグを表示するには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/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) コマンドレットを使用します。

```
Get-EC2InstanceEventNotificationAttribute
```

------

# EC2 インスタンスのスケジュールされたイベントを再スケジュールする
<a name="reschedule-event"></a>

都合の良い日時にイベントが発生するように、予定を再スケジュールできます。イベントを再スケジュールすると、更新された日付が表示されるまでに 1～2 分かかる場合があります。

**制限事項**
+ イベント期限があるイベントのみ再スケジュールできます。イベントはイベント期限日まで再スケジュールできます。イベントの期限は、[**期限**] 列 (コンソール) と `NotBeforeDeadline` フィールド (AWS CLI) に表示されます。
+ まだ開始していないイベントのみ再スケジュールできます。開始時刻は、[**開始時刻**] 列 (コンソール) と `NotBefore` フィールド (AWS CLI) に表示されます。あと 5 分で開始するようにスケジュールされているイベントは再スケジュールできません。
+ 新しいイベント開始時刻は現在の時刻から少なくとも 60 分後にする必要があります。
+ コンソールを使用して複数のイベントを再スケジュールすると、イベント期限は最も早い期限日のイベントによって決定されます。

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

**イベントを再スケジュールするには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) を開いてください。

1. ナビゲーションペインの [**Events**] を選択してください。

1. フィルターリストから [**リソースタイプ: インスタンス**] を選択してください。

1. 1 つ以上のインスタンスを選択し、[**アクション**]、[**Schedule event**] の順に選択してください。

   [**期限**] でイベント期限を設定したイベントのみを再スケジュールできます。選択したイベントのいずれかに期限がない場合、[**アクション**]、[**Schedule event**] は無効になります。

1. [**New start time**] に、イベントの新しい日時を入力してください。新しい日時は[**Event deadline**] より前に設定する必要があります。

1. [**Save**] を選択してください。

   更新されたイベント開始時刻がコンソールに反映されるまで、1～2 分かかることがあります。

------
#### [ 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) コマンドレットを使用します。

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

------

# Amazon EC2 インスタンスに影響する予定されているイベントのカスタムイベントウィンドウの作成
<a name="event-windows"></a>

スケジュールされたイベントに対して、週ごとに繰り返されるカスタムのイベントウィンドウを定義して、Amazon EC2 インスタンスを再起動、停止、終了させることができます。イベントウィンドウには1 つ以上のインスタンスを関連付けることができます。これらのインスタンスにスケジュールされたイベントが設定されている場合、AWS は関連するイベントウィンドウ内でイベントをスケジュールします。

ワークロードのオフピーク期間にイベントウィンドウを指定することで、ワークロードの可用性を最大化できます。また、内部的な保守スケジュールにイベントウィンドウを合わせることもできます。

イベントウィンドウを定義するには一連の時間範囲を指定します。最小期間は 2 時間です。全体を合計した時間範囲は最小で 4 時間必要です。

インスタンス ID またはインスタンスタグを使用して、1 つ以上のインスタンスをイベントウィンドウに関連付けることができます。また、ホスト 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)

## 考慮事項
<a name="event-windows-considerations"></a>
+ イベントウィンドウの時刻はすべて UTC で表示されます。
+ イベントウィンドウには、複数の時間範囲を含めることができます。各範囲は少なくとも 2 時間である必要がありますが、すべての範囲の合計期間は少なくとも 4 時間である必要があります。
+ イベントウィンドウにはターゲットタイプ (インスタンスID、Dedicated Host ID、またはインスタンスタグ) を 1 つだけ関連付けることができます。
+ 1 つのターゲット (インスタンス ID、Dedicated Host ID、またはインスタンスタグ) は1 つのイベントウィンドウにのみ関連付けることが可能です。
+ 1 つのイベントウィンドウには最大 100 個のインスタンス ID、または 50 個の Dedicated Host ID、または 50 個のインスタンスタグを関連付けることができます。インスタンスタグは任意の数のインスタンスに関連付けることができます。
+ 個々の AWS リージョンで、最大 200 個までのイベントウィンドウを作成できます。
+ 複数のインスタンスがイベントウィンドウに関連付けられている場合、スケジュールされたイベントが同時に発生する可能性があります。
+ 既に AWS によりスケジュールされたイベントが存在する場合、イベントウィンドウを変更しても、スケジュールされたイベントの時間は変更されません。イベントに締め切り日がある場合は[イベントの再スケジュール](reschedule-event.md)が行えます。
+ スケジュールされたイベントの前にインスタンスを停止および開始できます。これにより、インスタンスが新しいホストに移行され、イベントがクリアされます。

## イベントウィンドウを作成する
<a name="create-event-windows"></a>

イベントウィンドウは複数作成できます。イベントウィンドウごとに、1 つ以上の時間ブロックを指定します。例えば、毎日の午前 4 時に発生し 2 時間継続する時間ブロックを持つイベントウィンドウを作成できます。あるいは日曜日の午前 2 時から午前 4 時、および水曜日の午前 3 時から午前 5 時に発生する時間ブロックを持つイベントウィンドウを作成することもできます。

イベントウィンドウは削除されない限り毎週繰り返されます。

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

**イベントウィンドウを作成するには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) を開いてください。

1. ナビゲーションペインの [**Events**] を選択してください。

1. **[Actions]** (アクション)、**[Manage event windows]** (イベントウィンドウの管理) を選択してください。

1. [**インスタンスのイベントウィンドウを作成**] をクリックしてください。

1. [**イベントウィンドウ名**] に、イベントウィンドウのわかりやすい名前を入力してください。

1. [**イベントウィンドウのスケジュール**] で、イベントウィンドウ内の時間ブロックを指定するために、Cron スケジュールビルダーを使用するか、あるいは時間範囲で指定するかを選択してください。
   + [**Cron スケジュールビルダー**] を選択した場合は以下を指定します。

     1. [**曜日 (UTC)**] で、イベントウィンドウを発生させる曜日を指定します。

     1. [**開始時刻 (UTC)**] で、イベントウィンドウが開始する時刻を指定します。

     1. [**期間**] で、イベントウィンドウ内の時間ブロックの継続時間を指定します。各時間ブロックに設定できる最小期間は 2 時間です。イベントウィンドウの最小期間は合計で 4 時間以上にする必要があります。すべての時刻は協定世界時 (UTC) です。
   + [**時間範囲**] を選択した場合は[**新しい時間範囲の追加**] をクリックし、開始する日時ならびに終了する日時を指定します。各時間範囲に対して、これを繰り返します。各時間範囲に設定できる最小期間は 2 時間です。時間範囲の最小期間は全体を合計して 4 時間以上にする必要があります。

1. (オプション) **[ターゲットの詳細]** で、1 つ以上のインスタンスをイベントウィンドウに関連付けます。インスタンスを関連付けるには、インスタンス ID またはインスタンス タグを使用します。ホスト ID を使用して専有ホストを関連付けます。これらのターゲットのメンテナンスがスケジュールされている場合、イベントはこのイベントウィンドウ中に発生します。

   イベントウィンドウの作成時、そのウィンドウとターゲットの関連付けは必須ではありません。作成後、ウィンドウを変更して、1 つ以上のターゲットを関連付けることができます。

1. (オプション) [**イベントウィンドウのタグ**] で、[**タグを追加**] をクリックし、タグのキーおよび値を入力してください。各タグについて、これを繰り返します。

1. [**イベントウィンドウの作成**] をクリックしてください。

------
#### [ 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) コマンドレットを使用します。

```
$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) コマンドレットを使用します。

```
$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            : {}
```

------

## イベントウィンドウとターゲットの関連付け
<a name="associate-target-event-window"></a>

イベントウィンドウを作成した後に、ターゲットをイベントウィンドウに関連付けることができます。イベントウィンドウに関連付けることができるターゲットのタイプは 1 つだけです。インスタンス ID、専有ホスト ID、またはインスタンスタグを指定できます。

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

**イベントウィンドウにターゲットを関連付けるには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/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) コマンドレットを使用します。

```
$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) コマンドレットを使用します。

```
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) コマンドレットを使用します。

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

------

## イベントウィンドウからターゲットの関連付けを解除する
<a name="disassociate-target-event-window"></a>

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

**イベントウィンドウとターゲットの関連付けを解除するには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/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) コマンドレットを使用します。

```
$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) コマンドレットを使用します。

```
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) コマンドレットを使用します。

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

------

## イベントウィンドウを変更する
<a name="modify-event-windows"></a>

イベントウィンドウに関してはその ID 以外のすべてのフィールドを変更できます。例えば、夏時間の開始時に、イベントウィンドウのスケジュールを変更できます。既存のイベントウィンドウに対してはターゲットの追加または削除が必要になることもあります。

イベントウィンドウでは時間範囲または cron 式のいずれかの変更が可能ですが、両方を変更することはできません。

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

**イベントウィンドウを変更するには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) を開いてください。

1. ナビゲーションペインの [**Events**] を選択してください。

1. **[Actions]** (アクション)、**[Manage event windows]** (イベントウィンドウの管理) を選択してください。

1. 変更するイベントウィンドウを選択し、そして**[Actions]** (アクション)、**[Modify instance event window]** (インスタンスイベントウィンドウの変更) を選択してください。

1. イベントウィンドウの各フィールドを変更した後、[**イベントウィンドウの変更**] をクリックしてください。

------
#### [ 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) コマンドレットを使用します。

```
$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) コマンドレットを使用します。

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

------

## イベントウィンドウを削除する
<a name="delete-event-windows"></a>

一度に 1 つのイベントウィンドウを削除できます。

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

**イベントウィンドウを削除するには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) を開いてください。

1. ナビゲーションペインの [**Events**] を選択してください。

1. [**アクション**]、[**イベントウィンドウの管理**] の順にクリックしてください。

1. 削除するイベントウィンドウを選択し、[**アクション**]、[**インスタンスのイベントウィンドウの削除**] の順にクリックしてください。

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) コマンドレットを使用します。

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

**イベントウィンドウを強制的に削除するには**  
[Remove-EC2InstanceEventWindow](https://docs.aws.amazon.com/powershell/latest/reference/items/Remove-EC2InstanceEventWindow.html) コマンドレットを使用します。

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

------