0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【AWS】Route53 + CF + S3 でフェイルオーバー設定する手順

Last updated at Posted at 2023-06-22

やりたいこと

APIのヘルスチェックに失敗した場合に、S3に保存した503ページをCDN経由で配信する方法を解説します。

必要な設定は大きく3つ

  • S3に503ページを配置する
  • CloudFrontで新しくディストリビューションを作成する
  • Route53でヘルスチェックの作成と、レコードの設定を行う

実装

S3

まずはバケットを作成します。

p2-2.png

バケット名に任意の名前を設定し、「バケットを作成」を押します。
※その他は特に変更しなくてOKです。バケット名はドメイン名と合わせる必要は無いです。
作成されたバケットを選択し、「アップロード」します。

作成されたバケットを選択し、「アップロード」を押す
p2-6.png

「ファイルを追加」から503ページのファイルを追加し、アップロードを押します。
p2-7.png

p2-8.png

また、静的ウェブサイトホスティングを有効化しておきます。
cf-8.png

CloudFront

「ディストリビューションを作成」します。
cf-1.png

オリジンドメインは、S3のバケットウェブサイトエンドポイントを設定してください。
cf-2.png

ビューワーは「Redirect HTTP tto HTTPS」
cf-3.png

「セキュリティ保護を有効にする」をONにし、作成します。
cf-4.png

作成できたら、「エラーページ」⇒「カスタムエラーレスポンスを作成」します。
cf-6.png

エラーコードを設定し、レスポンスページのパスにはS3に追加したファイルのパスを設定してください。
cf-7.png

Route53

最後です。「ヘルスチェックの作成」を行います。
p2-r53-1.png

「ドメイン名」を設定します。「名前」は何でも良いです。
p2-r53-2.png

通知設定は今回は有効化せず、「ヘルスチェックの作成」
p2-r53-3.png

ヘルスチェックを作成できました。

正常サイトのAレコードを編集します。
p2-r53-5.png

ルーティングポリシー ⇒ フェイルオーバー
レコードタイプ ⇒ プライマリ
ヘルスチェックID ⇒ 先程作成したヘルスチェックを指定

503ページのレコードを新たに作成する。

ルーティングポリシー ⇒ フェイルオーバー
レコードタイプ ⇒ セカンダリ
ヘルスチェックID ⇒ 作成したヘルスチェックを指定p2-r53-7.png

以上で設定できました。ぜひ、参考にしていただけますと幸いです。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?