一、實驗要求:
1、基于LVS-DR模型上實踐;
2、調度器高可用(雙主模型);
二、實驗拓撲圖:
三、實驗步驟:
1、 設置RS
(a)設置http主頁
Yum install httpd
Vim /var/www/html/index.html
<h1>172.18.24.3 server 1或者172.18.24.5
server 2</h1>
(b)設置RS的VIP
Vim setRS.sh
#!/bin/bash
vip=172.18.24.10
vip2=172.18.24.11
mask=’255.255.255.255′
iface=’lo:0’
iface2=’lo:1’
case $1 in
start)
echo
1 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo
1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo
2 > /proc/sys/net/ipv4/conf/all/arp_announce
echo
2 > /proc/sys/net/ipv4/conf/lo/arp_announce
ifconfig
lo:0 $vip netmask $mask broadcast $vip up
route
add -host $vip dev $iface
ifconfig
lo:0 $vip2 netmask $mask broadcast $vip2 up
route
add -host $vip2 dev $iface2
;;
stop)
ifconfig
$iface down
ifconfig
$iface2 down
echo 0 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo
0 > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo
0 > /proc/sys/net/ipv4/conf/all/arp_announce
echo
0 > /proc/sys/net/ipv4/conf/lo/arp_announce
;;
*)
echo
“Usage $(basename $0) start|stop”
exit
1
;;
esac
在RS上運行腳本 setRS.sh start
重啟httpd服務
2、 配置VS
Yum install httpd Keepalived
Vim /var/www/html/inde.html
Sorry server 1 或者sorry
server2
(a) 設置VS1主從信息
global_defs {
notification_email {
root@localhost
}
notification_email_from keeplived@localhost
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id test1
vrrp_mcast_group4 224.0.100.24
}
vrrp_instance myr1 {
state MASTER
interface eth0
virtual_router_id 67
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass UIpYPPDI
}
vrrp_instance
myr2 {
state BACKUP
interface eth0
virtual_router_id 68
priority 98
advert_int 1
authentication {
auth_type PASS
auth_pass UIpYPPDi
}
virtual_ipaddress {
172.18.24.11/16 dev eth0
}
}
virtual_ipaddress {
172.18.24.10/16 dev eth0
}
notify_master “/etc/keepalived/notify.sh master”
notify_backup “/etc/keepalived/notify.sh backup”
notify_fault “/etc/keepalived/notify.sh fault”
}
virtual_server 172.18.24.10 80 {
delay_loop 6
lb_algo wrr
lb_kind DR
protocol TCP
sorry_server 127.0.0.1 80
real_server 172.18.24.3 80 {
weight 1
HTTP_GET {
url {
path /
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
real_server 172.18.24.5 80 {
weight 1
HTTP_GET {
url {
path /
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
(b)設置VS2主從信息
global_defs {
notification_email {
root@localhost
}
notification_email_from keeplived@localhost
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id test4
vrrp_mcast_group4 224.0.100.24
}
vrrp_instance myr1 {
state BACKUP
interface ens38
virtual_router_id 67
priority 98
advert_int 1
authentication {
auth_type PASS
auth_pass UIpYPPDI
}
vrrp_instance
myr2 {
state MASTER
interface ens38
virtual_router_id 68
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass UIpYPPDi
}
virtual_ipaddress {
172.18.24.11/16 dev ens38
}
}
virtual_ipaddress {
172.18.24.10/16 dev ens38
}
notify_master “/etc/keepalived/notify.sh master”
notify_backup “/etc/keepalived/notify.sh backup”
notify_fault “/etc/keepalived/notify.sh fault”
}
virtual_server 172.18.24.11 80 {
delay_loop 6
lb_algo wrr
lb_kind DR
protocol TCP
sorry_server 127.0.0.1 80
real_server 172.18.24.3 80 {
weight 1
HTTP_GET {
url {
path /
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
real_server 172.18.24.5 80 {
weight 1
HTTP_GET {
url {
path /
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
(c)Systemctl start httpd Systemctl start keepalived
3、測試 curl http://172.18.24.10 curl http://172.18.24.11
檢測結果:不論是訪問172.18.24.10還是172.18.24.11,最終顯示以下的輪詢結果,
<h1>172.18.24.3 server 1</h1>或者<h1>172.18.24.5
server 2</h1>
原創文章,作者:chenxu@magedu.com,如若轉載,請注明出處:http://www.www58058.com/75732