web負載均衡(ipvsadm)(未成)
ipvsadm用于實作web多台主機負載均衡,當通路者通路時第一次通路的是一個ip,第二次就是另一個,第三次又是第一個ip,這樣循環通路,減輕負擔,起到負載均衡的效果
環境:1台主機有2個ip(内網、外網),另1台主機隻需要内網就行了,網關指向有外網的主機的内網ip
有外網主機(192.168.1.10,202.100.100.100):
<a href="http://down1.chinaunix.net/distfiles/ipvsadm-1.24.tar.gz">http://down1.chinaunix.net/distfiles/ipvsadm-1.24.tar.gz</a>
# tar zxf ipvsadm-1.24.tar.gz
# cd ipvsadm-1.24
# ln -s /usr/src/kernels/2.6.9-22.EL-i686/ /usr/src/linux (32位系統i686)(64位為X86_64)# make && make install
# ipvsadm --version (檢視ipvsadm版本号,顯示版本号就說明安裝成功)
# echo "1" >/proc/sys/net/ipv4/ip_forward (開啟IP轉發功能)
# ipvsadm -C (清除路由表)
# ipvsadm -A -t 202.100.100.100:80 -s rr (定義虛拟伺服器IP即外網ip)
# ipvsadm -a -t 202.100.100.100:80 -r 192.168.1.10:80 -g (定義真實伺服器IP内網ip)
# ipvsadm -a -t 202.100.100.100:80 -r 192.168.1.12:80 -g (定義真實伺服器IP内網ip)
# ipvsadm -l (檢視叢集資訊字母l)
# /etc/rc.d/init.d/ipvsadm save (将IPVS Table儲存到/etc/sysconfig/ipvsadm)
# chkconfig --add ipvsadm
# service ipvsadm start (啟動ipvsadm)
或者
# /etc/rc.d/init.d/ipvsadm start
開機自啟動
# chkconfig --level 35 ipvsadm on
# vi /usr/local/apache/htdocs/1.html
192.168.1.10
:wq
無外網主機(192.168.1.12):
# route add default gw 192.168.1.10
192.168.1.12
驗證:
<a href="http://202.100.100.100/1.html">http://202.100.100.100/1.html</a>
附:
ipvsadm -C
-C 清除表中所有的記錄
ipvsadm -A -t 192.168.3.187:80 -s rr
-A --add-service在伺服器清單中新添加一條新的虛拟伺服器記錄
-t 表示為tcp服務
-u 表示為udp服務
-s --scheduler 使用的排程算法, rr | wrr | lc | wlc | lblb | lblcr | dh | sh | sed | nq 預設排程算法是 wlc
ipvsadm -a -t 192.168.3.187:80 -r 192.168.200.10:80 -m -w 1
-a --add-server 在伺服器表中添加一條新的真實主機記錄
-t --tcp-service 說明虛拟伺服器提供tcp服務
-u --udp-service 說明虛拟伺服器提供udp服務
-r --real-server 真實伺服器位址
-m --masquerading 指定LVS工作模式為NAT模式
-w --weight 真實伺服器的權值
-g --gatewaying 指定LVS工作模式為直接路由器模式(也是LVS預設的模式)
-i --ipip 指定LVS的工作模式為隧道模式
-p 會話保持時間,定義流量呗轉到同一個realserver的會話存留時間
本文轉自linux部落格51CTO部落格,原文連結http://blog.51cto.com/yangzhiming/856136如需轉載請自行聯系原作者
yangzhimingg