LoginSignup
0

More than 1 year has passed since last update.

【AWS環境構築メモ⑦】ELBを作成する

Last updated at Posted at 2022-03-27

0.はじめに

ELBでロードバランサーを設置して、作成したEC2を配下に登録します。

今回はEC2は1つしか作成していないですが、複数サーバーが設置されていることを想定して、ロードバランサーを作成します。

  • ELB(ロードバランサー)
    Elastic Load Balancingの略。
    サービスにアクセスが集中すると、サーバーの処理能力が低下して、最悪ダウンしてしまいます。
    その時に、サーバーへの負荷を分散させる役割を果たすのがロードバランサーの目的です。

スクリーンショット 2022-03-27 19.49.25.png

1.前回の記事

【AWS環境構築メモ⑥】ACMでSSL証明書を発行する

2.前提条件

  • AWSアカウント作成済み
  • リージョンはアジアパシフィック(東京) ap-northeast-1
  • VPC作成済み
  • セキュリティーグループ作成済み
  • EC2インスタンス作成済み
  • SSL証明書発行済み

3.作成手順(サマリー)

順番 手順
1 ターゲットグループの作成
2 ELB(ロードバランサー)の作成
3 リスナーの追加と編集

4.作成手順

1.ターゲットグループの作成

画面は英語表記です(なぜか)。
わからない場合は日本語に翻訳して操作してください

スクリーンショット 2022-03-27 20.28.12.png

  • サービスよりEC2を選択 → ターゲットグループ → [ターゲットグループを作成する]をクリックする

スクリーンショット 2022-03-27 20.28.39.png

グループの詳細の指定

  • ターゲットタイプの選択
    • インスタンスを指定
  • ターゲットグループ名
    • 任意のターゲットグループ名を入力(分かりやすいものがおすすめ)
  • プロトコル・ポートはHTTP : 80

スクリーンショット 2022-03-27 20.33.25.png

  • VPC
    • 対象のVPCを指定(作成したVPC)
  • プロトコルバージョン
    • HTTP1
  • ヘルスチェック
    • HTTP
  • ヘルスチェックパス
    • / を指定
  • [次へ]をクリックする

スクリーンショット 2022-03-27 20.33.40.png

  • 対象のインスタンスを指定
  • [保留中として以下を含める]をクリックする
  • 表示されたターゲットを確認して[ターゲットグループの作成]をクリック

ターゲットグループが作成されました

2.ELB(ロードバランサー)の作成

スクリーンショット 2022-03-27 23.40.36.png

  • EC2 → ロードバランサー → [ロードバランサーの作成]をクリックする

スクリーンショット 2022-03-27 23.40.53.png

  • Application Load Balancer の[作成]を選択

スクリーンショット 2022-03-27 23.43.02.png

  • ロードバランサー名
    • 分かりやすい名前がおすすめ

スクリーンショット 2022-03-27 23.43.27.png

  • VPC
    • 対象のVPCを選択(作成したVPC)
  • マッピング
    • パブリックサブネット 1a, 1cを選択

スクリーンショット 2022-03-27 23.56.33.png

  • セキュリティーグループ
    • ELB用に作成したセキュリティーグループを指定
    • デフォルトのセキュリティーグループが指定されている場合は、[×]で削除しておく

スクリーンショット 2022-03-27 23.56.58.png

  • リスナーとルーティングの設定
    • プロトコル : HTTP
    • ポート : 80
    • デフォルトアクション : 先程作成したターゲットグループを指定

スクリーンショット 2022-03-27 23.58.20.png

  • 設定した内容を確認して[ロードバランサーの作成]をクリックする

ELBが作成が完了しました

3.リスナーの追加と編集

HTTPS化とHTTPでアクセスした際もHTTPSにリダイレクトするように設定します

スクリーンショット 2022-03-28 1.04.55.png

リスナーの追加(HTTPS)

  • EC2 → ロードバランサー → 作成したロードバランサーを選択
  • [リスナー]を選択し、[リスナーの追加]をクリックする

スクリーンショット 2022-03-28 1.16.02.png

リスナーの追加

  • プロトコル
    • HTTPS : 443
  • [Add action] を選択
    • Forward
  • ターゲットグループ
    • 先程作成したターゲットグループを指定
  • セキュリティーポリシー
    • ELBSecurityPolicy-2016-08
  • デフォルトのSSL証明書
    • ACMから
    • ACMで発行したSSL証明書を指定
  • [追加]をクリックする

スクリーンショット 2022-03-28 1.06.06.png

HTTPSリスナーを追加できました

スクリーンショット 2022-03-28 1.06.28.png

HTTP → HTTPSにリダイレクトするようにリスナールールを追加する

  • HTTP : 80リスナーを選択
  • [修正]をクリックする

スクリーンショット 2022-03-28 1.06.56.png

  • [Add action]を選択
    • Redirect
  • [Itemize URL]を選択
  • プロトコル : ポート
    • HTTPS : 443
  • [変更内容の保存]をクリックする

リスナールールの追加完了しました

スクリーンショット 2022-03-28 1.07.18.png

一応ヘルスチェックの結果も見ておきます

  • ターゲットグループを選択
  • [Details]を選択
  • 画像ではHealthyになっていますが、EC2とELB作成直後はUnhealthyだと思います。(インスタンスの/配下に何も無い状態なので)
    • この後、EC2にnginxなどを導入していく過程でHealthyに変化します。

5.最後に

以上でELBの作成が完了しました。

私はこのタスク、ギブアップ寸前まで悩みまくっていました。
様々な記事や公式ドキュメントを見回したり、メンターの方にひたすら相談したり、
とにかく長い時間かけて作成しました。

まだまだ理解が浅いので、これからも学習を重ねていきたいです。

次回はRoute53でAレコードのエイリアスを作成します

次回 : 【AWS環境構築メモ⑧】Route53でAレコードのエイリアスを作成する

6.参考

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