KeepAlived实现高可用集群LVS
前言前面介绍过LVS实现负载均衡,通过不同的算法进行调度请求。LVS有一个缺点就是如果后面有一台RSdown了,LVS服务器是无法发现的,调度还是正常进行调度。如果是在实际生产环境中,就会导致有一部分用户无法正常访问。还有一个不足之初LVS本身万一down机了,怎么办呢?LVS虽然很强大,但是功能比较少。这里给大家介绍和LVS绝配的一个软件:keepalived。它既能对IPVS做高可用,还可以最RS对健康性检查,作用有点像ldirectord,但是功能更强大。
keepalived:
vrrp协议的软件实现,原生设计目的为了高可用ipvs服务。
功能:
1、vrrp协议完成地址流动
2、为vip地址所在的节点生成ipvs规则(在配置文件中预先定义)
3、为ipvs集群的各RS做健康状态检测
4、基于脚本调用接口通过执行脚本完成脚本中定义的功能,进而影响集群事务,以此支持nginx、haproxy等服务
注意事项:
(1) 各节点时间必须同步:ntp, chrony
(2) 确保iptables及selinux不会成为阻碍
(3) 各节点之间可通过主机名互相通信(对KA并非必须),建议使用/etc/hosts文件实现
(4) 各节点之间的root用户可以基于密钥认证的ssh服务完成互相通信(对KA并非必须)
环境准备:
两台Keepalived服务器虚拟成一个网络组,对外提供服务。虚拟的IP在实际生产中应为公网IP。
https://s1.运维网.com/oss/201710/30/7e2d56f5cde4ad31d4ec53b3bd870f8f.png-wh_500x0-wm_3-wmp_4-s_26223335.png
2台Keepalived配置,要注意主必须不同的地方(router_id 、state、priority、weight)
]#yum install -y keepalived
]#vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
notification_email {
}
notification_email_from
页:
[1]