1.简介
高可用集群(High Availability Cluster)是以减少服务中断时间为目地的服务器集群技术它通过保护用户的业务程序对外不间断提供的服务,把因软件、硬件、人为造成的故障对业务的影响降低到最小程度
#解决VIP出现故障导致整个网络瘫痪问题
实现高可用
active/passive 主/备
active/active 双主
active --> HEARTBEAT --> passive
VRRP
解决路由器出现问题:使外部人员能够访问内部网络
什么是keepalived
keepalived是集群管理中保证集群高可用的一个服务软件,用来防止单点故障。
功能
基于vrrp
协议完成地址流动
|
为
vip
地址所在的节点生成
ipvs
规则
(
在配置文件中预先定义
)
|
为
ipvs
集群的各
RS
做健康状态检测
|
基于脚本调用接口完成脚本中定义的功能,进而影响集群事务,以此支持
nginx
、
haproxy
等服务
|
2.实验:
四台主机:ka1,ka2,server1,server2
配置文件路径:/etc/keepalived/keepalived.conf
ka1(ip:10.10.10.10)
ka2(ip:10.10.10.20)将优先级设置为80,低于ka1
实验效果:停止ka1上的keepalived服务后,ka2顶替ka1,继续工作
我们会发现VIP是无法ping通的
加入vrrp_iptables
ping通
3.抢占模式和非抢占模式
非抢占模式:
在vrrp_instance VI_1 {}中修改
ka1与ka2均改为
state BACKUP
在配置文件中加入
nopreempt
延时抢占:
preempt_delay 10s ###抢占延迟10s
单播
keepalived 通知脚本
我们在qq邮箱上进行测试
1.在qq邮箱中账号与安全,开启最下面的服务,会收到一串字母,也是图二的smtp-auth-password
2.脚本编写:/etc/keepalived/mail.sh
3.编写配置文件(/etc/keepalived/keepalived.conf):设置三个“开关”
4.执行
单播传输:
配置:
效果:
实现master/master的Keepalived双主架构
![](https://i-blog.csdnimg.cn/direct/b8053275545c42feae55c3c9321d6691.png)
![](https://i-blog.csdnimg.cn/direct/a6d9c820984f4b649717e60c3ffb3049.png)
keepalive是专门为LVS与HA设计的一款健康检查软件
支持故障自动切换
支持节点健康状态检查(Health Checking)判断 LVS 负载调度器、节点服务器的可用性,当 master 主机出现故障及时切换到backup 节点保证业务正常,当 master故障主机恢复后将其重新加入群集并且业务重新切换回 master 节点。