高可用 负载均衡的web集群
1.准备两台real server ,配置IP(192.168.4.11 ; 192.168.4.12),在loopback上配置vip(192.168.4.100),调整内核参数,实现客户端发送到VIP的请求只有调度服务器响应,real server(Web服务器)不要响应
2.两台调度器安装keepalived,ipvsadm
3.修改调度器上keepalived配置文件 vim /etc/keepalived/keepalived.conf
global_defs {
notification_email {
root@localhost /*邮件接收人地址*/
}
notification_email_from admin@tedu.cn /*邮件发送人*/
smtp_server 127.0.0.1 /*邮件服务器地址*/
smtp_connect_timeout 30
router_id LVS_DEVEL
vrrp_skip_check_adv_addr
#vrrp_strict
vrrp_garp_interval 0
vrrp_gna_interval 0
}
vrrp_instance VI_1 {
state MASTER 主调度器
interface eth0
virtual_router_id 51
priority 150
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.4.100 /*跟real server的VIP相同*/
}
}
virtual_server 192.168.4.100 80 { /*虚拟服务器*/
delay_loop 6
lb_algo rr /*调度算法 轮询*/
lb_kind DR /*DR模式*/
persistence_timeout 50 /*50秒内访问同一个服务器*/
protocol TCP
real_server 192.168.4.11 80 { /*将real server加入虚拟服务器*/
weight 1
TCP_CHECK { /*TCP 检查*/
connect_timeout 3 /*连接超时时间3秒*/
nb_get_retry 3 /*失败重试3次*/
delay_before_retry 3 /*每次间隔3秒*/
}
}
real_server 192.168.4.12 80 {
weight 1
TCP_CHECK {
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
4.启动后检查
- systemctl start keepalived.service
- ipvsadm -ln 可以看到虚拟服务器中已经加入了real server
5.测试
- 停止real server服务.ipvsadm -ln检查虚拟服务器状态
- 检查时候有邮件,没有的话 yum -y install mailx sendmail,再启动 systemctl start sendmail.service