Тропосфера для создания псевдонима A запись, если у вас есть зоны с одинаковым именем

funsetgroup = template.add_resource(RecordSet(
        'funsetgroup',
        HostedZoneName=Join('', [Ref(hostedzone), "."]),
        Comment='Hosted Zone Name',
        Type="A",
        Name=Join('fun.', [Ref(hostedzone), "."]),
        AliasTarget=AliasTarget(
            HostedZoneId=GetAtt(myelb, "CanonicalHostedZoneNameID"),
            DNSName=GetAtt(myelb, "DNSName"),
        )))

В этом тропосферном коде я пытаюсь создать запись Alias ​​A для моей размещенной зоны, скажем, example.com. Но у меня есть 2 хост-зоны с одинаковыми именами (идентификаторы хост-зон будут другими). Хотя я явно упоминаю, что формирование облака идентификаторов размещенной зоны не создает стек, говоря "найден дубликат размещенной зоны". Я также попытался упомянуть идентификатор хост-зоны без имени хост-зоны, которая также не работает.

1 ответ

Решение

Вы также пытались использовать HostedZoneId вместо HostedZoneName в RecordSet? Это должно сработать - мы создали записи Alias ​​в разных зонах с одним и тем же именем в Empire, и наш код там также использует Cloudformation (с шайбой, похожей на тропосферу - настолько, что мы называем ее тропосферой). Вы можете увидеть это здесь:

https://github.com/remind101/empire/blob/ac27a91f3a5131b18700c350ca510d1befed7a51/scheduler/cloudformation/template.go#L647

Выполнение чего-то подобного в тропосфере должно работать нормально - просто используйте HostedZoneId как в объектах RecordSet, так и в объекте AliasTarget.

Другие вопросы по тегам