keepalived高可用简介

帅比萌擦擦* 提交于 2020-02-05 11:39:12

1、高可用技术的概念
高可用不是说企业服务器、门户网站、数据库、业务系统不宕机,表示宕机的时间比较短,能够从故障中,快速的恢复用户访问,衡量网站架构是否使用了高可用技术?可用采用几个9,例如99.9%、99.99%、99.999%,9的个数越多,证明服务高可用性越强。

2、keepalived高可用软件的概念?
Keepalived是目前互联网IT企业中使用最广泛的高可用软件,主要是用于实现至少两台服务器之间的服务高可用的,可以做高可用的服务:Apache、Nginx、MYSQL、Redis、Tomcat、PHP、Zabbix、NFS、DHCP、NTP、Vsftpd、Samba、LVS等。

3、keepalived的主要功能
(1)健康检测功能
(2)vrrp实现高可用功能

4、keepalived常用模块

  • Core,是keepalived的核心,负责主进程的启动和维护,全局配置文件的加载解析等 。
  • Check,负责healthchecker(健康检查),包括了各种健康检查方式,以及对应的配置的解析包括LVS的配置解析;
  • Vrrp,VRRPD子进程,VRRPD子进程就是来实现VRRP协议;
  • Libipfwc,iptables(ipchains)库,配置LVS会用到;
  • Libipvs,虚拟服务集群,配置LVS会使用。

5、Layer3,4,7
即是keepalived再OSI七层参考模型中的3,4,7层上的工作原理

  • Layer3:Keepalived使用Layer3的方式工作式时,Keepalived会定期向服务器群中的服务器发送一个ICMP的数据包(如果发现某台服务的IP地址无法ping通,Keepalived便报告这台服务器失效,并将它从服务器集群中剔除。Layer3的方式是以服务器的IP地址是否有效作为服务器工作正常与否的标准。)
  • Layer4: Layer4主要以TCP端口的状态来决定服务器工作正常与否。如WEB
    server的服务端口一般是80,如果Keepalived检测到80端口没有启动,则Keepalived将把这台服务器从服务器群中剔除。
  • Layer7:Layer7工作在应用层,Keepalived将根据用户的设定检查服务器程序的运行是否正常,如果与用户的设定不相符,则Keepalived将把服务器从服务器群中剔除。

6、keepalived的进程功能说明
生产环境使用Keepalived正常运行,共启动3个进程,一个是父进程,负责监控其子进程,一个是VRRP子进程,另外一个是Checkers子进程。
两个子进程都被系统Watchlog看管,两个子进程各自负责自己的事,Healthcheck子进程检查各自服务器的健康状况,如果Healthcheck进程检查到Master上服务不可用了,就会通知本机上的VRRP子进程,让他删除通告,并且去掉虚拟IP,转换为BACKUP状态。
7、面试解答keepalived工作原理
Keepalived高可用对之间是通过VRRP通信的,因此,我从VRRP开始给您讲起:

  • VRRP,中文名全称虚拟路由冗余协议,VRRP的出现是为了解决静态路由的单点故障
  • VRRP是通过一种竞选协议机制来将路由任务交给某台VRRP路由器的。
  • VRRP用IP多播的方式(默认多播地址224.0.0.18)实现高可用对之间的通信
  • 工作时主节点发包,备节点接包,当备节点接收不到主节点发的数据包的时候,就启动接管程序接管主节点的资源。备节点可以有多个,通过优先级竞选,但一般Keepalived系统运维工作中都是一对
  • VRRP使用加密协议加密数据,但Keepalived官方建议使用明文配置认证类型和密码
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!