

# S3 を使用して AMI を保存および復元する
<a name="ami-store-restore"></a>

Amazon マシンイメージ (AMI) を Amazon S3 バケットに保存し、AMI を別の S3 バケットにコピーして、S3 バケットから復元できます。S3 バケットを使用して AMI を保存および復元することで、AMI をある AWS パーティションから別のパーティション (例えば、主要な商用パーティションから AWS GovCloud (US) パーティション) にコピーできます。AMI を S3 バケットに保存することで、AMI のアーカイブコピーを作成することもできます。

S3 を使用した AMI の保存および復元のサポート対象の API は、`CreateStoreImageTask`、`DescribeStoreImageTasks`、および `CreateRestoreImageTask` です。

`CopyImage` は、AWS パーティション*内*の AMI のコピーの際に使用することが推奨される API です。ただし、`CopyImage` は、AMI を*別の*パーティションにコピーできません。

AWS パーティションの詳細については、「*IAM ユーザーガイド*」の「[Amazon リソースネーム (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html)」ページの「*パーティション*」を参照してください。

**警告**  
AWS パーティションまたは AWS リージョン間でデータを移動する場合、適用されるすべての法令およびビジネス要件 (適用される政府の規制およびデータ所在地に関する要件を含みますが、これらに限られません) を確実に遵守してください。

**Topics**
+ [ユースケース](#use-cases)
+ [制限事項](#ami-store-restore-limitations)
+ [コスト](#store-restore-costs)
+ [AMI の保存と復元の仕組み](store-restore-how-it-works.md)
+ [保存イメージタスクを作成する](work-with-ami-store-restore.md)

## ユースケース
<a name="use-cases"></a>

**Topics**
+ [AWS パーティション間で AMI をコピーする](#copy-to-partition)
+ [AMI のアーカイブコピーを作成する](#archival-copies)

### AWS パーティション間で AMI をコピーする
<a name="copy-to-partition"></a>

S3 バケットを使用して AMI を保存および復元することで、ある AWS パーティションから別のパーティションに、またはある AWS リージョンから別のリージョンに AMI をコピーできます。次の例では、主要な商用パーティションから AWS GovCloud (US) パーティションに、具体的には `us-east-2` リージョンから `us-gov-east-1` リージョンに AMI をコピーします。

あるパーティションから別のパーティションに AMI をコピーするには、次の手順に従います。
+ `CreateStoreImageTask` を使用して、現在のリージョンの S3 バケットに AMI を保存します。この例では、S3 バケットは `us-east-2` にあります。
+ `DescribeStoreImageTasks` を使用して、保存タスクの進行状況をモニタリングします。タスクが完了すると、オブジェクトが S3 バケットに表示されます。
+ 任意の手順を使用して、保存された AMI オブジェクトをターゲットパーティションの S3 バケットにコピーします。この例では、S3 バケットは `us-gov-east-1` にあります。
**注記**  
パーティションごとに異なる AWS 認証情報が必要なため、S3 オブジェクトをあるパーティションから別のパーティションに直接コピーすることはできません。パーティション間で S3 オブジェクトをコピーするプロセスは、このドキュメントの対象外です。例として、次のコピープロセスを提供していますが、お客様のセキュリティ要件を満たすコピープロセスを使用する必要があります。  
パーティション間で 1 つの AMI をコピーするためのコピープロセスはシンプルです。ソースバケットから中間ホスト (EC2 インスタンスやラップトップなど) に[オブジェクトをダウンロード](https://docs.aws.amazon.com/AmazonS3/latest/userguide/download-objects.html)し、中間ホストからターゲットバケットに[オブジェクトをアップロード](https://docs.aws.amazon.com/AmazonS3/latest/userguide/upload-objects.html)するだけです。プロセスの各段階で、パーティションの AWS 認証情報を使用します。
より持続的な使用のために、コピーを管理するアプリケーションの開発をご検討ください。S3 [マルチパートダウンロードとアップロード](https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html)を使用することも考慮に値します。
+ `CreateRestoreImageTask` を使用して、ターゲットパーティションの S3 バケットから AMI を復元します。この例では、S3 バケットは `us-gov-east-1` にあります。
+ その状態が使用可能になるタイミングを確認するために、AMI を記述して復元タスクの進行状況をモニタリングします。また、スナップショットを記述することで、復元される AMI を構成するスナップショットの進行状況 (%) をモニタリングすることもできます。

### AMI のアーカイブコピーを作成する
<a name="archival-copies"></a>

AMI を S3 バケットに保存することで、AMI のアーカイブコピーを作成できます。AMI は S3 内の 1 つのオブジェクトにパックされ、すべての AMI メタデータ (共有情報を除く) は、保存された AMI の一部として保持されます。AMI データは、ストレージプロセスの一環として圧縮されます。簡単に圧縮できるデータを含む AMI は、S3 で小さめのオブジェクトとなります。コストを削減するために、より安価な S3 ストレージ階層を使用できます。詳細については、[Amazon S3 ストレージクラス](https://aws.amazon.com/s3/storage-classes/)および [Amazon S3 の料金](https://aws.amazon.com/s3/pricing/)をご参照ください。

## 制限事項
<a name="ami-store-restore-limitations"></a>
+ AMI を保存するには、AWS アカウント が AMI とそのスナップショットを所有しているか、AMI とそのスナップショットを[アカウントと直接共有する](sharingamis-explicit.md)必要があります。[公開されているだけの](sharingamis-intro.md) AMI は保存できません。
+ これらの API を使用して保存できるのは、EBS-backed AMI だけです。
+ 準仮想化 (PV) AMI はサポートされていません。
+ 保存可能な AMI の上限サイズ (圧縮前) は、5,000 GB です。
+ 保存イメージリクエストのクォータ: 進行中の 1,200 GB の保存作業 (スナップショットデータ)。
+ 復元イメージリクエストのクォータ: 進行中の 600 GB の復元作業 (スナップショットデータ)。
+ 保存タスク中は、スナップショットを削除してはならず、保存を実行する IAM プリンシパルにはスナップショットへのアクセス権が必要です。それ以外の場合は、保存プロセスが失敗します。
+ 同じ S3 バケットに AMI の複数のコピーを作成することはできません。
+ S3 バケットに保存されている AMI は、元の AMI ID では復元できません。[AMI エイリアシング](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-ec2-aliases.html)を使用すると、これを軽減できます。
+ 現在、保存 API と復元 API は、AWS Command Line Interface、AWS SDK、および Amazon EC2 API を使用する場合にのみサポートされます。Amazon EC2 コンソールを使用して AMI を保存および復元することはできません。

## コスト
<a name="store-restore-costs"></a>

S3 を使用して AMI を保存および復元する場合、保存 API と復元 API で使用されるサービス、およびデータ転送について料金が発生します。API は、S3 と EBS Direct API を使用します (これらの API がスナップショットデータにアクセスするために内部的に使用されます)。詳細については、[Amazon S3 の料金](https://aws.amazon.com/s3/pricing/)および [Amazon EBS の料金](https://aws.amazon.com/ebs/pricing/)をご参照ください。