我们在AWS中设置了网站。当我们为新版本调出一个堆栈时,我们会在版本化的URL上提供它。即。
V1 v1.mysite.com
V2 v2.mysite.com
等
是否可以自动生成一个指向我网站最新部署版本的DNS条目?因此,在部署V1之后,我会有两个DNS条目:
v1.mysite.com
转到它的堆栈的IP
mysite.com
重定向到v1.mysite.com
然后当我部署V2时,mysite.com
现在重定向到v2.mysite.com
,而我手动不必编辑DNS条目。
一般情况下,我是否可以自动创建DNS条目或制作某种通配DNS条目,该条目始终指向AWS中当前可用的最高编号版本的网站?对于所有当前可用的DNS条目/堆栈,它应该查看V
之后的数字,并使mysite.com
指向数值最高的数字。
我们正在使用CloudFormation来创建我们的堆栈和DNS(Route 53)条目,因此在这些脚本中放置任何逻辑都可以。
答案 0 :(得分:0)
这不是DNS本身的一部分,所以它不太可能被Route53上的任何东西支持。您最好的选择是在新实例启动或升级为生产实例时运行的脚本。使用boto:
非常简单boto.route53.record.Record
boto.route53.record.ResourceRecordSets
UPSERT
和您的记录ResourceRecordSets
(如果失败则进行简单重试)get_change()
,直到Route53回复INSYNC
dns.resolver.query('your-domain', 'NS')
)了解您的更改。答案 1 :(得分:0)
我们最终必须在部署新堆栈之前将其作为手动步骤。如果需要在mysite.com
恢复新堆栈,则部署者必须手动删除现有映射。然后,云形成脚本将创建新的DNS映射。
我认为不理想但比云形成脚本中的大量杂乱逻辑要好。