🗿

キャッシュサーバー(CloudFront)

2021/02/01に公開

今回はCloudFrontを使用していこうと思います。
知識では、なんとなく把握していましたが、手を動かして設定するのはやっていなかったので
やっていこう!!!

そもそも、CloudFrontってなんのためにあるの?

CloudFrontはCDNサービス(Content Delivery Network)
説明に関しては、↓↓こちらのサイトがわかりやすかったので、掲載。
(説明読むのがめんどくさい人は、CDNあり、なしの画像を見るだけでもいいかと)
https://knowledge.sakura.ad.jp/19191/

要点だけ伝えると
オリジンサーバーの負荷を下げてくれたり、エンドユーザーに低レイテンシー(低遅延)を実現するためのサービス。
エンドユーザーもオリジンサーバーもみんなHappyになれます。

前提

現在は、Route53を使用し、プライマリにALB、セカンダリにS3を配置しています。
HTTPS通信のためにACMを使用し、ALBに証明書をアタッチしています。

それでは設定をしていきます。

1)CloudFront用のACMを発行します。

リージョンをバージニア北部に設定 → ACMを選択
ドメイン名の追加を押して、ドメイン名を「*.kuruma-ketuago.ga」にしました。
「*」を使うことによって、ワイルドカード証明書をリクエストします。
例)「www.kuruma-ketuago.ga」「alb.kuruma-ketuago.ga」などのようにいろいろな形で保護をできるようになります。

そのままデフォルトで進めていき、「Route53でのレコードの作成」までいき
発行済になれば設定は成功しています。

2)CloudFrontの設定

2-1)CloudFrontを選択して、「Create Distribution」を押します。

2-2)名前は任意で。私の場合は「alb.kuruma-ketuago.ga」Route53のレコード名と一緒です。

2-3)キャッシュポリシーを設定(今回はテストように短いTTLで作ります)

2-4)すべて60秒で作成

2-5)今回作成したポリシーを使います。

2-6)バージニア北部で作った証明書を選択します

2-7)作成を押して、StateがEnabledになればよし!!!

3)Route53にレコード追加

レコードを作成を押下して、シンプルルーティングで作成します。
ルーティング先 「Cloudfront」
リージョン 「バージニア北部」
ディストリビューション 「今回作ったCloudfrontのドメイン名」

これで、設定の方は完了しました!!

確認方法として、ALBのドメインとCloudfrontのドメインでアクセスして2つ開きます。
表示の方を少しいじって、リロードするとおそらくALBで開いた方はすぐに反映されます。
ですが、Cloudfrontで開いた方は、反映に時間がかかります。

Discussion