如何在Pulumi AWS Route 53中正确创建Hosted Zone避免随机后缀
问题原因
你传入pulumi_aws.route53.Zone构造函数的第一个参数是Pulumi资源的逻辑名称,仅用于Pulumi内部状态文件的资源唯一标识,默认逻辑名会作为云侧物理资源名的前缀,自动追加随机十六进制后缀避免重名冲突,因此会出现example.com-55229cc这类不符合域名规范的托管区名称。
正确实现方式
Route53托管区的实际域名需要通过构造函数的name参数显式指定,只要显式传入该参数,Pulumi不会对其追加随机后缀,完全按照传入值生成托管区域名:
zone = pulumi_aws.route53.Zone( "example-com-hosted-zone", # 逻辑名,仅需保证项目内唯一即可,可自定义 name="example.com" # 实际托管的域名,完全遵循Route53域名规范 )
补充说明
- 如果需要创建子域名托管区,直接修改
name参数值为对应子域名(如app.example.com)即可 - 托管区创建完成后,可通过
zone.name_servers获取分配的域名服务器列表,到域名注册商处配置对应NS记录即可完成域名托管接入 - 若需要对托管区添加额外配置(如关联VPC做私有托管区、添加标签等),可在构造函数中补充对应参数即可
内容的提问来源于stack exchange,提问作者Diogo Melo
相关产品推荐
相关产品推荐

