Centos 6.8 配置Lvs


 

LVS是Linux Virtual Server的簡寫,意即Linux虛擬服務器,是一個虛擬的服務器集群系統。本項目在1998年5月由章文嵩博士成立,是中國國內最早出現的自由軟件項目之一。

宗旨:
  使用集群技術和Linux操作系統實現一個高性能、高可用的服務器.
  很好的可伸縮性(Scalability)
  很好的可靠性(Reliability)
  很好的可管理性(Manageability)。

特點:

  可伸縮網絡服務的幾種結構,它們都需要一個前端的負載調度器(或者多個進行主從備份)。我們先分析實現虛擬網絡服務的主要技術,指出IP負載均衡技術是在負載調度器的實現技術中效率最高的。在已有的IP負載均衡技術中,主要有通過網絡地址轉換(Network Address Translation)將一組服務器構成一個高性能的、高可用的虛擬服務器,我們稱之為VS/NAT技術(Virtual Server via Network Address Translation)。在分析VS/NAT的缺點和網絡服務的非對稱性的基礎上,我們提出了通過IP隧道實現虛擬服務器的方法VS/TUN (Virtual Server via IP Tunneling),和通過直接路由實現虛擬服務器的方法VS/DR(Virtual Server via Direct Routing),它們可以極大地提高系統的伸縮性。VS/NAT、VS/TUN和VS/DR技術是LVS集群中實現的三種IP負載均衡技術。

優點:

  1、開源,免費
  2、在網上能找到一些相關技術資源
  3、具有軟件負載均衡的一些優點
缺點:
  1、最核心的就是沒有可靠的支持服務,沒有人對其結果負責;
  2、功能比較簡單,支持復雜應用的負載均衡能力較差,如算法較少等;
  3、開啟隧道方式需重編譯內核;
  4、配置復雜;
  5、主要應用於LINUX,目前沒有專門用於WINDOWS的版本,不過可以通過配置,使windows成為LVS集群中的real server(win2003、win2008中)。

環境:

 Web-Server:Centos6.8    192.168.126.135

 Web-Server:Centos6.8    192.168.126.134

 

在Web服務器上搭建web:

1、安裝web系統,在centOS上可以使用命令yum install進行安裝,-y 表示安裝過程中全部選擇yes,我這里做測試環境,所以簡單安裝

yum -y install httpd 

2、設置httpd、mysqld為開機啟動服務

chkconfig httpd on

3、啟動服務、關閉防火牆

service httpd start
service iptables stop #為了測試方便,直接關閉防火牆

4、安裝虛擬IP管理工具:ipvsadm

yum -y install ipvsadm

5、新建腳本:

#!/bin/bash

VIP=192.168.126.100  #假設126.100是VIP
RIP1=192.168.126.135  #web-1
RIP2=192.168.126.134  #web-2

case "$1" in
  start)
    echo "開始配置LVS Director Server"
    ifconfig eth0:0 $VIP broadcast $VIP netmask 255.255.255.255 up
    route add -host $VIP dev eth0:0
    echo "1">/proc/sys/net/ipv4/ip_forward
    ipvsadm -C
    ipvsadm -A -t $VIP:80 -s rr
    ipvsadm -a -t $VIP:80 -r $RIP1:80 -g
    ipvsadm -a -t $VIP:80 -r $RIP2:80 -g
    ipvsadm
    echo "配置成功"
    ;;
  stop)
    echo "正在關閉LVS Director Server"
    echo "0">/proc/sys/net/ipv4/ip_forward
    ipvsadm -C
    ifconfig eth0:0 down
    echo "關閉成功!"
    ;;
  *)
    echo "用法:$0 {start|stop}"
    exit 1
esac

 

6、賦予腳本權限並運行腳本

[root@localhost /]# sh lvs.sh start
開始配置LVS Director Server
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.126.100:http rr   #虛擬IP
  -> 192.168.126.134:http         Route   1      0          0        #WEB-1  
  -> 192.168.126.135:http         Route   1      0          0        #WEB-2
配置成功

 

在另一台 Web服務器上搭建web:

1、安裝web系統,在centOS上可以使用命令yum install進行安裝,-y 表示安裝過程中全部選擇yes,我這里做測試環境,所以簡單安裝

yum -y install httpd 

2、設置httpd、mysqld為開機啟動服務

chkconfig httpd on

3、啟動服務、關閉防火牆

service httpd start
service iptables stop #為了測試方便,直接關閉防火牆

4、安裝虛擬IP管理工具:ipvsadm

yum -y install ipvsadm

5、新建腳本:

[root@localhost /]# vim lvs.sh
#!/bin/bash

VIP=192.168.126.100  #VIP

case "$1" in
  start)
   echo "配置lvs Real Server開始..."
   ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
   route add -host $VIP dev lo:0
   echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
   echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
   echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
   echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
   ;;
  stop)
   echo "正在關閉lvs Real server"
   ifconfig lo:0 down
   echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore
   echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
   echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce
   echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
   ;;
  *)
   echo "用法:$0 {start|stop}"
   exit 1
esac
  

[root@localhost /]# sh lvs.sh start
配置lvs Real Server開始...

   配置完成!

  打開瀏覽器訪問VIP地址:http://192.168.126.100  持續刷新網頁看會不會出現訪問到兩個web服務器地址的頁面

 

  如果你需要進一步配置LVS+Keepalived,可以參考:LVS+keepalived配置


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM