Amazon web services 获取cloudfront分发的托管区域

Amazon web services 获取cloudfront分发的托管区域,amazon-web-services,amazon-cloudfront,amazon-route53,Amazon Web Services,Amazon Cloudfront,Amazon Route53,我试图使用ansible来提供Route53故障切换(尽管我使用ansible的事实并不特别相关) 我的任务是: - name: Route 53 Failover | Add ALIAS route53: command: create zone: "{{ top_level_domain }}" record: "{{ cname_record_domain }}" type: A alias: true alias_hosted_zone_id: "Z2FDTN

我试图使用ansible来提供Route53故障切换(尽管我使用ansible的事实并不特别相关)

我的任务是:

- name: Route 53 Failover | Add ALIAS
  route53:
  command: create
  zone: "{{ top_level_domain }}"
  record: "{{ cname_record_domain }}"
  type: A
  alias: true
  alias_hosted_zone_id: "Z2FDTNDATAQYW2"
  value: "{{ cname_target_domain }}"
  wait: yes
  failover: SECONDARY
  identifier: "{{ cname_record_identifier }}"
  overwrite: true
硬编码的
alias_hosted_zone_id
是我的cloudfront发行版的托管区域。找到这个(我知道)的唯一方法是在Route53控制台的“添加记录集”对话框中选择cloudfront发行版作为别名。然后在对话框中声明托管分区


我想做的是将硬编码字符串替换为从
aws cli
命令或ansible任务填充的变量。这可能吗?

对于CloudFront分布,该值始终为
z2fdtndaqyw2


来自Route 53文档本身的实际引用被证明比我预期的更加难以捉摸——在撰写本文时,有一些搜索引擎对该字符串的错误点击(可能是对文档进行了一些重构),但请参见,例如。

holy moly。这确实是非常难以捉摸的信息。谢谢你发现它,省了我几个小时的搜索时间。谢谢向下滚动到页面,或点击此链接,以更接近托管区域id部分耶,不,该信息仍然隐藏得非常好。天啊,我永远也想不到。我正在使用{cname_target_domain}作为CloudFront发行版的值,但是,它抛出了一个错误:
别名目标名称不在目标区域内
我的ansible与上面的别名托管区域id非常相似,有什么建议吗?我以前的任务创建了一个cloudfront_分布,我是否可以使用该任务中的值来输入route53任务?