keepalived

keepalived高可用服务工作原理

  keepalived高可用对之间是通过VRRP协议通信的,VRRP协议是通过竞选机制来确定主备的,主的优先级高于备,因此,工作时主会获得所有的资源,备节点处于等待状态,当主挂了时候,备节点,接管主节点的资源,然后顶替主节点对外提供服务。 VRRP协议是通过IP多播包的方式(224.0.0.18)发送的。   在keepalived之间,只有作为主的服务器会一直发送VRRP广播包,告诉备他还活着,此时备不会抢占主,当主不可用时,即备监听不到主发送的广播包时,就会启动相关服务接管资源,保证业务的连续性。接管速度可以小于1秒。VRRP使用加密协议加密发送广播包。

VRRP介绍

  VRRP(Virtual Router Redundancy Protocol)协议是用于实现路由器冗余的协议,VRRP协议将两台或多台路由器设备虚拟成一个设备,对外提供虚拟路由器IP(一个或多个),而在路由器组内部,如果实际拥有这个对外IP的路由器如果工作正常的话就是MASTER,或者是通过算法选举产生,MASTER实现针对虚拟路由器IP的各种网络功能,如ARP请求,ICMP,以及数据的转发等;其他设备不拥有该IP,状态是BACKUP,除了接收MASTER的VRRP状态通告信息外,不执行对外的网络功能。当主机失效时,BACKUP将接管原先MASTER的网络功能。   VRRP协议使用多播数据来传输VRRP数据,VRRP数据使用特殊的虚拟源MAC地址发送数据而不是自身网卡的MAC地址,VRRP运行时只有MASTER路由器定时发送VRRP通告信息,表示MASTER工作正常以及虚拟路由器IP(组),BACKUP只接收VRRP数据,不发送数据,如果一定时间内没有接收到MASTER的通告信息,各BACKUP将宣告自己成为MASTER,发送通告信息,重新进行MASTER选举状态。

keepalived部署

keepalived软件安装部署 lb01 lb02负载服务器上均安装

yum install -y keepalived  #两台设备

配置文件

cat /etc/keepalived/keepalived.conf
global_defs {
   notification_email {
     acassen@firewall.loc             填写管理员的邮箱信息
     failover@firewall.loc
     sysadmin@firewall.loc
   }
   notification_email_from xxxxxxx@163.com   定义利用什么邮箱发送邮件
   smtp_server smtp.163.com           定义邮件服务器信息
   smtp_connect_timeout 30            定义邮件发送超时时间
   router_id lb01                     (重点参数)局域网keppalived主机身份标识信息(每台唯一)
   vrrp_skip_check_adv_addr          跳过相邻地址
   vrrp_strict
   vrrp_garp_interval 0
   vrrp_gna_interval 0
}

vrrp_instance VI_1 {                  VRRP协议相关配置
    state MASTER                      keepalived角色描述信息,可配置参数(MASTER,BACKUP)
    interface eth0                    将虚拟ip用于那块网卡
    virtual_router_id 55              表示keepalived家族表示信息
    priority 150                      keepalved服务竞选主备服务器优先级设置(数字越大越优先)
    advert_int 1                      主服务器组播包发送间隔时间
    authentication {                  主备主机之间的认证表示信息
        auth_type PASS                采用明文认证机制
        auth_pass 1111                编写明文密码
    }
    virtual_ipaddress {               设置虚拟ip地址信息
        10.0.0.3/24 dev eth0 label eth0:1  
#虚拟ip,即VIP为10.0.0.88,子网掩码为24位,绑定接口为eth0,别名为eth0:1,此参数备节点设置和主节点相同
    }
}
搭建基础的keepalived配置文件 (lb01)
cat /etc/keepalived/keepalived.conf
global_defs {               
   router_id LVS_01
   vrrp_strict
   vrrp_garp_interval 0
   vrrp_gna_interval 0
}

vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51
    priority 150
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
     10.0.0.3/24 dev eth0 label eth0:1
    }
}
systemctl start keepalived
systemctl enable keepalived
搭建基础的keepalived配置文件 (lb02)
cat /etc/keepalived/keepalived.conf
global_defs {
   router_id LVS_02
   vrrp_strict
   vrrp_garp_interval 0
   vrrp_gna_interval 0
}

vrrp_instance VI_1 {
    state BACKUP
    interface eth0
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
     10.0.0.3/24 dev eth0 label eth0:1
    }
}
systemctl start keepalived
systemctl enable keepalived

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • keepalived

    如果实在搞不明白负载的那几台哪个是显示网页的哪台,都用ip addr查看一下,虚拟IP在哪台上就是哪台显示网页。

    呆呆
  • Keepalived - Keepalived 实现 tomcat双机热备

    https://keepalived.readthedocs.io/en/latest/#

    小小工匠
  • 18.12 keepalived + LVS

    Keepalived+LVS DR 完整架构需要两台服务器(角色为dir)分别安装keepalived软件,目的是实现高可用,但keepalived本身也有负载...

    运维小白
  • keepalived in docker

    目前keepalived作为kubernetes集群高可用的重要组件,保障虚拟ip可以在多个主机间漂移,sealos 也是使用了,只是在方案上与传统的方式有很大...

    sealyun
  • 配置keepalived

    (host-1操作) 1.把host-1作为主机器,进行修改配置 vim /etc/keepalived/keepalived.conf

    陈不成i
  • Keepalived LVS TUN

    LVS 只实现到了四层,Keepalived 可以实现七层的简单检查,Keepalived 可以通过预设的检查逻辑来管理 LVS 配置,从而实现对 LVS 自动...

    franket
  • Keepalived LVS NAT

    LVS 只实现到了四层,Keepalived 可以实现七层的简单检查,Keepalived 可以通过预设的检查逻辑来管理 LVS 配置,从而实现对 LVS 自动...

    franket
  • Keepalived LVS DR

    LVS 只实现到了四层,Keepalived 可以实现七层的简单检查,Keepalived 可以通过预设的检查逻辑来管理 LVS 配置,从而实现对 LVS 自动...

    franket
  • keepalived(9)——sorry_server

    前面我们说到如果一台主机出事故就删除一台,要是所有的都出事故呢,就要配置专门的sorry界面,配置方法如下,只需要加一行sorry_server即可:

    gzq大数据
  • keepalived haproxy lvs

    用户5760343
  • keepalived是什么

    Keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能。因此,K...

    陈不成i
  • keepalived(1)——准备

    keepalived和之前的lvs不同,它实现了高可用,核心是vrrp协议,即当一个路由器出故障时,可以换一个路由器作为备用,实现路由效果,体现了容错效应,而l...

    gzq大数据
  • keepalived部署

    (机器均操作) 1.安装keepavlied yum install keepalived -y

    陈不成i
  • Keepalived双机热备

    第三步:在MySQL01数据库中创建一个ds_wp数据库,然后倒入 ds_wp.sql

    刘銮奕
  • 18.2 keepalived介绍

    keepalived介绍 在这里使用keepalived来实现高可用集群,因为heartbeat在centos6上有一些问题,影响实验效果 heartbeat...

    运维小白
  • keepalived(4)——演练故障出现时keepalived的状态

    keepalived的主要作用体现在处理单点故障,像前面我们设置的两台主机,就可以进行故障演练,现在的状态是master主机开启着keepalived:

    gzq大数据
  • Keepalived使用梳理

    keepalived介绍 keepalived观察其名可知,保持存活,在网络里面就是保持在线了,也就是所谓的高可用或热备,它集群管理中保证集群高可用的一个服务软...

    洗尽了浮华
  • Keepalived工作原理

    互联网老辛
  • keepalived负载平衡

    5、更改主服务器的Keepalived服务优先级低于备用,通过浏览器输入IP地址10.10.100.250

    呆呆

扫码关注云+社区

领取腾讯云代金券