搭建keepalive+http双机热备
1、搭建keepalive+http双机热备
本文介绍利用CentOS 7.X搭建keepalive+http双机热备
CentOS 7.X为最小化安装,实验环境如下:
Keepalive Server:
192.168.128.11/24
192.168.128.12/24
192.168.128.20/24(虚IP)
HTPP Server:
192.168.128.13/24
192.168.128.14/24

1.1 安装基本软件
Keepalive Server:
yum -y install keepalived ipvsadm
搭建keepalive+http双机热备

HTTP Server:
yum -y install httpd
搭建keepalive+http双机热备

1.2 修改keepalive配置文件
修改主Keepalived Server配置文件/etc/keepalived/keepalived.conf,如下
! Configuration File for keepalived

global_defs {
notification_email {
}
}

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 {
192.168.128.20
}
}
virtual_server 192.168.128.20 80 {
delay_loop 2
lb_algo rr
lb_kind DR
nat_mask 255.255.255.0
persistence_timeout 50
protocol TCP

real_server 192.168.128.13 80 {
    weight 100
    TCP_CHECK {
        connect_timeout 3
        nb_get_retry 3
        delay_before_retry 3
        connect_port 80
    }
}

real_server 192.168.128.14 80 {
    weight 100
    TCP_CHECK {
        connect_timeout 3
        nb_get_retry 3
        delay_before_retry 3
        connect_port 80
    }
}

}
搭建keepalive+http双机热备
将keepalived.conf配置文件复制至另一keepalive服务器上
scp /etc/keepalived/keepalived.conf [email protected]:/etc/keepalived/keepalived.conf

修改复制后的keepalive.conf配置文件,修改state和priority
state BACKUP
priority 90
搭建keepalive+http双机热备

启动keepalived服务
systemctl start keepalived
systemctl enable keepalived
搭建keepalive+http双机热备

此时,可在MASTER节点上显示虚IP,BACKUP节点上没有
搭建keepalive+http双机热备
搭建keepalive+http双机热备
1.3 修改Http Server网页文件
分别修改两台WEB服务器index内容
echo “This is 192.168.128.13 Server” > /var/www/html/index.html
搭建keepalive+http双机热备
echo “This is 192.168.128.14 Server” > /var/www/html/index.html
搭建keepalive+http双机热备

启动httpd服务
systemctl start httpd
systemctl enable httpd
搭建keepalive+http双机热备

验证HTTP Server
搭建keepalive+http双机热备

1.4 配置实服务器虚IP
在实服务器上创建虚IP
创建realsvr.sh脚本,内容如下
#!/bin/bash
#description: config realserver lo and apply noarp

WEB_VIP=192.168.128.20
. /etc/rc.d/init.d/functions

case “$1” in

start)
ifconfig lo:0 $WEB_VIP netmask 255.255.255.255 broadcast $WEB_VIP
/sbin/route add -host $WEB_VIP 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
echo “1” > /proc/sys/net/ipv4/conf/eth0/arp_ignore
echo “2” > /proc/sys/net/ipv4/conf/eth0/arp_announce
echo “1” > /proc/sys/net/ipv4/conf/default/arp_ignore
echo “2” > /proc/sys/net/ipv4/conf/default/arp_announce
sysctl -p >/dev/null 2>&1
echo “RealServer Start OK”
;;
stop)
ifconfig lo:0 down
route del $WEB_VIP >/dev/null 2>&1
echo “0” >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo “0” >/proc/sys/net/ipv4/conf/lo/arp_announce
echo “0” >/proc/sys/net/ipv4/conf/all/arp_ignore
echo “0” >/proc/sys/net/ipv4/conf/all/arp_announce
echo “0” > /proc/sys/net/ipv4/conf/eth0/arp_ignore
echo “0” > /proc/sys/net/ipv4/conf/eth0/arp_announce
echo “0” > /proc/sys/net/ipv4/conf/default/arp_ignore
echo “0” > /proc/sys/net/ipv4/conf/default/arp_announce
echo “RealServer Stoped”
;;
status)
# Status of LVS-DR real server.
islothere=/sbin/ifconfig lo:0 | grep $WEB_VIP
isrothere=netstat -rn | grep "lo:0" | grep $WEB_VIP
if [ ! “$islothere” -o ! “isrothere” ];then
# Either the route or the lo:0 device
# not found.
echo “LVS-DR real server Stopped.”
else
echo “LVS-DR Running.”
fi
;;
*)
# Invalid entry.
echo “$0: Usage: $0 {start|status|stop}”
exit 1
;;
esac
exit 0

执行脚本:
搭建keepalive+http双机热备
此时,可在实服务上显示虚IP
搭建keepalive+http双机热备

1.5 验证keepalive双机热备
在keepalive服务器上可以看到实服务状态等信息
ipvsadm -L -n
搭建keepalive+http双机热备

访问虚IP,可负载到一台实服务器,且任意一台keepalive和http服务器故障,网页均可正常访问
搭建keepalive+http双机热备

相关文章:

  • 2021-08-08
  • 2022-12-23
  • 2021-10-23
  • 2021-06-18
  • 2022-12-23
  • 2022-03-01
猜你喜欢
  • 2021-11-09
  • 2022-12-23
  • 2021-05-31
  • 2022-12-23
  • 2021-06-28
  • 2022-12-23
相关资源
相似解决方案