

# EC2 インスタンスの停止および開始の動作
<a name="how-ec2-instance-stop-start-works"></a>

Amazon EC2 インスタンスを停止すると、変更はインスタンスのオペレーティングシステム (OS) レベルで登録され、一部のリソースは失われますが、一部のリソースは存続します。インスタンスを起動すると、変更はインスタンスレベルで登録されます。

**Topics**
+ [インスタンスを停止するとどうなるか](#what-happens-stop)
+ [インスタンスを起動するとどうなるか](#what-happens-start)
+ [アプリケーションの応答をテストして停止して起動する](#test-stop-start-instance)
+ [インスタンスの起動と停止に関連するコスト](#ec2-stop-start-costs)

## インスタンスを停止するとどうなるか
<a name="what-happens-stop"></a>

デフォルトの停止方法を使用してインスタンスを停止したときの一般的な動作については、次のとおりに示されます。使用する[停止メソッド](instance-stop-methods.md)によっては、一部動作が異なる場合がありますのでご注意ください。

**OS レベルでの変更の登録**
+ API リクエストはボタンのクリックイベントをゲストに送信します。
+ ボタンのクリックイベントの結果として、さまざまなシステムサービスが停止します。正常な OS シャットダウンは、ハイパーバイザーによる ACPI シャットダウンボタンのクリックイベントによってトリガーされます。
+ ACPI シャットダウンが開始されます。
+ このインスタンスは、正常な OS シャットダウンプロセスが終了したときにシャットダウンされます。設定可能な OS シャットダウン時間はありません。
+ インスタンス OS が数分以内に正常にシャットダウンされない場合はハードシャットダウンが実行されます。
+ インスタンスが実行を停止します。
+ インスタンスのステータスが `stopping` に変更されたら、`stopped` になります。
+ [自動スケーリング] インスタンスが `running` 以外の Amazon EC2 状態のとき、インスタンスが Auto Scaling グループにあるか、ステータスチェックのステータスが `impaired` になった場合、Amazon EC2 Auto Scaling はインスタンスを異常と見なして置き換えます。詳細については*Amazon EC2 Auto Scaling ユーザーガイド*の「[Auto Scaling グループ内のインスタンスのヘルスチェック](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-health-checks.html)」を参照してください。
+ [Windows インスタンス] Windows インスタンスを停止および起動した場合、起動エージェントはアタッチされている Amazon EBS ボリュームのドライブ文字を変更するなど、インスタンスでタスクを実行します。これらのデフォルトおよび変更方法については「[EC2 Windows インスタンスの起動時に EC2Launch v2 エージェントを使用してタスクを実行する](ec2launch-v2.md)」を参照してください。

**失われるリソース**
+ RAM に保存されているデータ。
+ インスタンスストアボリュームに保存されているデータは失われます。
+ 起動時または開始時に Amazon EC2 がインスタンスに自動的に割り当てられたパブリック IPv4 アドレス。パブリック IPv4 アドレスに変更を加えないようにするにはインスタンスに [Elastic IP アドレス](elastic-ip-addresses-eip.md)を関連付けます。

**存続するリソース**
+ アタッチされた Amazon EBS ボリュームとデータボリューム。
+ Amazon EBS ボリュームに保存されているデータ。
+ アタッチされた[ネットワークインターフェイス](using-eni.md)。

  ネットワークインターフェイスには次のリソースが含まれており、これらも保持されます。
  + プライベート IPv4 アドレス。
  + IPv6 アドレス。
  + インスタンスに関連付けられた Elastic IP アドレス。インスタンスが停止すると、[関連する Elastic IP アドレスに対する課金が始まります](elastic-ip-addresses-eip.md#eip-pricing)。

次の図は、EC2 インスタンスを停止したときに保持されるものと失われるものとを示しています。図は 3 つの要素からなります。1 つ目の**実行中の EC2 インスタンス**では、`running` 状態のインスタンスとそのリソースが描かれています。2 つ目の**停止した EC2 インスタンス**では、`stopped` 状態のインスタンスと、そこで保持されているリソースが描かれています。3 つ目の**紛失**では、インスタンスが停止したときに失われたリソースが描かれています。

![\[インスタンスが停止すると、パブリック IPv4 アドレス、RAM、およびインスタンスストレージデータは失われます。\]](http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/images/stop-instance.png)


Mac インスタンスを停止したときに起きることについては「[Amazon EC2 Mac インスタンスを停止または終了する](mac-instance-stop.md)」を参照してください。

## インスタンスを起動するとどうなるか
<a name="what-happens-start"></a>
+ ほとんどの場合、基盤となる新しいホストコンピュータにインスタンスが移行します (ただし、[専有ホスト](dedicated-hosts-understanding.md)設定でインスタンスがホストに割り当てられた場合などは現在のホストにインスタンスが残ります)。
+ 関連付けられた EBS ボリュームおよびネットワークインターフェイスがインスタンスに再アタッチされます。
+ インスタンスがパブリック IPv4 アドレスを受信するように設定されている場合、Amazon EC2 は新しいパブリック IPv4 アドレスをインスタンスに割り当てます。ただし、Elastic IP アドレスに関連付けられたセカンダリネットワークインターフェイスまたはセカンダリプライベート IPv4 アドレスがある場合は割り当てしません。
+ プレイスメントグループ内のインスタンスを停止して再起動しても、そのインスタンスは同じプレイスメントグループ内で実行されます。ただし、インスタンスに対して十分な容量がない場合、起動は失敗します。既にインスタンスを実行中のプレイスメントグループ内のインスタンスを起動するときにキャパシティエラーを受信した場合は、プレイスメントグループ内のすべてのインスタンスを停止して、もう一度起動してください。インスタンスを起動すると、すべてのリクエストしたインスタンスに応じた容量があるハードウェアにインスタンスが移行される場合があります。

## アプリケーションの応答をテストして停止して起動する
<a name="test-stop-start-instance"></a>

インスタンスが停止後に起動された場合のアプリケーションの応答をテストするにはAWS Fault Injection Service を使用します。詳細については[AWS Fault Injection Service ユーザーガイド](https://docs.aws.amazon.com/fis/latest/userguide/what-is.html)を参照してください。

## インスタンスの起動と停止に関連するコスト
<a name="ec2-stop-start-costs"></a>

インスタンスの停止と起動には以下のコストがかかります。

**停止** – インスタンスの状態が `shutting-down` または `terminated` に変わると、そのインスタンスの料金は発生しなくなります。停止したインスタンスの使用料やデータ転送料は請求されません。Amazon EBS ストレージボリュームの保存には料金がかかります。

**起動** – 停止したインスタンスを再起動するたびに、1 分間分の最低料金が課金されます。1 分経過した後は使用した秒数のみ課金されます。例えば、インスタンスを 20 秒間実行して停止した場合は1 分間分課金されます。インスタンスを 3 分 40 秒実行した場合はちょうど 3 分 40 秒間分課金されます。