自动创建AWS AMI,无需停机和数据丢失



我想知道是否有可能在没有停机和数据丢失的情况下在AWS中自动创建AMI,如果可能的话,我们如何实现它。我已使用系统管理器->维护窗口中,为了数据完整性,我已将重新启动设置为true,但我需要一种方法,使数据不会丢失。任何帮助都将不胜感激。谢谢。

根据评论讨论回答,这个问题对我来说仍然很模糊

您现在有EBS。我不确定你的实例是否在同一个AZ中。如果它们在同一个AZ中,那么您可以使用EBS多连接功能(仅适用于IO卷(与所有这些卷共享相同的存储。关于备份,您可以选择EBS快照

理想情况下,我建议您创建一个启动模板,使用可以装载到同一区域中的多个实例的EFS,如果您希望跨区域装载,则创建装载目标。EFS与AWS备份本机集成。每当发生任何故障转移或您的EC2因任何原因崩溃,并且其容量低于您的目标容量时,自动扩展将使用使用相同EFS的启动模板自动提供一个新实例

,但我需要一种方法来避免数据丢失。

  1. 如果你想实现这一点,那么根据Docs,你需要确保应用程序或操作系统不会写入ebs,ebs可以通过脚本或自定义逻辑进行管理

您可以拍摄正在使用的连接卷的快照。但是,快照仅捕获在发出快照命令时已写入Amazon EBS卷的数据。这可能会排除任何应用程序或操作系统缓存的任何数据。如果可以将任何文件写入卷的操作暂停足够长的时间以拍摄快照,则快照应该已完成。但是,如果无法暂停对卷的所有文件写入,则应从实例中卸载该卷,发出快照命令,然后重新装载该卷,以确保快照的一致性和完整性。

如果您实现了上述目标,那么您可以使用Data Lifecycle Manager 自动创建、保留和删除EBS快照和EBS支持的AMI

  1. 我还没有尝试过,但我认为将VM导出到S3,然后使用Ec2映像生成器自动化整个管道就可以了,你可以使用构建组件自定义你的进一步映像

指导入和导出vm的

不幸的是,除了损害数据完整性之外,没有现成的解决方案,但您可以尝试上述解决方案,以确保数据完整性和自动化

最新更新