ITPub博客

首页 > > > keepalived总结-模块化设计

keepalived总结-模块化设计

作者:longmanma 时间:2019-12-16 18:53:40 0 删除 编辑
keepalived也是模块化设计,不同模块复杂不同的功能,它主要有三个模块,分别是core、check和VRRP,其中:core模块:为keepalived的核心组件,负责主进程的启动、维护以及全局配置文件的加载和解析;check:负责健康检查,包括常见的各种检查方式;VRRP模块:是来实现VRRP协议的。system call:系统调用watch dog:监控check和vrrp进程的看管者,check负责检测器子进程的健康状态,当其检测到master上的服务不可用时则通告vrrp将其转移至backup服务器上。除此之外,keepalived还有下面两个组件:libipfwc:iptables(ipchains)库,配置LVS会用到libipvs*:配置LVS会用到注意,keepalived和LVS完全是两码事,只不过他们各负其责相互配合而已。keepalived正常启动的时候,共启动3个进程:一个是父进程,负责监控其子进程;一个是VRRP子进程,另外一个是checkers子进程;两个子进程都被系统watchlog看管,两个子进程各自负责复杂自己的事。Healthcheck子进程检查各自服务器的健康状况,,例如http,lvs。如果healthchecks进程检查到master上服务不可用了,就会通知本机上的VRRP子进程,让他删除通告,并且去掉虚拟IP,转换为BACKUP状态。Keepalived作用Keepalived主要用作RealServer的健康状态检查以及LoadBalance主机和BackUP主机之间failover的实现。Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的web服务器从系统中剔除,当web服务器工作正常后Keepalived自动将web服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的web服务器。----------------------------------------------------------------------------------------------------------------------------Keepalived和Heartbeat之间的对比1)Keepalived使用更简单:从安装、配置、使用、维护等角度上对比,Keepalived都比Heartbeat要简单得多,尤其是Heartbeat2.1.4后拆分成3个子项目,安装、配置、使用都比较复杂,尤其是出问题的时候,都不知道具体是哪个子系统出问题了;而Keepalived只有1个安装文件、1个配置文件,配置文件也简单很多;2)Heartbeat功能更强大:Heartbeat虽然复杂,但功能更强大,配套工具更全,适合做大型集群管理,而Keepalived主要用于集群倒换,基本没有管理功能;3)协议不同:Keepalived使用VRRP协议进行通信和选举,Heartbeat使用心跳进行通信和选举;Heartbeat除了走网络外,还可以通过串口通信,貌似更可靠;Keepalived使用的vrrp协议方式,虚拟路由冗余协议 ;Heartbeat是基于主机或网络的服务的高可用方式;Keepalived的目的是模拟路由器的双机;Heartbeat的目的是用户service的双机4)使用方式基本类似:如果要基于两者设计高可用方案,最终都要根据业务需要写自定义的脚本,Keepalived的脚本没有任何约束,随便怎么写都可以;Heartbeat的脚本有约束,即要支持service start/stop/restart这种方式,而且Heartbeart提供了很多默认脚本,简单的绑定ip,启动apache等操作都已经有了;使用建议:优先使用Keepalived,当Keepalived不够用的时候才选择Heartbeatlvs的高可用建议用Keepavlived业务的高可用用Heartbeat--------------------------------------------------------------------------------------------------------------------------keepalived的配置文件keepalived只有一个配置文件keepalived.conf,配置文件里面主要包括以下几个配置项,分别是global_defs、static_ipaddress、static_routes、VRRP_script、VRRP_instance和virtual_server。总的来说,keepalived主要有三类区域配置,注意不是三种配置文件,是一个配置文件里面三种不同类别的配置区域:1)全局配置(Global Configuration)2)VRRPD配置3)LVS配置下面就重点来说说这三类区域的配置:1)全局配置全局配置又包括两个子配置:全局定义(global definition)静态路由配置(static ipaddress/routes)

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2730/viewspace-3143180/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 网络基础-IP详解1
请登录后发表评论 登录
全部评论

注册时间:2019-12-18

  • 博文量
    492
  • 访问量
    11996