修改 LoadBalancer1 中的 Keepalived 配置文件:
vim /etc/keepalived/keepalived.conf
LoadBalancer1 作为我们的主路由器,所以其配置文件为:
#全局配置,在发现某个节点出故障的时候以邮件的形式通知管理员
global_defs {
notification_email { #设置报警邮件地址,可以设置多个
shiyanlouAdmin@localhost #每行一个,如果开启邮件报警,需要开启本机的 Sendmail 服务
[email protected]
}
notification_email_from root #设置邮件的发送地址
smtp_server 127.0.0.1 #设置 STMP 服务器地址
smtp_connect_timeout 30 #设置连接 SMTP 服务器的超时时间
router_id LVS_DEVEL #标识,发邮件时显示在邮件主题中的信息
}
#配置 vrrp 实例
vrrp_instance VI_1 {
state MASTER #指定 Keepalived 角色, MASTER 表示此主机是主服务器,BACKUP 表示此主机是备用服务器
interface eth0 #指定 HA 检测网络的接口
virtual_router_id 51 #虚拟路由标识,这个标识是一个数字,同一个 vrrp_instance 下,MASTER 和BACKUP 必须是一致的
priority 101 #定义优先级,数字越大,优先级越高。在同一个 vrrp_instance 下,MASTER 的优先级必须大于 BACKUP 的优先级
advert_int 1 #设定 MASTER 与 BACKUP 负载均衡器之间同步检查的时间间隔,单位是秒
authentication { #配置 vrrp 直接的认证
auth_type PASS #设定验证类型和密码,验证类型分为 PASS 和 AH 两种
auth_pass 1111 #设置验证密码,在一个 vrrp_instance 下,MASTER 与 BACKUP 必须使用相同的密码才能通信
}
virtual_ipaddress { #配置虚拟 IP,可以设置多个,每行一个
192.168.0.10
}
}
#配置虚拟服务器
virtual_server 192.168.0.10 80 { #配置虚拟服务器,需要指定虚拟 IP 地址和端口,IP 与端口用空格隔开
delay_loop 6 #设置运行情况检查时间,单位是秒
lb_algo rr #设置负载调度算法,这里设置为 rr,即论叫算法
lb_kind DR #设置 LVS 实现负载均衡的机制,有 NAT,TUN,DR 三个模式可选,这里选择 DR
#persistence_timeout 50 会话保持时间,单位是秒,一般针对动态网页很有用,这里需要这个配置
protocol TCP #指定协议转发类型,有 TCP 和 UDP 两种。
real_server 192.168.0.4 80 { #配置 real server 的信息,服务节点1
weight 1 #配置该节点的权重,权值大小用数字表示,设置权值的大小可以分不同性能的服务器分配不同的负载,性能较低的方服务器,设置权值较低,这样能合理地利用和分配系统资源
HTTP_GET { #设置健康检查
url { #访问这个地址,判断状态码是否 200
path /
status_code 200
}
connect_timeout 3 #表示3秒无响应超时
nb_get_retry 3 #表示重试次数
delay_before_retry 3 #表示重试间隔
}
}
real_server 192.168.0.5 80 { #配置服务节点2
weight 1
HTTP_GET {
url {
path /
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}