DR的HA实际上是经过VRRP来实现的算法
在Linux上实现VRRP功能的程序叫作keepalived,keepalived可以根据配置文件中的定义自动生成ipvs规则,并可以对各RS的健康状态进行检测。keepalived也支持vrrp_script,keepalived利用vrrp_scripts完成辅助的其余高可用的功能,keepalived利用vrrp_track调用vrrp_script完成vrrp_script对服务的跟踪后端
安装keepalived程序服务器
如今这样规划 10.0.1.11和12 是DR真实IP 10.0.1.13是VRRP虚IP负载均衡
先设置主VRRP的运行参数ide
开启主DR的keepalived的服务oop
systemctl start keepalived.service
测试
notification_email 通告给谁server
notification_email_from 用哪一个邮箱通告图片
smtp_server 指定邮件服务器ip
RID 这个参数两个DR须要一致
vrrp_garp_interval 免费ARP的通告间隔用于IPV4
vrrp_gna_interval 免费NA的通告间隔用于IPV6
再设置备DR的VRRP参数
为了让VRRP状态切换更直观一些,咱们来作个邮件通知脚本
邮件脚本调用位置
测试效果
定义虚拟主机
delay_loop 定义服务轮询时间
lb_kind 定义部署模式
persistence_timeout 会话保持时间
lb_algo 负载均衡算法 调度算法
HTTP_GET是检测后端服务器是否正常
nb_get_retry 尝试次数
connect_timeout 每次尝试的超时时间
delay_before_retry 每次尝试的时间间隔
从新启动keepalived而后查看ipvsadm -Ln
ipvsadm会本身从keepalived的配置文件中读取相关信息并自动添加虚拟服务以及真实服务器信息
客户端测试
如今把DR1失效再测试
仍是能够正常访问
再加个小功能 Sorry_server
当后端服务器都失效了,keepalived能够将用户请求发送到指定服务器,由临时服务器响应客户请求
用户端测试