FiN*_*NaR 2 amazon-web-services amazon-route53 terraform terraform-provider-aws
我正在尝试生成证书并使其通过 DNS 进行验证...一切似乎都有效,直到我使用资源“aws_acm_certificate_validation”时的最后步骤
\n我的代码如下:
\n# Create Certificate\nresource "aws_acm_certificate" "ic_cert" {\n provider = aws.us-east-1\n domain_name = aws_s3_bucket.ic_bucket_main.bucket\n subject_alternative_names = [aws_s3_bucket.ic_bucket_redirect.bucket]\n validation_method = "DNS"\n\n tags = {\n Billing = "company X"\n }\n\n lifecycle {\n create_before_destroy = true\n }\n}\n\n# Validate Certificate via DNS\n# get zone_id\n\ndata "aws_route53_zone" "selected" {\n provider = aws.us-east-1\n name = aws_s3_bucket.ic_bucket_main.bucket\n}\n\n# Generate DNS Records\nresource "aws_route53_record" "ic_DNS_validation" {\n provider = aws.us-east-1\n for_each = {\n for dvo in aws_acm_certificate.ic_cert.domain_validation_options : dvo.domain_name => {\n name = dvo.resource_record_name\n record = dvo.resource_record_value\n type = dvo.resource_record_type\n zone_id = data.aws_route53_zone.selected.zone_id\n }\n }\n allow_overwrite = true\n name = each.value.name\n records = [each.value.record]\n ttl = 60\n type = each.value.type\n zone_id = each.value.zone_id\n}\n\n# Confirm certificate creation \nresource "aws_acm_certificate_validation" "ic_cert_validation" {\n certificate_arn = aws_acm_certificate.ic_cert.arn\n #validation_record_fqdns = [for record in aws_route53_record.ic_DNS_validation : record.fqdn]\n #validation_record_fqdns = [aws_route53_record.ic_DNS_validation.fqdn]\n validation_record_fqdns = [for record in aws_route53_record.ic_DNS_validation : record.fqdn]\n}\nRun Code Online (Sandbox Code Playgroud)\n我收到以下错误:
\nError: reading ACM Certificate (arn:aws:acm:us-east-1:xxxxxxxxxxxxxxxxxxxxx8:certificate/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx): couldn't find resource\n \n\xe2\x94\x82 with aws_acm_certificate_validation.ic_cert_validation,\n\xe2\x94\x82 on certificates.tf line 45, in resource "aws_acm_certificate_validation" "ic_cert_validation":\n\xe2\x94\x82 45: resource "aws_acm_certificate_validation" "ic_cert_validation" {\nRun Code Online (Sandbox Code Playgroud)\n有人会发现问题是什么吗?
\n由于 ACM 是区域服务,并且证书是使用provider = aws.us-east-1用于证书验证的资源创建的,因此也应使用相同的配置(因为证书已在该区域中创建):
resource "aws_acm_certificate_validation" "ic_cert_validation" {
provider = aws.us-east-1
certificate_arn = aws_acm_certificate.ic_cert.arn
validation_record_fqdns = [for record in aws_route53_record.ic_DNS_validation : record.fqdn]
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
831 次 |
| 最近记录: |