ELB (ロードバランサー)を使って、負荷分散を行います。
Contents
ELB
ELB とは、Elastic Load Balancing の略です。
Webサーバ追加
ロードバランス先の EC2 インスタンスを追加します。
AMI 作成
まず、AMIを作成しておきます。
元にする EC2 インスタンスから作成します。
インスタンス 作成
追加する EC2 インスタンスを作成します。
下記のような流れとなります。
- AMI の選択
- インスタンスタイプの選択
- インスタンスの設定
- ストレージの追加
- タグの追加
- セキュリティグループの設定
ロードバランシング
ロードバランサーを設定していきます。
- ロードバランサー
- ターゲットグループ
まず、ロードバランサーを選択します。
ロードバランサーの種類
- Application Load Balancer
- Network Load Balancer
- Classic Load Balancer
今回は、Classic Load Balancer を使います。
下記のような流れとなります。
- ロードバランサーの定義
- セキュリティグループの割り当て
- セキュリティ設定の構成
- ヘルスチェックの設定
- EC2 インスタンスの追加
- タグの追加
「ロードバランサー名」と「ロードバランサーを作成する場所」を設定して、
「利用可能なサブネットから」対象にするパブリック用のサブネットを追加します。
次に、ELB 用のセキュリティグループを作成します。
ロードバランサー用にルールにHTTPやHTTPSを追加しておきます。
次に、ヘルスチェックでは下記が設定できます。
- ping プロトコル
- ping ポート
- ping パス
- 応答タイムアウト
- 間隔
- 非正常のしきい値
- 正常のしきい値
「ping パス」を「/」にして TOP のチェックができるようにしておきます。(パスを指定することでチェック場所を任意に指定できます)
次に、ロードバランスでアクセスの振り分け先 EC インスタンスを設定します。
そしたら、作成を行います。
作成されたロードバランサーの「インスタンス」タブから割り当てたインスタンスの状態を確認します。
状態が「InService」であれば正常に稼働している状態となります。
次に、「説明」タブに「DNS 名」がありますので、こちらからアクセスをして表示されるか確認します。
ロードバランシングされているかをアクセスログで確認します。
あとは、Web サーバのセキュリティグループ設定で Web からはロードバランサーからのみ許可するように変更します。
まとめ
ELB には3種類のタイプがありますが、今回は EC2 インスタンス の負荷分散を目的として Classic Load Balancer を選択しました。
ヘルスチェック機能があるので、チェックが正常にできなかったときには失敗したインスタンスへの振り分けを停止し、チェックが再度できた時点で振り分けを再開してくれます。