ロードバランサー
L4-NAT
LVS + keepalived
L4-DSR(Direct Server Return)
大量のトラフィックを利用する場合にはこちらが良いかも
L7
リバースプロキシ
振り分け方式
ラウンドロビン
荷重ラウンドロビン
リースとコネクション
荷重リースとコネクション
1 つの IP アドレスに対するリクエストを複数のサーバへ分散する事ができる
サービス用のグローバルアドレスをもった仮想的なサーバとして動作
そしてクライアントから送られてきたリクエストを本物の WEB サーバに中継することで、あたかも自分が WEB サーバであるかのように振舞う
正常に稼動しているサーバがある限り、サービスが停止することはない
IPVS を使う
ipvsadm
Keepalived
パーシステンス(Sticky セッション)
セッションステートフルを実現する機能
種類
ソース IP アドレス
Cookie
URL
振り分けアルゴリズム
ラウンドロビン
リーストコネクション
レスポンスタイム
サーバの CPU 使用率やレスポンスタイム等を考慮し、最も負荷の低いサーバの IP アドレスにリクエストを割り振る
ハッシュ
与えられたテキスト、リクエストの変数、またはランタイム、またはその両方でハッシュを定義したりする
【nginx】ロードバランサー
どのアップストリームサーバーにデータがキャッシュされている可能性が高いかを判断したい場合に非常に便利
DSR