Dev Classmethod Jp Cloudfront Multidistribution Terraform
CloudFront マルチテナントディストリビューションを Terraform で構築してみた
URL: https://dev.classmethod.jp/articles/cloudfront-multidistribution-terraform/
日付: 2026-06-14
Tier: Tier 2
要旨: AWS Provider v6.28.0 から CloudFront のマルチテナントディストリビューション(テンプレート1つ+ドメインごとのテナント構成)が Terraform でサポートされた。共有 S3 バケット+prefix 分割+OAC で複数ドメインを1テンプレートで配信できることを確認。
詳細
- 構成要素:
aws_cloudfront_multitenant_distribution(テンプレート)+aws_cloudfront_connection_group(ルーティングエンドポイント)+aws_cloudfront_distribution_tenant(ドメインごとのフロントドア)の3リソース。 - マルチテナントディストリビューション自体は
connection_mode: tenant-onlyで単体配信不可。テナントの CNAME 先は connection group の routing endpoint へ向ける。 - origin の引数は
origin_idではなくid(ハマりポイント)。TTL 直指定不可でキャッシュポリシー必須。 - ACM 証明書は apex +
*.apexの SAN 付きで共有。検証レコードが同名になるためallow_overwrite = true+distinct()が必要。 - DNS は alias 不可で CNAME のみ。PriceClass・WAF Classic・OAI など設定できない項目あり。