0
0

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 3 years have passed since last update.

[AWS_29]障害時はSORRYページへ通信を流す

Last updated at Posted at 2022-02-06

環境

Amazon Web Service

  • EC2(Amazon Linux 2 , t2.micro , 汎用SSD 8GB)
  • RDS(MySQL , db.t2.micro)
  • ALB

ローカルPC

  • MacBook Pro(2.9 GHz デュアルコアIntel Core i5 , 8 GB 2133 MHz LPDDR3)
  • macOS 11.3.1(20E241)

概要

EC2等が何らかの障害によりWebページを表示できない時に備えて、sorryページへ通信を流せるようにする。
具体的にはフェイルオーバールーティングにて、プライマリをALBを設定して、セカンダリをS3バケットに設定する。
構成図12.png

S3のバケットを作成

  1. S3 > バケットを作成
  2. 以下の項目を入力していく。
    • バケット名: (独自ドメイン名)
      ドメインとバケット名は揃える必要がある。Route53のレコード作成時に必要な条件となる。
    • AWS リージョン: ap-northeast-1
    • パブリックアクセスのブロックをすべてオフにする。
    • バケットを作成をクリックする。

Sorryページファイルのアップロード

  1. アップロードするためのページを開く。
    Amazon S3 > (独自ドメイン) > オブジェクトタブ > アップロードをクリックする。
  2. sorryページ用のhtmlファイルをアップロードする。

    ファイルを追加 > (任意のhtmlファイルや画像)を選択 > アップロードをクリックする。

静的ウェブサイトホスティングを編集する

  1. 静的ウェブサイトホスティング編集ページを開く。

    Amazon S3 > (独自ドメイン) > プロパティタブ > 静的ウェブサイトホスティング > 編集をクリックする。
  2. 以下の項目を入力してく。
    • 静的ウェブサイトホスティング: 有効にする
    • インデックスドキュメント: index.html
    • エラードキュメント: error.html
  3. 変更の保存をクリックする。

バケットポリシーの設定をする。

  1. バケットポリシーの編集ページを開く。
    Amazon S3 > (独自ドメイン) > アクセス許可タブ > バケットポリシー > 編集をクリックする。
  2. バケットポリシーを編集する。

    以下のAWS公式ページから、バケットポリシーをコピーして、設定するバケットポリシーにペーストする。そしてBucket-Nameの部分を独自ドメインに変更する。

    カスタムドメインを使用した静的ウェブサイトの設定 ステップ 8: バケットポリシーをアタッチする
  3. sorryページにアクセスする。

    Amazon S3 > (独自ドメイン) > プロパティタブ > 静的ウェブサイトホスティング > バケットウェブサイトエンドポイントに記載のURLをクリックする。

Route53でプライマリ/セカンダリの設定をする

  1. 既存のAレコードをプライマリのレコードへ編集する。

    Route 53 > ホストゾーン > yoshiki-mbp.com > (既存のAレコード) > レコードを編集をクリックする。
  2. 以下の項目を入力して、保存をクリックする。
    • ルーティングポリシー: フェイルオーバー
    • フェイルオーバーレコードタイプ: プライマリ
    • レコードID: LB-Primary
  3. セカンダリのレコードを作成する。レコードを作成をクリックして、以下の項目を入力していく。
    • レコード名: blog
    • レコードタイプ: A
    • エイリアス: オンにする
    • トラフィックのルーティング先:
      • エンドポイント: S3ウェブサイトエンドポイントのエイリアス
      • リージョン: ap-northeast-1
      • S3エンドポイント: (先ほど作成したS3バケットが表示されるはず)
    • ルーティングポリシー: フェイルーオーバー
    • フェイルオーバーレコードタイプ: セカンダリ
    • レコード ID: LB-Secondary

障害試験

  1. EC2インスタンスが実行中の状態で正常にWebページが表示されることを確認する。
  2. EC2インスタンスを2台とも停止する
  3. すぐにWebページにアクセスすると、503 Service Temporarily Unavailableが表示されるが、TTLの設定時間待ち、再度Webページにアクセスするとsorryページが表示される。
0
0
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
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?