LVS,DR模式+Keepalived部署

配置信息

LVS-MASTER 10.0.0.41 centos7
LVS-BACKUP 10.0.0.42 centos7
LVS-DR-VIP 10.0.0.100
WEB1 10.0.0.43 centos7
WEB2 10.0.0.44 centos7

注意:請忽略IP地址,以自己環境中的爲主。
一、配置LVS
1.分別在lvs-master和lvs-backup上安裝lvs和keepalived軟件包

systemctl stop firewalld
setenforce 0
yum -y install keepalived ipvsadm

LVS-MASTER

vi /etc/keepalived/keepalived.conf
! Configuration File for keepalived

global_defs {
   router_id LVS_R1
}

vrrp_instance VI_1 {
    state MASTER
    interface ens33  #對應網卡
    virtual_router_id 51
    priority 100  #權重
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        10.0.0.100
    }
}

virtual_server 10.0.0.100 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
!    persistence_timeout 50
    protocol TCP

    real_server 10.0.0.43 80 {
        weight 1
        TCP_CHECK {
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
            connect_port 80
        }
    }
    real_server 10.0.0.44 80 {
        weight 1
        TCP_CHECK {
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
            connect_port 80
        }
    }
}

LVS-BACKUP

vi /etc/keepalived/keepalived.conf
! Configuration File for keepalived

global_defs {
   router_id LVS_R2
}

vrrp_instance VI_1 {
    state BACKUP   
    interface ens33 
    virtual_router_id 51
    priority 99
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        10.0.0.100
    }
}

virtual_server 10.0.0.100 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
!    persistence_timeout 50
    protocol TCP

    real_server 10.0.0.43 80 {
        weight 1
        TCP_CHECK {
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
            connect_port 80
        }
    }
    real_server 10.0.0.44 80 {
        weight 1
        TCP_CHECK {
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
            connect_port 80
        }
    }
}

2、啓動lvs

systemctl restart keepalived

在這裏插入圖片描述
備keepalived配置文件配置信息:備用服務器可以有多臺,配置時候基本相同只要修改路由器名稱,熱備狀態,優先級就可以了。
二、.節點WEB1,WEB2服務器配置
1、使用DR模式的時候,節點服務器也需要配置vip地址,並且調整內核的ARP響應參數以阻止更新VIP的MAC地址,避免發生衝突。

cd /etc/sysconfig/network-scripts/
cp ifcfg-lo  ifcfg-lo:0
vi ifcfg-lo:0

在這裏插入圖片描述

ifup lo:0
ifconfig lo:0

在這裏插入圖片描述
添加VIP本地訪問路由(將訪問VIP的數據限制正在本地,避免通信紊亂)

 vi /etc/rc.local

在這裏插入圖片描述
執行

route add -host 10.0.0.100 dev lo:0

2、修改內核參數。

/etc/sysctl.conf(最下面添加)

echo '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' >>/etc/sysctl.conf

注意:
arp_announce爲2時:只向該網卡迴應與該網段匹配的ARP報文。
arp_ignore爲1:只響應目的IP地址爲接收網卡上的本地地址的arp請求
其主要是實現禁止響應ARP的請求。
3、啓動內核參數

sysctl  -p

4、2安裝httpd,創建網頁測試lvs集羣
WEB1

yum -y install  httpd
echo "WEB1" >/var/www/html/index.html
systemctl start httpd	

WEB2

yum -y install httpd
echo "WEB2" >/var/www/html/index.html
systemctl start httpd	

測試:

ipvsadm  -lnc

在這裏插入圖片描述
在這裏插入圖片描述
在沒有vip的服務curl一下,瀏覽器有緩存,就算開啓無痕也是一樣,要命令行curl

在這裏插入圖片描述

發佈了161 篇原創文章 · 獲贊 282 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章