ロードバランサ

複数サーバによる信頼性の向上

稼働率の低い複数のサーバを組み合わせる。

負荷分散(DNSラウンドロビン)

nslookup
DNSサーバに問い合わせて、同じサービスを提供する複数のサーバを用意しておき、アクセスを振り分けて分散させる。

nslookup www.google.co.jp
サーバー: UnKnown
Address: 192.168.0.1権限のない回答:
名前: www.google.co.jp
Addresses: 2404:6800:4004:804::101f
74.125.235.151
74.125.235.152
74.125.235.159

1.IPアドレス問い合わせr
2.IPアドレス返す
3.リクエストの分散

アドレス変換(NAT) 型負荷分散

※NATとはプライベートアドレスをグローバルアドレスに変換してインターネットにつなげる技術

1.リクエス
2.IPアドレスを変換して振り分け
3.ロードバランサへレスポンス
4.クライアントへレスポンス

ダイレクトルーティング型負荷分散

※ひとつのネットワークにLBもサーバもいる状態
※レスポンスはLBを通らないのでボトルネックになりにくい

1.リクエス
2.振り分け
3.振り分け先サーバAからクライアントへレスポンス

分散アルゴリズム

1.ラウンドロビン
順番アクセス
2.ランダム型
完全ランダム
3.送信もとIPアドレス
同じクライアントが同じサーバを利用する
4.サーバ負荷連動型
処理能力に余裕のあるサーバに振る
5.重み付け

Pound

※L7ロードバランサとして利用できる

#yum install Pound.x86_64
#/etc/init.d/pound start

/etc
[root@mizunuma etc]# vim ./pound.cfg

Service
URL ".(htm|html)$"
BackEnd
Address 192.168.2.181
Port 8080
Priority 1
End
End

BackEnd
Address 192.168.2.130
Port 80
Priority 1
End

バックエンドを書き足すことで、分散可能。

LVS

L4ロードバランサとして使われる
net.ipv4.ip_forward = 1
ipvsadm -A -t 172.16.0.252:80 -s rr
ipvsadm -a -t 172.16.0.252:80 -r 10.1.0.100 -m