我刚刚开始了解 AWS,并且对使用现有 EBS 卷作为 EC2 实例的启动设备有疑问。
看起来很多实例都为其启动设备创建了一个 EBS 卷。如果 EBS 卷已设置为在实例终止时不会被删除,那么是否可以将该 EBS 卷用作新实例的启动/根设备?
例如,假设我有一个使用 EBS 卷作为根设备的实例,该实例在崩溃的虚拟机管理程序上运行。我可以使用该 EBS 卷启动另一个实例吗?
我发现您可以拍摄 EBS 卷的快照,然后从该快照创建 AMI。所以我猜这是恢复它的一种方法,但我想知道是否有更直接的方法?
我意识到理想情况下实例是被丢弃的,但我只是从学习的角度感到好奇。
谢谢,乔
答案1
EBS 卷可以附加到 EC2 实例上或从 EC2 实例上分离。
如果您的 EC2 实例由于某种原因崩溃,您可以将根卷移动到另一个 EC2 实例。
- 启动新的 EC2 实例。
- 停止该 EC2 实例。
- 从新实例中分离根卷。记下它附加的设备名称(例如 /dev/sda1)。
- 将根卷与原始实例分离。
- 使用相同的设备名称(例如 /dev/sda1)将原始实例的根卷附加到新实例。
- 启动您的新实例。
从技术上来说,这是可以做到的。
但是,由于您是从原始根卷启动的,因此您可能会遇到与原始 EC2 实例相同的问题。
您还可以执行的另一项操作是将原始根卷作为非根卷附加到新的 EC2 实例上,例如 /dev/sdb1。如果执行此操作,您可以检查卷上的数据以确定崩溃的原因并可能修复它。
还有一件事,虽然您可以从 EBS 快照中创建 AMI 映像,但您也可以直接从 EC2 实例中创建 AMI 映像。作为一个过程,这通常更简单。
答案2
有时我们需要提供确切的设备名称(如 /dev/xvda)才能使其正常工作。如果之前安装的卷是 /dev/xvda,请尝试使用相同的名称加载。