Open11
ELB
ELB
- 負荷分散のサービス
(負荷分散とはロードバランサーに複数のサーバーを繋げて負荷を分散すること) - 裏側で各AZに冗長化されるため単一障害点にはならない。
- ELB自体に自動でスケールアップ、スケールアウト機能がある。
ELBの種類
Application Load Balancer(ALB) | Network Load Balancer(NLB) | Classic Load Balancer(CLB) | |
---|---|---|---|
プロトコル | HTTP、HTTPS | TCP、UDP、TLS | TCP、SSL/TLS、HTTTP,HTTPS |
プラットフォーム | VPC | VPC | EC2-Classic, VPC |
特徴 | ・レイヤー7で動作 ・リクエストの内容に基づいて対象サーバーに転送 ・主にWebサーバーで使用 |
・レイヤー4で動作 ・低レイテンシーで高スループットの処理可能 ・主にWebサーバー以外で使用 |
・旧世代 ・VPCで使用する場合、レイヤー7にはALBを、レイヤー4にはNLBを使用することを推奨 |
パスベースルーティング
- URLに含まれるパスによって分散先を切り替える。
インターネット向けと内部
- インターネット向け
インターネットから通信可能 - 内部
インターネットから通信不可
リスナー
- どのような通信を受け付け、どこに転送するかの設定
- 例 HTTP:80, HTTPS:443(HTTPSにするにはサーバー証明書が必要)
- デフォルトでは設定されない。ターゲットグループが設定される。
- パスベースルーティングはこの設定でできる。
アベイラビリティゾーンとサブネット
- 配置するAZとサブネットを選択する。
- ALBがスケールアウトできるように最低8つIPアドレスに余裕を持たせておくのがベストプラクティス
なので配置するサブネットのCIDRブロックを検討する必要がある。
セキュリティグループ
- 仮想ファイアウォール ALB宛の通信を制御できる。
ターゲットグループ
- 負荷分散対象サーバー(ターゲット)をまとめたグループ
ヘルスチェック
- ALBが負荷分散のターゲットの正常稼働を定期的に確認
- ヘルスチェックで合格したターゲットに対してのみALBが通信を転送する。
スティッキーセッション
- 同じユーザーのリクエストを同じターゲットに転送する設定のこと。
- Cookieを使用してユーザーの判断を行っている。
料金
- 時間による従量課金と通信処理による従量課金(通信処理による従量課金は結構複雑:条件が色々ある)