基於CENTOS7 Linux高可用集羣LVS+Keepalived配置

1、LVS安裝配置
配置LVS負載均衡集羣:
1、填寫下列IP分配表
服務器角色 IP地址
DR 192.168.158.129
RS1 192.168.158.137
RS2 192.168.158.138
VIP 192.168.158.3

2、要配置LVS需要安裝哪個軟件?安裝並截圖。
yum install ipvsadm
在這裏插入圖片描述

3、使用LVS配置單DR集羣,配置並將配置過程截圖。
我在以前已經配置過啦:https://blog.csdn.net/weixin_42859280/article/details/83312326
可以參考鏈接文章!
主要代碼:
ifconfig ens33:0 192.168.158.3 broadcast 192.168.158.3 netmask 255.255.255.255 up
route add 192.168.158.3 dev ens33:0
ipvsadm -A -t 192.168.158.3:80 -s rr
ipvsadm -a -t 192.168.158.3:80 -r 192.168.158.137:80 -g
ipvsadm -a -t 192.168.158.3:80 -r 192.168.158.138:80 -g

ifconfig ens33:0 192.168.158.3 broadcast 192.168.158.3 netmask 255.255.255.255 up
配置環回地址lo:0。就是你的VIP。虛擬IP,也是你訪問另外多臺服務器的跳板!
route add 192.168.158.3 dev ens33:0
添加路由,這樣它們纔可以相互通信!
ipvsadm -A -t 192.168.158.3:80 -s rr
添加一個虛擬服務
-A 添加一條新的虛擬服務
-t | -u TCP/UDP協議的虛擬服務
-s 配置負載均衡算法,如:rr, wrr, lc等
ipvsadm -a -t 192.168.158.3:80 -r 192.168.158.137:80 -g
-R --restore 恢復虛擬服務規則
-g | -m | -i LVS模式爲:DR | NAT | TUN
ipvsadm -a -t 192.168.158.3:80 -r 192.168.158.138:80 -g
更多的內容請參考:https://www.cnblogs.com/lipengxiang2009/p/7353373.html
另外的服務器配置:
服務器1:
ifconfig lo:0 192.168.158.3 netmask 255.255.255.255 broadcast 192.168.158.3 up
route add 192.168.158.3 dev lo:0
echo “1” > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo “2” > /proc/sys/net/ipv4/conf/lo/arp_announce
echo “1” > /proc/sys/net/ipv4/conf/all/arp_ignore
echo “2” > /proc/sys/net/ipv4/conf/all/arp_announce
要英文格式纔可以!
服務器2:
ifconfig lo:0 192.168.158.3 netmask 255.255.255.255 broadcast 192.168.158.3 up
route add 192.168.158.3 dev lo:0
echo “1” > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo “2” > /proc/sys/net/ipv4/conf/lo/arp_announce
echo “1” > /proc/sys/net/ipv4/conf/all/arp_ignore
echo “2” > /proc/sys/net/ipv4/conf/all/arp_announce

關於:arp_ignore:0 1 2 arp_announce:0 1 2 的更多介紹:
https://blog.csdn.net/weixin_42859280/article/details/83312326

4、測試LVS負載均衡截圖。
在這裏插入圖片描述在這裏插入圖片描述
在這裏插入圖片描述OK!
2、Keepalived配置
服務器角色 IP地址
DR1 192.168.158.128
DR2 192.168.158.129
RS1 192.168.158.137
RS2 192.168.158.138
VIP 192.168.158.3

2、安裝Keepalived並截圖
yum install keepalived
在這裏插入圖片描述3、配置Keepalived並截圖
路徑:/etc/keepalived/keepalived.conf
DR1:
! Configuration File for keepalived

global_defs {
notification_email {
#指定keepalived在發生切換時需要發送email到的對象,一行一個
[email protected]
[email protected]
[email protected]
}
notification_email_from [email protected]
#指定發件人
smtp_server 192.168.158.1#指定smtp服務器地址
smtp_connect_timeout 30#指定smtp連接超時時間
router_id LVS_DEVEL#運行keepalived機器的一個標識
}

vrrp_instance VI_1 {#監控多個網段的實例
state MASTER
interface eth0#vip綁定接口
virtual_router_id 51#router_id
priority 100#優先級,高優先級競選爲master
advert_int 1
authentication {#設置認證
auth_type PASS#認證方式
auth_pass 1111#認證密碼
}
virtual_ipaddress {
192.168.158.3#虛擬IP地址!
}
}

virtual_server 192.168.158.3 80{#虛擬服務!
delay_loop 3#循環次數
lb_algo rr#循環方式:輪循!
lb_kind DR#DR模型
persistence_timeout 10
protocol TCP#TCP類型!

real_server 192.168.158.137 80{
    weight 1#權重!
    TCP_CHECK{
        connect_timeout 10
        nb_get_retry 3
        delay_before_retry 3
        connect_port 80#鏈接端口!
    }
}

real_server 192.168.158.138 80{
weight 1#權重!
TCP_CHECK{
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 80#鏈接端口!
}
}

}

在這裏插入圖片描述

DR2:
! Configuration File for keepalived

global_defs {
notification_email {
[email protected]
[email protected]
[email protected]
}
notification_email_from [email protected]
smtp_server 192.168.158.1
smtp_connect_timeout 30
router_id LVS_DEVEL
}

vrrp_instance VI_1 {
state BACKUP
interface eth0
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.158.3
}
}

virtual_server 192.168.158.3 80{
delay_loop 3
lb_algo rr
lb_kind DR
persistence_timeout 10
protocol TCP

real_server 192.168.158.137 80{
    weight 1
    TCP_CHECK{
        connect_timeout 10
        nb_get_retry 3
        delay_before_retry 3
        connect_port 80
    }
}

real_server 192.168.158.138 80{
weight 1
TCP_CHECK{
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}

}
在這裏插入圖片描述
4、測試keepalived並截圖
用一個新的CENTOS進行測試
for i in {1…10};do curl 192.168.158.3;done

另外一次用:for i in {1…3333};do curl 192.168.158.3;done
期間關掉DR1觀察情況。
如果關掉瞬間,立刻暫停獲取網頁內容,大概10秒鐘後。另外一臺DR工作!那麼,恭喜!成功啦!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章