Amazon EC2の用語-AMI対EBS対スナップショット対ボリューム


127

私はAmazon EC2をいじくり回してきましたが、いくつかの用語について少し混乱しています。特にAMI、スナップショットとボリューム、およびEBSに関して

間違っている場合は修正してください。または、次のステートメントの重大なギャップを埋めてください。

  • AMI(Amazon Machine Image)は、オペレーティングシステムと構成の完全な「ディスク」キャプチャです。インスタンスを起動すると、AMIから起動します

  • EBS(Elastic Block Storage)は、特定のAMIから起動した後に行った変更の状態を保持する方法です。私の考えでは、これはインスタンスとAMIの最終状態の差分のようなものです。

  • スナップショットは...まあ、よくわかりません。特定のインスタンスのスナップショットであると想定することはできますが、これがEBSに保存されている状態とどのように異なるかは明確ではありません。スナップショットは、既存のインスタンスからEBS AMIを作成することとどのように異なりますか?

  • ボリュームは... AMI / EBSペアがロードされるマウントされたディスクスペースのように見えますか?私もこれについてはわかりません。(AWSコンソールから)スナップショットからボリュームを作成できること、およびボリュームをアタッチ/デタッチできることがわかりますが、その理由タイミングは明確ではありません。

回答:


150

AMIは、ご指摘のとおり、マシンイメージです。これは、インスタンスとして起動できるイメージとして保存されたシステムの完全なスナップショットです。すぐにAMIに戻ります。

EBSを見てみましょう。他の2つのアイテムは、このサブアイテムです。EBSは仮想ブロックデバイスです。これはハードドライブと考えることができますが、別の種類のストレージデバイスにリンクすることは実際にはソフトウェアマジックの束ですが、インスタンスからはハードドライブのように見えます。

EBSはサービス全体の単なる名前です。EBSの内部には、ボリュームと呼ばれるものがあります。これらは、Amazonが販売している「ユニット」です。ボリュームを作成すると、Xギガバイトが割り当てられ、実行中のコンピューター(インスタンス)に接続できるハードドライブのように使用されます。ボリュームは、空または前のボリュームのスナップショットコピーから作成できます。これにより、次のトピックに進みます。

スナップショットは...まあ...ボリュームのスナップショット:特定の瞬間にボリュームがどのように見えるかを正確にキャプチャしたもので、すべてのデータを含みます。ボリュームを作成し、インスタンスにアタッチし、それを詰め込み、スナップショットを作成しますが、使用し続けます。ボリュームの内容は、ファイルシステムとして使用したときに変化し続けますが、スナップショットは時間内に凍結します。このスナップショットをベースとして使用して、新しいボリュームを作成できます。新しいボリュームは、スナップショットを作成したときの最初のディスクとまったく同じように見えます。古いボリュームの代わりに新しいボリュームを使用してデータをロールバックしたり、同じデータセットを2台目のマシンに接続したりできます。いつでもボリュームのスナップショットを取得できます。これは、必要に応じて新しいライブディスク(ボリューム)に簡単に作成できる、フリーズフレームインスタンスのバックアップのようなものです。

そのため、ボリュームは新しい空白スペースまたはスナップショットに基づくことができます。わかった?ボリュームはどのインスタンスからでもアタッチおよびデタッチできますが、仮想抽象化である物理ディスクのように、一度に1つのインスタンスにしか接続できません。

AMIに戻りましょう。これらには2つのタイプがあるため、注意が必要です。ルートファイルシステムがコンピューターのドライブのように見えますが、実際にはメモリのどこかに置かれ、使用が停止される瞬間に気化する一時的なインスタンスを作成します。もう1つの種類は、EBSバックアップインスタンスと呼ばれます。つまり、インスタンスがロードされると、ルートファイルシステムが新しいEBSボリュームにロードされ、基本的にはEBSテクノロジーの上にEC2仮想マシンテクノロジーがレイヤー化されます。通常のEBSボリュームはEC2の隣にあり、接続することができますが、EBSバックアップインスタンスもボリュームそのものです。

通常のAMIは、マシンとしてロードされる大きなデータの塊です。EBSでバックアップされたAMIはEBSボリュームにロードされるため、シャットダウンすることができ、実際のディスクと同じように中断した場所からバックアップが開始されます。

それをすべてまとめましょう。インスタンスがEBSでバックアップされている場合、スナップショットを作成することもできます。基本的に、これは通常のスナップショットとまったく同じことを行います...ある時点でのコンピューターのルートディスクのフリーズフレームです。実際には、2つの異なることを行います。1つは、インスタンスをシャットダウンすることで、ディスクのコピーを取得するために、ONではなくOFFのコンピューターに見えるようにすることです。これにより、起動が簡単になります:)したがって、インスタンスのスナップショットを作成すると、インスタンスがシャットダウンされ、ディスクの画像が取得され、再度起動されます。次に、そのイメージを通常のディスクスナップショットではなくAMIとして保存します。基本的には、ボリュームのブート可能なスナップショットです。


1
素晴らしい情報をありがとう、私はそれが一緒に来ていると思います。フォローアップの質問:EBS AMIのスナップショットを作成することと、右クリックしてEC2 Webコンソールから「Create Image(EBS AMI)」を選択することとの違いは何ですか?上記の説明に基づいて、それらは使用方法を除いて同一のように見えます。スナップショットからボリュームを作成し、そのボリュームをAMIに接続できます。EBS AMIのイメージがどこにあるのか...私にはわかりませんが、ボリュームにアタッチする手順を排除しますか?
マット

実際、AMIのスナップショットを作成するコンソールツールは、Webコンソールと同じことを行うと思います。説明の誤りは添付ファイルに関するビットです。インスタンスのスナップショットを作成する場合、はい、ルートボリュームのスナップショットが作成されますが、それ以上はスナップショットがAMIになります。ボリュームに作成してインスタンスにアタッチする通常のスナップショット。インスタンスに作成するインスタンスのスナップショット(ボリュームをインスタンスにアタッチせず、インスタンスです)。それは理にかなっていますか?
カレブ

私がコンソールと言ったときはいつでも、ウェブコンソールと言うつもりでした。私はまだコマンドラインAPIなどを使ったことがありません。私が混乱しているのは、インスタンスからEBS AMIを作成し、ボリュームからスナップショットを作成していると思いますが、そのボリューム EBS AMIのようです。その後、新しいインスタンスを作成するには、1)作成されたAMIからインスタンスを起動するか、2)スナップショットをボリュームにコピーしてそのボリュームに接続されたAMIを起動しますが、結果は同じです。あれは正しいですか?
マット

「ように見える」部分までは大丈夫でしたが、現実と一致しなくなりました。特に最後の部分(あなたの2)はナンセンスです。AMIをボリュームにアタッチしません。EBSは、AMIのが担保されている特別にブート可能ボリュームをタグ付け。ボリュームはインスタンスにアタッチされますが、その逆ではありません。
カレブ

2
ルートディスク以外のスナップショットを作成しているとき。特定のコンピューターの一部ではないデータセットを格納するディスクがたくさんあります。システムディスク/ルートドライブのスナップショットを作成する場合は、EBS AMI作成ツールを使用します。ただし、特定のシステムに接続されている場合とされていない場合もある、他のデータセットを持つ他のボリュームがある場合があります。自分の時間にスナップショットを作成できるもの。スナップショットを作成したインスタンスにアタッチすると、自動スナップショットが作成されますが、ディスクを複製して別のインスタンスにアタッチするなど、独自のスナップショットを作成することもできます。
カレブ

9

簡単にしましょう。既存のインスタンスからAMIテンプレートを作成します(たとえば、instance#1。AMIテンプレートを作成すると、ボリュームスナップショットも作成されます。スナップショットセクションを確認します。新しいインスタンスを作成する場合は、新しく作成したAMIテンプレートは、AMIテンプレートが作成された時点でスナップショットを選択します。

これで、instance#1のボリュームからスナップショットを作成している場合は問題ありません。AMIテンプレートから新しいインスタンスを作成し、そのテンプレートに対して自動的に作成されたボリュームをデタッチし、instance#1のボリュームのスナップショットから作成されたボリュームをアタッチします。


2

要約すると:

  • EBS = AWSサービス自体

  • EBSボリューム = EC2インスタンスに接続できるハードドライブのように考えてください

  • スナップショット =ボリュームのポイントインタイムコピー

  • AMI =完全なインスタンスのコピー


0

上記の説明に加えて、これらすべてを明確にする例があります。

「EC2インスタンスI1」には、EBSボリュームV1aとEBSボリュームV1bの2つのEBSボリュームが接続されているとします。

これで、EC2インスタンスI1からAMIイメージを作成すると、次のようになります-

a。EC2インスタンスI1のAMIイメージ、AMI1と呼びましょう

b。EBS Volume V1aのスナップショット、S1と呼びましょう

c。EBS Volume V1bのスナップショット、S2と呼びましょう

次に、AMI1イメージから新しいインスタンスを起動すると、次のようになります-

a。新しいEC2インスタンス、I2と呼びましょう

b。スナップショットS1から生成された新しいEBSボリュームをV2aと呼びましょう

c。スナップショットS2から生成された新しいEBSボリュームをV2bと呼びましょう

まとめると-

  1. AMIイメージは、元のインスタンス(AMIの作成元)に接続されているボリュームのスナップショットを作成します

  2. AMIイメージから起動された新しいインスタンスは、そのAMIに接続されたスナップショットからボリュームを作成します。

http://zilhaz.com/ebs-ami-aws-ec2/で詳細に説明しました

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.