最初,我在AWS中手动创建了所有资源。现在,我尝试使用CloudFormation(SAM)模板创建所有新资源。有什么办法可以将我所有的(手动创建的)旧资源都添加到此CF模板中,然后再使用此CF对那些旧资源进行修改?
答案 0 :(得分:1)
您可以在新堆栈中导入现有资源! https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-existing-stack.html
答案 1 :(得分:0)
很遗憾,这是不可能的。
要使用CloudFormation管理资源,必须先由CloudFormation创建它们。
您将需要找到从现有资源到CloudFormation创建的资源的某种“迁移路径”。
答案 2 :(得分:0)
无法将现有资源添加到cloudformation模板中并使用Cloudformation对其进行管理-但您可以看看如何使用CloudFormer(https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-using-cloudformer.html)从现有资源为您创建cloudformation模板
它不会管理现有资源,但会创建一个模板,以便您可以再次启动相同的资源。
答案 3 :(得分:0)
不可能将现有资源直接添加到CloudFormation模板,但是您可以部署CloudFormer堆栈以从现有资源创建模板。
https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-using-cloudformer.html
成功创建该模板后,可以使用跨堆栈引用,在其中可以定义参数来导入/导出现有资源的值。
此外,有关如何定义参数和导入/导出值的更多详细信息,您可以通过以下链接: https://aws.amazon.com/premiumsupport/knowledge-center/cloudformation-reference-resource/
注意:部署CloudFormer创建的模板后,您可以消失现有的资源,因为它是通过堆栈新部署的。
希望这会有所帮助!
答案 4 :(得分:0)
现在可以通过AWS的更新来实现,请参见此处以获取更多详细信息
https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import.html