如何导入含下划线的Route53记录?Terraform导入报错解决
问题解决方法
你遇到的错误根本原因不是下划线,而是Terraform资源名称不能以数字开头——你定义的资源名称50200_dkey_txt以数字5开头,违反了Terraform的标识符规则,导致解析导入地址时出错。
解决步骤如下:
- 修改Terraform资源定义,把资源名称改成以字母开头的合法格式,比如
dkey_50200_txt:
resource "aws_route53_record" "dkey_50200_txt" { zone_id = aws_route53_zone.mydomain_com.zone_id name = "50200._dkey.mydomain.com" type = "TXT" ttl = "300" records = ["text_record_contents"] }
- 更新导入命令,使用新的资源名称:
terraform import module.route53.aws_route53_record.dkey_50200_txt Z0N3ID0FZ0NE_50200._dkey.mydomain.com_TXT
这样就能正常导入Route53记录了,下划线本身不需要转义,只要保证资源名称符合Terraform的标识符规范(以字母开头,可包含字母、数字、下划线、连字符)即可。
内容的提问来源于stack exchange,提问作者Mike D
相关产品推荐
相关产品推荐

