LVS (Linux Virtual Server) 設定2013/08/20 |
LVS (Linux Virtual Server) によるロードバランサの構築です。
ここでは以下のような環境を例に設定してみます。 | | eth0|192.168.0.100 +----------+ --------------------| LVS |---------------------- +----------+ eth1|10.0.0.100 | +----------+ | +----------+ | |10.0.0.30 | 10.0.0.31| | | Backend1 |------------------------------| Backend2 | | Web | eth0 eth0| Web | +----------+ +----------+ |
LVSサーバーの eth0 へ来た HTTP パケットを Backend1, Backend2 の WebサーバーへNAT転送してみます。
なお、バックエンドWebサーバーの両方で、デフォルトゲートウェイを LVS の内側アドレスに設定しておく必要があります。
(例では「10.0.0.100」)
|
|
[1] | ipvsadm インストール |
[root@gw ~]#
yum -y install ipvsadm
[root@gw ~]#
vi /etc/sysctl.conf # 7行目:変更 net.ipv4.ip_forward = 1
sysctl -p # 再読み込み [root@gw ~]# /etc/rc.d/init.d/ipvsadm start ipvsadm: Clearing the current IPVS table: IPVS: Registered protocols (TCP, UDP, SCTP, AH, ESP) IPVS: Connection hash table configured (size=4096, memory=64Kbytes) IPVS: ipvs loaded. [ OK ] ipvsadm: Applying IPVS configuration: IPVS: [wlc] scheduler registered. [ OK ] [root@gw ~]# chkconfig ipvsadm on |
[2] | ipvsadm 設定 |
# テーブルをクリア [root@gw ~]# ipvsadm -C
# 仮想サービスを登録する # [ipvsadm -A -t (サービス用IP:ポート) -s (分散方式)] [root@gw ~]# ipvsadm -A -t 192.168.0.100:80 -s wlc # 実サーバーを登録する # [ipvsadm -a -t (サービス用IP:ポート) -r (実サーバのIP:ポート) -m] (m で masquerading (NAT)) [root@gw ~]# ipvsadm -a -t 192.168.0.100:80 -r 10.0.0.30:80 -m [root@gw ~]# ipvsadm -a -t 192.168.0.100:80 -r 10.0.0.31:80 -m # テーブル確認 [root@gw ~]# ipvsadm -l IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 192.168.0.100:http wlc -> 10.0.0.30:http Masq 1 0 0 -> 10.0.0.31:http Masq 1 0 0 # 設定保存 [root@gw ~]# /etc/rc.d/init.d/ipvsadm save ipvsadm: Saving IPVS table to /etc/sysconfig/ipvsadm: [ OK ] |
[3] |
以上で設定完了です。クライアントからWebブラウザで設定したサービス用IPにアクセスして動作確認してください。
ちなみに、分散方式の種類には以下のようなものがあります。
|
Sponsored Link |