🎉
【入門#9】TerraformでACM証明書を作ろう
今回の目標
Terraformを使って、ALBに紐づけるACM証明書を作ります。
将来的には下記のシステム構成図になるように進めていきますが、今回はその中のACMに絞って解説します。
◯今回のシステム構成図の全体像

関連記事:https://zenn.dev/alt_tanuki/articles/7c1f97da33496b
ではやっていきましょう!
ACM証明書を書いていきます
network.tfに下記の記述をどんどん書いていきます!
ACM証明書
resource "aws_acm_certificate" "cask_tokyo_cert" {
# 検証するドメイン
domain_name = "ec2.cask.tokyo"
# 検証方法
validation_method = "DNS"
tags = {
Name = "cask-tokyo-acm"
}
}
Route53 CNAMEレコード
resource "aws_route53_record" "cask_tokyo_cert_cname" {
for_each = {
for dvo in aws_acm_certificate.cask_tokyo_cert.domain_validation_options : dvo.domain_name => {
name = dvo.resource_record_name
record = dvo.resource_record_value
type = dvo.resource_record_type
}
}
allow_overwrite = true
name = each.value.name
records = [each.value.record]
type = each.value.type
ttl = "300"
# レコードを追加するドメインのホストゾーンIDを指定(ホストゾーン詳細画面から確認)
zone_id = "XXXXXXX"
}
上記のもとterraform applyを行うと!
ACM証明書が発行されており、DNSのCNAMEレコードも作成されているため
検証済みの状態となります。

以上です!
ACMはなんだかんだ早いですね。
あとCNAMEレコード作成はブラックボックス感がやはりあります。
下記の記事を目次として、続きをどんどん構築を行っていきますので、今回作成したACMをALBに紐づける方法などが気になる方はぜひ見に来てください!
Discussion