我记得能够做到这一点,也许通过ElasticFox ,但扩展似乎没有加载在Firefox 7.0上。
AWS控制台似乎不支持热图像创build – 当我创build图像时,机器将重新启动。
有没有另外一个简单的方法来做到这一点,或者我最终是否需要熟悉EC2命令行工具?
在创buildAMI(默认行为)时,要停止实例的原因是为了使根文件系统的快照完全一致。 否则,您可能会复制块设备,而并非所有应用程序或系统文件系统更改尚未从内存写入磁盘。
随着磁盘写入,服务器的活动越多,这个风险就越大。
如果您有一个相当安静的服务器,则可以使用以下步骤创buildEBS引导AMI,而不用停止/启动(重新启动):
警告! 这些步骤不是build议从运行实例创buildAMI(图像)的方法
如果可能,请login到您的服务器并运行以下命令以刷新挂起写入磁盘。 在这个命令之后写入的数据可能不会写入磁盘,应用程序可能会将自己的更改保存在准备写入磁盘的内存中,因此存在不一致的风险。
sudo sync
创build根EBS卷的快照,并等待完成。
将快照注册为AMI(图像)。
步骤2和3可以通过命令行或通过EC2控制台完成。
棘手的部分是,当您将快照注册为AMI时,您需要select正确的AKI(内核)和ARI(ramdisk)。 find运行实例使用的内核和ramdisk,并使用相同的内核和ramdisk。 对于现代的Ubuntu AMI,不需要ramdisk,因此不需要指定。
仔细testing新的AMI,以确保不会因为没有一致的文件系统而造成问题。 请注意,问题可能需要一段时间才能显示,因为它们可能位于在快照附近打开的任何文件/目录。
我非常关心创build一致的快照,我将社区的最佳实践放在一起,并发布了一个命令行工具,以便在正在运行的系统上执行此操作:
这可能不是EBS根卷的最佳select,因为有打开的日志文件和其他可能的冲突。 另外,大多数人没有在根磁盘上运行XFS。
通过他们的networking界面,或通过命令行,但在这两种情况下,实例,但重新启动。 这对执行根文件系统的干净快照并将其转换为AMI是必需的。