關鍵:floating VIP 要以組為單位同時切換
-
實驗1: 主備VRRP 切換實驗
預期:
-
設定配置文件:
-
A主機 (172.18.48.61)
vrrp_sync_group VG1 {
group {
outside_network
inside_network
}
}
vrrp_instance outside_network {
state MASTER
interface eth0
virtual_router_id 100
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
172.18.148.148/16 dev eth0 label eth0:1
}
}
vrrp_instance inside_network {
state MASTER
interface eth1
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.10.254/24 dev eth1 label eth1:1
}
}
-
B主機(172.18.48.62)
vrrp_sync_group VG1 {
group {
outside_network
inside_network
}
}
vrrp_instance outside_network {
state BACKUP
interface eth0
virtual_router_id 100
priority 98
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
172.18.148.148/16 dev eth0 label eth0:1
}
}
vrrp_instance inside_network {
state BACKUP
interface eth1
virtual_router_id 51
priority 98
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.10.254/24 dev eth1 label eth1:1
}
}
-
-
測試:
先開啟B主機(BACKUP) 兩塊網卡IP 均已設定
在開啟A主機(MASTER)// VIP 實現切換
如果不設置 vrrp_sync_group VG1 的話:是什么情況?
注釋掉配置文件并重啟:
正常情況下是:A主機兩個預定IP ,B 沒有 (參照上面兩個圖)
手動斷掉一塊網卡:
-
主機A的IP: //eth1 的IP 沒了只有eth0
-
-
主機B的IP://只有eth1 的IP
-
-
結論:
- 如果不設定成組的話,就會出現如此情況造成服務無法正常運行
-
-
-
架構LVS-NAT 實現keepalived+LVS 組合
先設定 RS 網絡結構:
設置RSA 的網絡和開啟httpd服務
- # ifconfig eth0 192.168.10.63/24
- #route add default dev eth0
-
-
-
-
設置RSB 的網絡和開啟httpd 服務 (參照上面的)
分別設置調度器的keepalived.conf 文件
virtual_server 172.18.148.148 80 {
delay_loop 6
lb_algo wrr
lb_kind NAT
protocol TCP
real_server 192.168.10.63 80 {
weight 1
HTTP_GET {
url {
path /
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
real_server 192.168.10.64 80 {
weight 2
HTTP_GET {
url {
path /
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
測試鏈接: //人為制造故障后依然可以訪問。
-
雙主模型 //測驗!!
- 原理:即再增加一組VIP設置,
-
配置A調度器的/etc/keepalived/keepalived.conf //新加一組;注意主備的交互
vrrp_sync_group VG2 { //VRRP段
group {
outside_network2
inside_network2
}
}
vrrp_instance outside_network2 {
state BACKUP
interface eth0
virtual_router_id 101
priority 98
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
172.18.148.149/16 dev eth0 label eth0:2
}
}
vrrp_instance inside_network2 {
state BACKUP
interface eth1
virtual_router_id 52
priority 98
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.10.253/24 dev eth1 label eth1:2
}
}
virtual_server 172.18.148.149 80 { //LVS段
delay_loop 6
lb_algo wrr
lb_kind NAT
protocol TCP
real_server 192.168.10.63 80 {
weight 1
HTTP_GET {
url {
path /
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
real_server 192.168.10.64 80 {
weight 2
HTTP_GET {
url {
path /
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
- B調度器的配置//參照A的 (截圖略)
-
重啟服務并查看IP
A調度器的
B調度器的
測試:// 不成功;
錯誤原因分析:
原創文章,作者:zhoulz,如若轉載,請注明出處:http://www.www58058.com/75614