完成図
下準備
①VPC・サブネット・igw・ルートテーブル・EC2を作成して
EC2内のapacheとかnginxを起動してブラウザでページが見えるようにしておく
②マネコンでRoute53・ACM(東京)・ACL(バージニア)・ALB・CloudFrontを
別タブで開いておく
③ドメインを設定するサイトを開いておく
ムームードメインとか。freenomとか。
ALB作成
ACM証明書を作成します。(東京・バージニア両方で)
作成したら③ドメインを設定するサイトに証明書のCNAMEを登録します。
少し待つと、証明書のステータスが発行済みになります。
ALBを作成します。
リスナー80番は443番にリダイレクトさせて、
リスナー443番はさきほど作成したACM証明書(東京)を指定します。
ALBのセキュリティグループを作成して80と443を全許可します。
ターゲットグループを作成します。用意しておいたEC2を参加させます。
ALBを作成し終えたら、さきほど作成したALBのセキュリティグループを
EC2にアタッチします。
ALBのDNS名でブラウザ表示できること
ヘルスチェックが正常なことを確認します
ALBにサブドメインをつける
Route53にて、表示したいドメインのホストゾーンを作成します。
レコードの追加で、Aレコードをさきほど作成したALBを指定し、作成します。
aaa.domain.com
Route53の「値/トラフィックのルーティング先」をコピっておきます。
③ドメインを設定するサイトにサブドメインを
CNAMEとして、コピっておいたALBのルーティング先の値を登録します。
aaa.domain.com でブラウザ表示できること確認します。
CloudFront にもサブドメインをつける
CloudFrontを作成します。
オリジンはALBを指定します。aaa.domain.com を指定
代替CNAMEはbbb.domain.comを指定します。
ACM証明書は、バージニアで作成しておいた証明書をあてることになります。
オリジンを追加します
プロトコルはマッチビューアにします。
ビヘイビアを追加します
ビューワはHTTPSにします。
Legacy cache settingsは
ヘッダー→すべてにしておきます。※開発中のみ
Route53にて、表示したいドメインのホストゾーンを作成します。
レコードの追加で、Aレコードをさきほど作成したCloudFrontを指定し、作成します。
候補に出てこなければ、dから始まるCloudFrontのディストリビューションドメイン名を貼り付けます。
bbb.domain.com
ドメインを設定するサイトにサブドメインを
CNAMEとして、コピっておいたCloudFrontのディストリビューションドメイン名の値を登録します。
bbb.domain.com でブラウザ表示できること確認します。
キャッシュ動作を確認したいときは、cache settingsを調整します。
所感
自動化したい。