我创建了一个t2.micro EC2实例并在其上配置了node.js.运行正常。
接下来,我尝试使用此实例创建Auto Scaling组,创建启动配置,然后成功创建启动配置的Auto Scaling组。
问题是,当Auto Scaling工作时,创建的新实例不是旧实例的确切副本(图像)。它不会复制我的node.js配置和数据文件。
我出错的地方以及如何在AWS上实现此要求?
答案 0 :(得分:4)
当Auto Scaling启动新的Amazon EC2实例时,它会使用启动配置中指定的Amazon Machine Image(AMI)。新实例将具有与AMI完全相同的内容。
听起来您要么使用亚马逊发布的标准AMI,要么在配置实例之前创建了自己的AMI 。在AMI创建之后完成的任何配置都不会传递给新实例,因为它不是AMI的一部分。
你应该:
Auto Scaling启动的任何新实例都将使用新的AMI,它将具有您的所有配置。
创建自定义AMI的替代方法是使用在新实例启动时自动运行的User Data Script。此脚本可以下载软件,更改设置并通常个性化实例。这可能更容易更新,而不是在您想要更改某些内容时创建新的AMI。用户数据脚本可以输入到启动配置中,Auto Scaling在启动新实例时将使用该脚本。