一、实验准备
在LVS-DR实验的基础上再额外增加一台虚拟机用作调度器的备用,来实现高可用性。
配置和第一台负载调度器一模一样的配置
二、实验步骤
1、添加一台虚拟机,设置IP地址为192.168.11.150,网关:192.168.11.110并进行配置或者克隆一台虚拟机
$cd /etc/sysconfig/network-scripts/ifcfg-ens33
$cp -a ifcfg-ens33 ifcfg-ens33:0
$vim ifcfg-ens33:0
ip为192.168.11.200
网关:192.168.11.110
1.2安装用户管理工具,ipvsadm,进行创建、管理集群
$ yum -y install ipvsadm
1.3 关闭路由重定向
$ vim /etc/sysctl.conf
net.ipv4.conf.all.send_redirects = 0 #关闭所有路由重定向,选择all这一条即可,
$ sysctl –p
2、两台调度器都安装keepalived软件(开启同步)
$yum -y install keepalived
3、修改keepalive的配置文件(两台调度器同时修改)
$vim /etc/keepalived/keepalived.conf
global_defs { #全局配置,只留一行,其余全删
router_id LVS_120
#虚拟路由服务器的名称,两台调度器不能一样,宁外一台为router_id LVS_140
}
vrrp_instance VI_1 { #虚拟路由探测协议
state MASTER #都是主服务器
interface ens33 #网卡名称
virtual_router_id 51
#虚拟服务的服务ID,不能改,保证两个服务器在同个监控队列中
priority 100 #优先级,最高为100
advert_int 1
authentication {
auth_type PASS #加密类型
auth_pass 1111 #密码设置
}
virtual_ipaddress { #VIP (集群ip)
192.168.11.200
}
}
virtual_server 192.168.11.200 80 { #集群
delay_loop 6
lb_algo rr #调度算法
lb_kind DR #工作模式
persistence_timeout 0 #持久化连接
protocol TCP #连接协议
real_server 192.168.11.130 80 { #集群中的服务器1
weight 1 #权重
connect_timeout 3 #超时时间认定标准
nb_get_retry 3
delay_before_retry 3
}
real_server 192.168.11.140 80 { #集群中的服务器2
weight 1 #权重
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
4、启动Keepalive服务(两台调度器同时启动)
$systemctl start keepalived
$ipvsadm -ln
5、登录客户机测试
$curl 192.168.10.110
$curl 192.168.10.110
$while true;do sleep 0.1;curl 192.168.10.110;done
6、查看调度器集群的访问量变化,有变化的证明正在使用该调度器。
$ipvsadm -ln
7、模拟主调度器损坏,关闭keepalive服务
$systemctl stop keepalived
主服务器访问量停止增长,备用服务器访问了增加
8、重新启动主调度器的keepalive服务,主服务器会进行抢占资源。重新变成主调度器
在主调度器上执行:systemctl start keepalived