天天看點

基于LVS-DR群集模式+keepalived實作高可用

條件:五台虛拟機:

基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用

(主)負載排程器:

建立映射端口(VIP)

基于LVS-DR群集模式+keepalived實作高可用

優化環境:(/etc/sysctl.conf)

基于LVS-DR群集模式+keepalived實作高可用

net.ipv4.conf.all.send_redirects = 0

net.ipv4.conf.default.send_redirects = 0

net.ipv4.conf.eth0.send_redirects = 0

sysctl -p

加載ip_vs子產品

modprobe ip_vs

檢視ipvs

cat /proc/net/ip_vs

安裝IPVS

yum install -y ipvsadm

檢視版本:

ipvsadm -v

設定負載排程器設定模式

ipvsadm -A -t 192.168.115.100:80 -s rr

ipvsadm -a -t 192.168.115.100:80 -r 192.168.115.173:80 -g(173和176分别指向兩個RS)

ipvsadm -a -t 192.168.115.100:80 -r 192.168.115.176:80 -g

檢視:

ipvsadm -Ln

安裝keepalived

yum install -y gcc*  kernel-devel openssl-devel popt-devel ipvsadm

tar -xvf keepalived-1.2.7.tar.gz

./configure --prefix=/  --with-kernel-dir=/usr/src/kernels/2.6.32-131.0.15.el6.i686

make && make install

chkconfig --add keepalived

chkconfig keepalived on

基于LVS-DR群集模式+keepalived實作高可用

配置keepalived檔案:

基于LVS-DR群集模式+keepalived實作高可用

啟動服務:

service keepalived start

共享資源伺服器:

搭建NFS給RS挂在使用

基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用

RS1:

安裝Apache服務

配置本地回環端口映射:

基于LVS-DR群集模式+keepalived實作高可用

設定一條路由:

route add -host 192.168.115.100 dev lo:0

優化環境:

基于LVS-DR群集模式+keepalived實作高可用

net.ipv4.conf.all.arp_ignore = 1

net.ipv4.conf.all.arp_announce = 2

net.ipv4.conf.default.arp_ignore = 1

net.ipv4.conf.default.arp_announce = 2

net.ipv4.conf.lo.arp_ignore = 1

net.ipv4.conf.lo.arp_announce = 2

RS2:

安裝Apache服務,将内容從NFS伺服器上面挂在過來:

mount -t nfs 192.168.115.177:/share /var/www/html

設定映射網卡:

基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用

設定路由:

測試機通路:

每重新整理一次,内容一次輪詢:

基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用

下面搭建基于keepalived的LVS-DR

增加一個虛拟機作為從負載排程器:

基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用

測試機測試:

基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用
基于LVS-DR群集模式+keepalived實作高可用

從伺服器成功接替工作:實驗成功:

配置檔案模闆:

! Configuration File for keepalived

global_defs {

  router_id LVS_R1

}

vrrp_instance VI_1 {

   state MASTER

   interface eth0

   virtual_router_id 51

   priority 100

   advert_int 1

   authentication {

       auth_type PASS

       auth_pass 1111

   }

   virtual_ipaddress {

       192.168.115.100

virtual_server 192.168.115.100 80 {

   delay_loop 6

   lb_algo rr

   lb_kind DR

   protocol TCP

   real_server 192.168.115.173 80 {

       weight 1

               TCP_CHECK {

                       connect_port 80

                       connect_timeout 3

                       nb_get_retry 3

                       delay_before_retry 3

       }

  real_server 192.168.115.176 80 {

在做從負載排程器的時候,因為有兩個網卡公用一個位址,這樣啟動網卡的時候會報錯

解決辦法:

vim /etc/sysconfig/network-scripts/ifup-eth

基于LVS-DR群集模式+keepalived實作高可用

将圖示内容注釋即可

然後再重新開機網卡

繼續閱讀