エセプログラマーの戯言

プログラムやリナックスなどについてのメモです

全体表示

[ リスト ]

LVS

LVSについて、前回、「ipvsadmをソースからコンパイルしてインストールしなければならない」と書きましたが、yum でインストールしたやつで出来ました。


使用したPC
Lvs : 192.168.0.191
Web1 : 192.168.0.156
Web2 : 192.168.0.157
仮想IP
192.168.0.152

Lvsの設定

まず、ipvsadmのインストール
#yum install ipvsadm
Lvsに、仮想IP192.168.0.152のエイリアスを作成
#/sbin/ifconfig eth0:0 192.168.0.152 netmask 255.255.255.0

Lvsでパケット転送を有効にする
#echo "1" >/proc/sys/net/ipv4/ip_forward

再起動時に有効になるように、/etc/sysctl.confの以下の行を設定
net.ipv4.ip_forward = 1
HTTPを、最小コネクション (lc) でWeb1、Web2にバランスするように設定する。
#/sbin/ipvsadm -A -t 192.168.0.152:80 -s rr(とりあえずラウンドロビン)

転送先の設定
#/sbin/ipvsadm -a -t 192.168.0.152:80 -r 192.168.0.156 -g
#/sbin/ipvsadm -a -t 192.168.0.152:80 -r 192.168.0.157 -g

設定を保存
#/etc/init.d/ipvsadm save

/etc/init.d/ipvsadmの起動順序を変更
#chkconfig - 08 92
↓
#chkconfig - 11 89

再起動時に自動で起動するように設定。
#/sbin/chkconfig --add ipsvadm
#/sbin/chkconfig ipvsadm on

Web1とWeb2

アドレス解決プロトコル(ARP:Address Resolution Protocol)を制御する「arptables_jf」をインストール
#yum install arptables_jf

仮想IPで受信できるように設定(xxxは、Web1は156、Web2は157)
#/sbin/arptables -A IN -j DROP -d 192.168.0.152
#/sbin/arptables -A OUT -j mangle -o eth0 -s 192.168.0.152 --mangle-ip-s 192.168.0.xxx
設定を保存
#/etc/init.d/arptables_jf save
再起動時にも自動で起動するように
#/sbin/chkconfig --add arptables_jf
#/sbin/chkconfig arptables_jf on

仮想IPのエイリアスを作成
#/sbin/ifconfig lo:0 192.168.0.41 netmask 255.255.255.255

「example.jp」でアクセスできるように、VirtualHostを設定
/etc/httpd/conf.d/virtualhost.confに、以下を追加
NameVirtualHost *:80

<VirtualHost *:80>
ServerName example.jp
DocumentRoot /var/www/html
ErrorLog logs/example_error_log
CustomLog logs/example_access_log common
</VirtualHost>

apacheを再起動
#/etc/rc.d/init.d/httpd restart

あとは、DNSサーバなどで、「example.jp」のHTTPを仮想IP「192.168.0.152」に設定し、ブラウザで「example.jp」にアクセスすると、負荷分散されていることを確認。

自分は、Web1のindex.htmlに「WebServer 1」、Web2のindex.htmlに「WebServer 2」を書いて、再度読み込みするたび、Web1になったりWeb2になったりするのを確認しました。

この記事に

閉じる コメント(0)

コメント投稿

顔アイコン

顔アイコン・表示画像の選択

名前パスワードブログ
絵文字
×
  • オリジナル
  • SoftBank1
  • SoftBank2
  • SoftBank3
  • SoftBank4
  • docomo1
  • docomo2
  • au1
  • au2
  • au3
  • au4
投稿

開く トラックバック(1)


.


みんなの更新記事