はじめに
このメモは、実際に試したわけではなく、個人的な走り書きのメモとしてまとめたものです。
後で調べたり、実際に設定する際の参考にするための備忘録になります。
書こうと思ったきっかけ
フロントエンドとバックエンドを AWS 上で運用する際に、Route 53 の設定方法について調べたので、その内容を整理しました。
同じような構成を考えている人の参考になればと思い、このメモを残しています。
前提の構成
フロントエンドとバックエンドのインフラ構成は以下のようになっています。
フロントエンド (honda333.blog)
- S3 + CloudFront による静的サイトホスティング
- ACM (バージニア北部 us-east-1) を利用した SSL 証明書
- Route 53 で CloudFront に向ける設定
バックエンド (back.honda333.blog)
- ALB (東京 ap-northeast-1) によるトラフィック管理
- ACM (東京 ap-northeast-1) を利用した SSL 証明書
- Route 53 で ALB に向ける設定
今回作成したAWS構成図について
詳細は省略しますが、今回は受講しているITスクールで、以下のようなAWSインフラ構成をコード化しています。
このTerraform設定では、AWS上にVPC・サブネット・インターネットゲートウェイ・ECS・RDS・S3・CloudFrontを含むインフラ環境を構築しています。
Route 53 の設定
1. フロントエンド (honda333.blog) の設定
CloudFront は固定 IP を持たないため、エイリアスレコード (Alias Record) を使用します。
-
ドメイン名:
honda333.blog
- レコードタイプ: A (エイリアス)
-
エイリアス先: CloudFront のドメイン (
xxxxx.cloudfront.net
) - TTL: 自動
- ルーティングポリシー: シンプル (Simple)
また、www.honda333.blog
を honda333.blog
にリダイレクトする場合、CNAME レコードを設定します。
-
サブドメイン:
www.honda333.blog
- レコードタイプ: CNAME
-
CNAME の値:
honda333.blog
2. バックエンド (back.honda333.blog) の設定
ALB も固定 IP を持たないため、エイリアスレコード (Alias Record) を使用して ALB に向けるのが最適です。
-
ドメイン名:
back.honda333.blog
- レコードタイプ: A (エイリアス)
-
エイリアス先: ALB の DNS (
xxxxx.ap-northeast-1.elb.amazonaws.com
) - TTL: 自動
- ルーティングポリシー: シンプル (Simple)
補足
CloudFront の設定
-
honda333.blog
を CloudFront に登録する際、ACM (バージニア北部 us-east-1) の証明書を適用してください。 - CloudFront のオリジンとして S3 を使用する場合、カスタムドメイン (
honda333.blog
) を設定しておくと、リダイレクトや静的サイトの動作がスムーズになります。
ALB の設定
- ALB の HTTPS リスナー で、東京リージョン (ap-northeast-1) の ACM 証明書 (
back.honda333.blog
) を設定してください。 - ALB でリダイレクトを管理する場合は、ターゲットグループに適切なルールを設定しておくと便利です。
最終的な Route 53 設定 まとめ
ドメイン名 | ACM リージョン | Route 53 設定 |
---|---|---|
honda333.blog (フロント) | バージニア北部 (us-east-1) | CloudFront にエイリアス (Aレコード) |
back.honda333.blog (バックエンド) | 東京 (ap-northeast-1) | ALB にエイリアス (Aレコード) |
この設定により、フロント (honda333.blog
) は CloudFront を通じてアクセスし、バックエンド (back.honda333.blog
) は ALB を経由してアクセスできるようになります。