0
我创建通过CloudFormation服务的整个堆栈。 ELB已创建,后来是ELB DNSName的DNS记录集。记录集取决于ELB。Cloudformation:无法创建ELB和DNSRECORD一起
"dns": {
"Type": "AWS::Route53::RecordSetGroup",
"Properties": {
"HostedZoneName": "*******.com.",
"RecordSets": [
{
"Name": {
"Fn::Join": [
"",
[
"\\052.",
{
"Ref": "EnvUrl"
},
".******.com"
]
]
},
"Type": "A",
"AliasTarget": {
"HostedZoneId": "Z3******O77V",
"DNSName": {"Fn::GetAtt": [ "elb", "DNSName" ]}
}
}
]
},
"Metadata": {
"AWS::CloudFormation::Designer": {
"id": "c1513eaa-fdaa-4fef-b50c-bdd178dd0446"
}
},
"DependsOn": [
"elb"
]
}
"elb": {
"Type": "AWS::ElasticLoadBalancing::LoadBalancer",
"Properties": {
"Policies": [
{
"PolicyName": "AWSConsole-SSLNegotiationPolicy",
"PolicyType": "SSLNegotiationPolicyType",
"Attributes": [
{
"Name": "Reference-Security-Policy",
.......
问题是CloudFormation无法创建记录集。错误:
Tried to create an alias that targets ctf21-elb-1huy2****pkn-727***38.eu-central-1.elb.amazonaws.com,
type A in zone Z3******O77V, but the alias target name does not lie within the target zone
我相信,这可能是由于它被创建后立即负载平衡器的可用性。就像您手动创建它一样,它不会立即显示在Route53的别名选择字段中,但需要几分钟时间。
我也尝试过使用Fn::Join
,相同的输出增加dualstack.-dnsname-
。
有什么我做错了吗?有什么比我能解决这个问题更好的吗?
Aaaaah我想我不得不把我的Route53托管区域ID在这里,我没有意识到ELB有另一个托管区域ID本身。我现在会测试。 – zed
太棒了,让我知道它什么时候工作 – Gigapalmer
工作很好。谢谢。 – zed