CloudFormation で Route53 に CloudFront のエイリアスレコードを作成しようとした時にエラーが出てしまい、 エラーメッセージでググったら1 CloudFront では作成できないから管理コンソールから作成したという古い記事 が最上位に出てきて諦めかけましたが、実際にはできたので記事に残しておきます。
エラーメッセージ
Invalid Resource Record: FATAL problem: ARRDATAIllegalIPv4Address (Value is not a valid IPv4 address) encountered with 'abcdefghijkmn.cloudfront.net'
誤ったテンプレート
Route53RecordSet:
Type: AWS::Route53::RecordSet
Properties:
Name: '*.example.com'
Type: A
ResourceRecords:
- abcdefghijkmn.cloudfront.net
TTL: 300
HostedZoneId: ABCDEFGHIJKLMN
正しいテンプレート
Route53RecordSet:
Type: AWS::Route53::RecordSet
Properties:
Name: '*.example.com'
Type: A
AliasTarget:
DNSName: abcdefghijkmn.cloudfront.net
HostedZoneId: Z2FDTNDATAQYW2 # 固定値
HostedZoneId: ABCDEFGHIJKLMN
ResourceRecords で指定するのではなくて、 AliasTarget で指定する必要があります。
また、 HostedZoneId は CloudFront を指定する場合には Z2FDTNDATAQYW2
固定2になります。
-
2021 年 5 月時点 ↩