Keepalived 初步
keepalived 介绍
vrrp协议的软件实现,原生设计目的为了高可用ipvs服务
功能:
-基于vrrp协议完成地址流动
-为vip地址所在的节点生成ipvs规则(在配置文件中预先定义)
-为ipvs集群的各RS做健康状态检测
-基于脚本调用接口完成脚本中定义的功能,进而影响集群事务,以此支持nginx、haproxy等服务
Keepalived 架构
官方文档:
http://keepalived.org/documentation.html
-用户空间核心组件:
vrrp stack:VIP消息通告
checkers:监测real server
system call:标记real server权重
SMTP:邮件组件
ipvs wrapper:生成IPVS规则
Netlink Reflector:网络接口
WatchDog:监控进程
-控制组件:配置文件解析器
-IO复用器
-内存管理组件
Keepalived进程树
Keepalived <-- Parent process monitoring children
/_ Keepalived <-- VRRP child
/_ Keepalived <-- Healthchecking child
Keepalived 环境准备
- 各节点时间必须同步:ntp, chrony
- 关闭防火墙及SELinux
- 各节点之间可通过主机名互相通信:非必须
- 建议使用/etc/hosts文件实现:非必须
- 各节点之间的root用户可以基于密钥认证的ssh服务完成互相通信:非必须
Keepalived 相关文件
- 软件包名:keepalived
- 主程序文件:/usr/sbin/keepalived
- 主配置文件:/etc/keepalived/keepalived.conf
- 配置文件示例:/usr/share/doc/keepalived
- Unit File:/lib/systemd/system/keepalived.service
- Unit File的环境配置文件:
- /etc/sysconfig/keepalived CentOS
- /etc/default/keepalived Ubuntu
注意:CentOS 7 上有 bug,可能有下面情况出现
systemctl restart keepalived 可能不会新配置生效
systemctl stop keepalived 无法停止进程,需要kill 停止
本文链接:http://www.yunweipai.com/35361.html
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/52712.html