如何避免cloudformation模板之间的循环引用?
E.g。我的Web服务器有一个模板,另一个模板有我的数据库实例。模板DB会像:
"Database": {
"Type":"AWS::RDS::DBInstance",
"Properties": {
// lots of other props
"VPCSecurityGroups": [ {"Ref":"DBSecurityGroup"} ]
}
},
"DBSecurityGroup" : {
"Type":"AWS::RDS::DBSecurityGroup",
"Properties": {
// lots of other props
"SecurityGroupIngress": [{... "SourceSecurityGroupId":{"Ref":"WebSecurityGroup"}}]
}
}
但是在我的Web服务器模板中,我需要引用DBSecurityGroup:
"WebServer": {
"Type":"AWS::EC2::Instance",
"Properties": {
// lots of other props
"SecurityGroups": [ {"Ref":"DBSecurityGroup"} ]
}
},
"WebSecurityGroup" : {
"Type":"AWS::EC2::SecurityGroup",
"Properties": {
// lots of other props
"SecurityGroupEgress": [{... "SourceSecurityGroupId":{"Ref":"DBSecurityGroup"}}]
}
}
如何避免模板之间的这些循环引用?
答案 0 :(得分:0)
使用单独的AWS::EC2::SecurityGroupEgress
资源,而不是SecurityGroupEgress属性。