Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)

Keepalived热备

Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)

Keepalived概述

调度器出现单点故障,如何解决?
1)Keepalived实现了高可用集群;
2)Keepalived最初是为了LVS设计的,专门监控服务器节点的状态
3)Keepalived后来加入了VRRP功能,防止单点故障

Keepalived运行原理

1)Keepalived检测每个服务器节点状态
2)服务器节点异常或工作出现或故障,Keepalived将故障节点从集群系统中剔除
3)故障节点回复后,Keepalived再将其加入到集群系统中
4)所有工作自动完成,无需人工干预

Keepalived服务

RHEL7的光盘已经包含Keepalived软件包,只要配置好yum,指向光盘即可安装
[[email protected] ~]# yum -y install keepalived

配置文件解析

/etc/keepalived/keepalived.conf
Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)
Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)
高可用拓扑图Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)

配置Web服务器

Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)
使用Keepalived为服务器提供VIP
Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)
--------------------+++++++++++++++++++++++++++++++++++++±---------------------

Keepalived+LVS

Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)

高可用调度器

Keepalived+LVS拓扑

Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)

Keepalived配置说明

1)LVS相关信息通过Keepalived配置即可
2)主配置文件说明如下
Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)
VRRP实例设置Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)
Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)

Real Server 配置

1)真实服务器运行在DR模式下
2)修改内核参数,并附加VIP
3)详细配置参见LVS相关章节
https://editor.****.net/md/?articleId=104303005
---------------------------------++++++++++++++++++++++++++±--------------------

HAProxy服务器

Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)

HAProxy简介

1)它是免费、快速并且可靠的一种解决方案
2)适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理
3)提供高可用性、负载均衡以及基于和HTTP应用的代理
Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)
衡量负载均衡性能的因素
Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)

HAProxy工作模式

Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)

HAProxy配置

Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)

配置文件说明

Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)
Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)
Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)
Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)
Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)
Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)

管理服务

Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)

监控HAProxy状态

Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)
---------------++++++++++++++++++++++++++++++±----------------------

集群调度器软件对比

nginx分析

优点
1)工作在七层,可以针对HTTP做分流策略
2)1.9版本开始支持四层代理
3)正则表达式比HAProxy强大
4)安装、配置、测试简单,通过日志可以解决多数问题
5)并发量可以达到几万次
6)Nginx还可以作为Web服务器使用
缺点
1) 七层代理仅支持http、https、mail 协议,应用面小
2)监控检查仅通过端口,无法使用URL检查

LVS分析

优点
1)负载能力强,工作在四层,对内存、CUP消耗低
2)配置性能低,没有太多的可配置性,减少人为的错误
3)应用面广,几乎可以为所有应用提供负载均衡
缺点
1)不支持正则表达式,不能实现动静分离
2)如果网站构架庞大,LVS-DR配置比较繁琐

HAProxy分析

优点
1)支持session、cookie功能
2)可以通过URL进行健康检查
3)效率、负载均衡速度,高于Nginx,低于LVS
4)HAProxy支持TCP,可以对MySQL进行负载均衡
5)调度算法丰富
缺点
1)正则若于Nginx
2)日志依赖于syslogd

-------------------++++++++++++++++++++++++++++++++±-------------------

Keepalived产生大量的日志

问题现象

1)当观察/var/log/messages日志时,发现该文件每秒钟都产生很多条日志记录
2)如果不及时解决,该文件会迅速增长

故障分析及排除

原因分析
1)Keepalived的工作原理与VRRP相同
2)VRRP相同组要求有相同的密码、VIP和组号,如果不一致就会产生日志通知
解决方法
1)检查两台Keepalived配置,将虚拟IP、虚拟路由ID和密码修改成一样的

LVS规则不完整

问题现象

Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)

故障分析及排除

Linux高级运维:Keepalived热备 、 Keepalived+LVS和HAProxy服务器(CLUSTER----DAY41)