keepalived和haproxy

keepalived

core模块(keepalived的核心模块),负责主进程的启动、维护以及全局配置文件的加载

vrrp模块:实现vrrp协议的模块,即主功能模块

check模块,负责健康检查,也可以检测后台真实服务器的情况

Ivs集群当中的高可用架构 只是针对调度器的高可用。

基于vrrp来实现调度器的主和备。

高可用的HA架构。

主调度器和备调度(多台)

在主调度器正常工作的时候,备完全处于冗余状态(待命)。不参与集群的运转,只有当主调度器出现故障时,备才会承担主调度器的工作。主调度器恢复功能之后,主继续做为集群的入口,备继续处于冗余状态(取决于优先级)

keepalive基于vrrp协议来实现lvs高可用的方案。

1、组播地址:

224.0.0. 18根据组播地址来进行通信,主和备之间发送报文。确定对方时候存活。

2、根据优先级的大小来确定主和备的位置

3、故障切换,主挂了,备来继续工作,主恢复了,备继续等待。 4、主和备之间的切换是vip地址的切换。

keepalive是专门为了Ivs而出现的,但是不是Ivs专用的。

调度器的高可用

vip地址主备之间的切换,主在工作时,vip地址只在主上,主停止工作,vip飘移到备服务器

在主备的优先级不变的情况下,主恢复工作,vip会飘回到主服务器。

1、配优先级

2、配置vip和真实服务器

3、主备的id要一致。

4、主备的id要区分。

keepalive是专门为lvs打造的,但不是专门为lvs服务的

keepalive也可以使用nginx,haproxy

keepalive+nginx实现高可用

vrrp_sript check_nginx {

script " /opt/check_nginx.sh"

#调用脚本内容,检测nginx的状态

interval 5

#检测的间隔时间是5秒

}

脑裂是什么?

HA 高可用架构中的一个特殊现象,只要使用vip地址代理的冗余模式的高可用。都有可能出现脑裂的问题。

主和备同时都有vip地址

主和备无法确定各自的身份,同时出现了vip地址,两边起来了,但是两边都无法使用。

产生原因:

1、keepalive的配置文件问题

2、心跳线(网线)断了,老化。

3、网卡出了问题(硬件),ip地址配置冲突。

4、防火墙的策略,iptables的策略, 屏蔽了组播的地址广播。屏蔽了vrrp协议的报文 5、两台服务器的时间不同步 6、其他服务器配置对心跳线的检测造成干扰

怎么解决?

1.配置文件问题,如virtual_router_id 不一致;网卡地址不正确

2.心跳线问题:定期检查心跳线(网线)的物理连接和信号质量,确保没有老化或断裂

3.网络问题:确保集群中节点的IP地址配置没有冲突;检查网卡硬件

4.防火墙策略:关闭防火墙,确保防火墙规则没有阻止广播或VRRP报文的传输。

5.时间同步问题:确保所有集群节点的时间都通过NTP或其他时间同步服务保持同步

6.定期分析集群日志,查找可能导致脑裂的潜在问题,增加对集群状态的监控

nginx 、 lvs 、 lvs+keepalive 、 keepalive单独配置(nginx+keepalive)

Haproxy负载均衡:

nginx四层转发,七层代理

lvs 四层转发 走内核态

Haproxy 四层转发 七层转发

Haproxy 的作用和使用场景:

1.场景:用于高并发的web场景,可以支持一万个以上的并发请求,高性能的tcp和http的负载均衡器

工作原理:提供一个代理地址 访问集群

2.作用:

进行四层和七层转发

支持https

haproxy本身不自带缓存功能,可以在请求当中添加cookie使用缓存

支持主备切换 (keepalive)

3.特点:

可靠性高,稳定性好

可以同时维护40000-50000个并发,单位时间内可以处理的最大请求数20000个(3秒)

支持负载均衡算法,虽然没有缓存,但支持会话保持

rr、 wrr 、leastconn

make TARGET=linux2628 ARCH=x86_ 64

target使用的版本要大于linux.2.60以上的版本

相关推荐
rain bye bye3 天前
calibre LVS run不起来跑不通
lvs
rain bye bye4 天前
calibre LVS 跑不起来 就将setup 的LVS Option connect下的 connect all nets by name 打开。
服务器·数据库·lvs
2301_787328497 天前
25.负载均衡-Nginx、HAProxy、LVS 全解析
nginx·负载均衡·lvs
小任今晚几点睡15 天前
LVS深度解析:从原理到实战的负载均衡完全指南
负载均衡·lvs
Yyyy48223 天前
LVS TUN隧道模式
运维·网络·lvs
IT成长日记24 天前
【LVS入门宝典】LVS调度算法轮询(RR)深度解析:从原理到实战的公平调度之道
算法·lvs·rr·轮询调度算法
chen_note24 天前
LVS集群
nginx·lvs·haproxy·ipvsadm·lvs四种模式
Yyyy48224 天前
LVS三种模式及原理
服务器·php·lvs
Yyyy48224 天前
LVS、Nginx、HAProxy 的区别
运维·nginx·lvs
IT成长日记25 天前
【LVS入门宝典】LVS核心原理与实战:Real Server(后端服务器)高可用配置指南
linux·运维·服务器·负载均衡·lvs