EC2 インスタンスにおける「ボリューム(EBS)」、「スナップショット」、「AMI(Amazon Machine Image)」の違いに関して説明します。ボリュームはEC2インスタンスの「ハードディスク」として使用します。バックアップは「スナップショット」として生成し S3 に保存されます。また「スナップショット」をAMI として登録することにより起動可能なイメージを生成することが可能です。
比較は以下の表の通りとなります。
比較表 | ボリューム(EBSボリューム) | スナップショット | AMI |
概要 | EC2インスタンスなどが"ローカルディスク"として使用するボリューム。インスタンスからは物理的に接続されたディスクに見える。(実際はネットワーク経由で接続) | ボリュームの断面をコピー。 S3 に保存。 | ・スナップショット及びインスタンスの構成情報(メタデータ)から構成される起動テンプレート。 ・スナップショットに依存 ・「イメージ」と表記される場合あり。 ・スナップショット≒AMI 。ほぼイコールだが、スナップショットの構成情報は除外されている。スナップショットはハードディスクであるため、CPUその他の情報は保有しておらず別途構成情報として指定する必要あり。逆に柔軟性がある。 |
一言でいうと | 物理ディスク | EBSのバックアップ | テンプレート |
作成方法 | EC2インスタンス生成時あるいは追加ボリュームなどで生成。 | ボリューム(EBS)から生成。 | スナップショットから「イメージ作成」で作成。 (*)その他AMIはAWS側からすでに用意されているものや、ベンダーが提供するものなどがある。 |
主な用途 | EC2インスタンスなどのハードディスク。 インスタンスにアタッチして使う。 | ボリュームのバックアップ。ハードディスクのバックアップのようなもの。 | スナップショットを起動可能としたもの。ハードディスクだけでは起動できないので、その他構成情報が必要となる。ただし AMI はテンプレートであり、AMIからボリュームにコピーされ実行される。 AMIから新規にインスタンスを起動することが可能。 |
名前 | Vol-******** | snap-******** | ami-******** |
保存される場所 | EBS | S3 | S3 |
変化 | EC2インスタンスなどにより内容は変化する | 原則、スナップショット取得後は内容は変化しない | 内容は変化しない(アップデートはされる) |
世代管理 | できない(そもそも世代管理の意味がない) | リージョンによるが、AWS で世代管理機能あり。 | 2019年現在で世代管理機能はなし。別途作成する必要あり。 |
備考 | - | このボリュームを利用してAMIを登録した場合、AMIを削除せずボリュームを削除すると以下の警告が表示される。 The snapshot snap-****************** is currently in use by ami-****************** | 主な構成情報(メタデータ)はおそらく以下の通り。 AMI ID AMI 名 所有者 ソース プラットフォーム アーキテクチャ イメージタイプ 仮想化タイプ ルートデバイス名 ルートデバイスタイプ RAM ディスク ID カーネル ID ブロックデバイス |
EC2 インスタンス作成時に選択できるのが"AMI"です。スナップショットからは直接はECインスタンスは生成できません。
AMI 起動時に構成を指定することも可能だが前提の構成と違い場合は起動できない可能性もある。
関連リンク:
EBS と インスタンスストアの違い
Amazon EBS-BackedとInstance Store-Backedの違い
AWS のストレージサービスの違いに関して | EFS,EBS,S3,Amazon Glacier
EBS(Elastic Block Storage) タイプの違い
AWS のややこしい EBS ボリュームタイプの違いを整理する
自己所有 , パブリックイメージ , プライベートイメージの違い | AWS AMI
シングルAZ と マルチAZ の違いに関して
AWSにおける リージョン、AZ、エッジの違い
AZ、リージョン、グローバルサービスの違い
Amazon SNS と SES の違い | メール送信機能差
Amazon Linux と CentOS の違い | 大きなメリットとデメリットを理解する
Amazon Provided DNS と Route 53の違い
AWS まぎわらしい用語一覧へ戻る