AWS 最近发布了一个新的 AMI,其 Windows Server 2008 R2 上默认安装了 CloudFormation 工具。 AMI 本身可以在这里找到: [https://aws.amazon.com/amis/microsoft-windows-server-2008-r2-base-cloudformation]
当直接在 CloudFormation 模板中使用此 AMI 并启动堆栈时,我可以轻松启动堆栈,并且实例在启动期间毫无问题地下载位于 S3 中的文件,以及由 cfn-init 命令创建的所有文件夹也可以看出是预料之中的。
但是,如果我修改 AMI 以对其进行自定义(仅启用 IIS)并重新创建一个新的 AMI 并在模板中使用此 AMI,则不会下载文件,也不会下载假定由 cfn 创建的其他文件夹-可以看到init命令。
有什么建议吗?我错过了什么吗?!
最佳答案
最可能的原因是创建自定义 AMI 时未使用 EC2Config Service's捆绑选项卡。
Windows 上的 CloudFormaion 支持取决于 EC2Config 服务在首次启动时运行用户数据中指定的命令的功能。首次启动后此功能会自动禁用,以便后续启动不会导致重新运行相同的命令。
如果使用 EC2Config 的捆绑选项卡创建自定义 AMI,则可确保生成的 AMI 启用用户数据命令执行功能。因此,有必要(并且始终建议)使用 EC2Config 的 Bundle 选项卡创建自定义 AMI。
希望这有帮助。
问候, 舜
关于windows - 用于 Bootstrap 文件下载的 AWS CloudFormation 和 Windows Server 2008 R2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10392037/