我一直在谈论Amazon EC2,并对某些术语有些困惑。特别是有关AMI,快照和卷以及EBS的问题。

如果我错了,请纠正我,或者在我的以下声明中填写任何严重的空白: /> AMI(Amazon机器映像)是对操作系统和配置的完整“磁盘”捕获。启动实例时,可以从AMI启动实例。EBS(弹性块存储)是一种方法,可以保持从给定AMI启动后所做的任何修改的状态。在我看来,这有点像实例与AMI的最终状态之间的差异。
快照是...嗯,我不确定。我只能假定它是特定实例的快照,但是我不清楚这与EBS中存储的状态有何不同。快照与从现有实例创建EBS AMI有什么区别?
一个卷...看起来好像已装入AMI / EBS对的已安装磁盘空间?我也不确定这一点。我可以看到(从AWS控制台)可以从快照创建卷,并且可以附加/分离卷,但是我不清楚为什么或何时执行此操作。


#1 楼

您注意到,AMI是机器映像。它是存储为映像的系统的总快照,可以作为实例启动。我们将在稍后再回到AMI。

让我们看一下EBS。您的其他两个项目是该项目的子项目。 EBS是虚拟块设备。您可以将其视为硬盘驱动器,尽管链接到另一种存储设备确实是一堆软件魔术,但使其看起来像是实例的硬盘驱动器。

EBS只是整个服务的名称。在EBS内部,您拥有所谓的卷。这些是亚马逊向您推销的“单位”。您创建了一个卷,并且它们为您分配了X千兆字节的数量,并且像硬盘驱动器一样使用它,您可以将其插入任何运行的计算机(实例)。可以将卷创建为空白,也可以从上一卷的快照副本创建,这将我们带入下一个主题。交易量看起来像是在特定时刻,包括其所有数据。您可以有一个卷,将其附加到您的实例,将其填满,然后对其快照,但继续使用它。卷内容将在您用作文件系统时不断变化,但是快照将被及时冻结。您可以使用此快照作为基础来创建新卷。新卷看起来与拍摄快照时的第一个磁盘完全一样。您可以开始使用新卷代替旧卷来回滚数据,或者可以将相同的数据集附加到另一台计算机上。您可以随时为卷制作快照。就像冻结帧实例备份一样,可以在需要时轻松将其制作成新的活动磁盘(卷)。知道了?卷可以与任何实例连接和分离,但是一次只能连接到一个实例,就像它们是虚拟磁盘的物理磁盘一样。

现在回到AMI。这些很棘手,因为有两种类型。人们创建了一个短暂的实例,其中根文件系统看起来像是计算机的驱动器,但实际上位于内存中的某个位置,并在其停止使用的那一刻消失。另一种称为EBS支持的实例。这意味着,当您的实例加载时,它将其根文件系统加载到新的EBS卷上,从而基本上将EC2虚拟机技术置于其EBS技术之上。常规EBS卷位于EC2旁边,可以附加,但EBS支持的实例本身也就是卷。机器。由EBS支持的AMI将加载到EBS卷上,因此您可以将其关闭,然后从上次中断的位置开始备份,就像真实磁盘一样。 。如果实例受EBS支持,则还可以对其快照。基本上,这确实与常规快照完全一样……会在某一时刻冻结计算机根磁盘。实际上,它做的两件事不同。一种是它关闭您的实例,以便您获得磁盘的副本,就像在关闭计算机而不是在打开计算机一样。这使得启动起来更容易:)因此,当您为实例创建快照时,它将关闭它,拍摄磁盘图片,然后再次启动。其次,它将映像另存为AMI,而不是常规磁盘快照。基本上,它是卷的可启动快照。

评论


感谢您提供的优质信息,我认为这对我来说是合而为一的。后续问题:对EBS AMI进行快照与右键单击并从EC2 Web控制台中选择“创建映像(EBS AMI)”相比有什么区别?根据上面的描述,除了您的使用方式外,它们似乎相同。您可以从快照创建卷,然后将该卷附加到AMI。正如EBS AMI映像在哪里……我不知道,消除了将其附加到卷的步骤?

–马特
2011年5月11日19:00

实际上,我认为用于AMI快照的控制台工具与Web控制台具有相同的作用。描述错误之处在于附件。如果为实例创建快照,则可以为根卷创建快照,但快照不只是AMI。您制作到卷中的常规快照并附加到实例。创建到实例中的实例快照(您不将卷附加到实例,而是实例)。那有意义吗?

–卡莱布
2011年5月11日19:05

每当我说控制台时,我都想说网络控制台。我还没有玩过命令行api或其他任何东西。我想我很困惑,是从实例创建EBS AMI,然后从卷创建快照,但似乎该卷是EBS AMI。然后,要创建新实例,您可以1)从创建的AMI启动一个,或2)将快照复制到卷并启动连接到该卷的AMI,但最后结果是相同的。那是对的吗?

–马特
2011年5月11日19:11

直到“看起来像”部分都没问题,然后它才停止与现实匹配。特别是最后一部分(您的2)是胡说八道。您不将AMI附加到卷上。 EBS支持的AMI是经过特殊标记的可启动卷。卷被附加到实例,而不是相反。

–卡莱布
2011年5月11日19:19

快照时,除了根磁盘外。我有很多磁盘存储的数据集不属于任何给定计算机。如果要对系统磁盘/根驱动器进行快照,请使用EBS AMI创建工具。但是有时您会拥有其他卷,这些卷具有可能附加或可能附加到给定系统的其他数据集。您可以自己创建快照。如果它们恰好连接到快照实例,则将创建一个自动快照,但是有时您可能还想制作自己的快照,比如说复制磁盘并将其附加到另一个实例。

–卡莱布
2011年5月11日19:45

#2 楼

我想让它变得简单。从现有实例创建AMI模板(例如instance#1。请注意,创建AMI模板时,还将具有卷快照,请查看快照部分。要创建新实例时,请选择新创建的实例。 AMI模板,它会在创建AMI模板时选择快照。很简单

现在,如果您已经从instance#1的卷中创建快照,那就可以了。创建新实例从AMI模板中,然后分离为其自动创建的卷,然后从实例1的卷中附加从快照创建的卷。

#3 楼

总结一下:


EBS = AWS服务本身
EBS Volume =将其视为可以连接到EC2实例的硬盘驱动器

>快照=卷的时间点副本
AMI =完整实例的副本

EC2 =运行VM计算的服务


#4 楼

除上述说明外,这里是一个示例以阐明所有这些内容。

假设您的“ EC2实例I1”具有两个附加的EBS卷-EBS卷V1a和EBS卷V1b。实例I1,您将获得-

a。 EC2实例I1的AMI映像,我们将其称为AMI1

b。 EBS卷V1a的快照,我们称其为S1


,然后,如果从AMI1映像启动新实例,则将获得-

a。一个新的EC2实例,我们将其称为I2

b。由Snapshot S1生成的新EBS卷称为V2a

c。从Snapshot S2生成的新EBS卷,我们称其为V2b

总结--AMI映像创建该卷的快照(附加到原始实例(从其创建AMI)的

从AMI映像启动的新实例从附加到该AMI的快照创建卷。

我在http://zilhaz.com/ebs-ami-aws-ec2/
中对其进行了详细说明