Amazon EC2にてロードバランサーを構築する方法を勉強したのでメモしておく。
ロードバランサーを作成する
AWS Management ConsoleにログインしたらEC2を選択する。
画面右上のメニューから使用するリージョンを選択する。今回はAsia Pacific (Tokyo)を選択する。
画面左側のNETWORK & SECURITYメニューから,Load Balancersを選択する。
Create Load Balancerを選択する。
DEFINE LOAD BALANCER
ロードバランサーの名前とリスニングするポートを設定する。
Load Balancer Nameにはロードバランサーの名前を入力する。
Listener Configurationには,プロトコルとリスニングするポート番号を入力する。デフォルトでは,HTTPプロトコルの80番ポートがリスニングされている。
CONFIGURE HEALTH CHECK
サーバー(EC2のインスタンス)の状態(応答可能か否か)を確認するために,ロードバランサーは定期的にヘルスチェックを行う。このフェイズではヘルスチェックに使用するファイルやヘルスチェックの頻度などを設定する。
Configuration Optionsではヘルスチェックに使用するプロトコル(Ping Protocol),ポート(Ping Port),ヘルスチェック用のファイルのパス(Ping Path)を設定する。デフォルトではHTTPプロトコルの80番ポートが設定され,ドキュメントルートのindex.htmlを見るように設定されている。
Advanced Optionsではヘルスチェックのタイムアウト(Response Timeout),ヘルスチェックを行う時間的な頻度(Health Check Interval),健全であることが許容される連続したヘルスチェックの失敗回数(Unhealthy Threshold),健全であることが認められる連続したヘルスチェックの成功回数(Healthy Threshold)を設定する。デフォルトではヘルスチェックにおいて5秒間以内に応答が無ければタイムアウト,定期的に30秒間隔でヘルスチェック,2回連続でのヘルスチェック失敗でサーバを不健全と判定,10回連続でのヘルスチェック成功でサーバを健全と判定と設定されている。
Continueを選択する。
ADD EC2 INSTANCES
現在稼働しているインスタンスからロードバランシングしたいインスタンスを選択する。
Continueを選択する。
REVIEWフェイズ
設定の内容に問題が無ければCreateを選択してロードバランサーの作成を開始する。
以上でロードバランサーの構築が完了した。あとは,EC2のインスタンス側でApacheをセットアップし,ヘルスチェック用のファイル(デフォルトではindex.html)を設置し,サーバのステータスがIn Serviceになっていることが確認出来れば,設定完了である。