LVS_Keepalived群集

Keepalived案例分析

企业应用中,单台服务器承担应用存在单点故障的危险

单点故障一旦发生,企业服务将发生中断,造成极大的危害

单点故障(没有备份,挂掉就没了)
备份冗余(keepalived热备方案)keepalived主-备关系
以优先级区分主-备关系
以id表示热备组中的服务器定位
以VIP做为接收、响应请求的地址(只会存在于master服务器上)

Keepalived工具介绍

专为LVS和HA设计的一款健康检查工具

支持故障自动切换(Failover)
支持节点健康状态检查(Health Checking)
官方网站: http://www.keepalived.orgl

Keepalived实现原理剖析

Keepalived采用VRRP热备份协议实现Linux服务器的多机热备功能

VRRP(虚拟路由冗余协议】是针对路由器的一种备份解决方案

由多台路由器组成一个热备组,通过共用的虚拟IP地址对外提供服务
每个热备组内同时只有一台主路由器提供服务,其他路由器处于冗余状态
若当前在线的路由器失效则其他路由器会根据设置的优先级自动接替虚拟P地址(继续提供服务)

Keepalived案例讲解

Keepalived可实现多机热备,每个热备组可有多台服务器

Keepalived安装与启动

在LVS群集环境中应用时也需用到ipvsadm管理工具YUM安装Keepalived

启用Keepalived服务

配置Keepalived master服务器

Keepalived配置目录位于/etc/keepalived/

keepalived.conf是主配置文件

global_defs {…}区段指定全局参数
vrrp_instance 实例名称{…}区段指定VRRP热备参数
注释文字以”!”符号开头
目录samples,提供了许多配置样例作为参考

Keepalived

1、Keepalived
支持故障自动切换(Failover)
支持节点健康状态检查(Health checking)
判断IVS负载调度器、节点服务器的可用性,当master主机出现故障及时切换到backup节点保证业务正常,当master故障主机恢复后将其重新加入群集并且业务重新切换回master
节点(优先级)
2、Keepalived实现原理音剖析
keepalived采用VRRP热备份协议实现Linux服务器的多机热备功能VRRP(虚拟路由冗余协议)是针对路由器的一种备份解决方案。
由多台路由器组成一个热备份组,通过共用的虚拟IP地址对外提供服务
每个热备组内同时只有一台主路由器提供服务,其他路由器处于冗余状态
若当前在线的路由器失效,则其他路由器会根据设置的优先级自动接替虚拟IP地址,继续提供服务

安装ipvsadm keepalived

[root@lvs2 ~]# yum -y install ipvsadm keepalived
[root@lvs2 ~]# cd /etc/sysconfig/network-scripts/
[root@lvs2 network-scripts]# cp -p ifcfg-ens33 ifcfg-ens33:0
[root@lvs2 network-scripts]# vim ifcfg-ens33:0
[root@lvs2 network-scripts]# ifup ifcfg-ens33:0
[root@lvs2 network-scripts]#  systemctl restart network

在这里插入图片描述
在这里插入图片描述

[root@lvs2 network-scripts]# vim /etc/sysctl.conf
[root@lvs2 network-scripts]# sysctl -p

在这里插入图片描述
在这里插入图片描述

[root@lvs2 network-scripts]# modprobe ip_vs
[root@lvs2 network-scripts]# cat /proc/net/ip_vs

在这里插入图片描述

[root@lvs2 network-scripts]# ipvsadm-save > /etc/sysconfig/ipvsadm
[root@lvs2 network-scripts]# systemctl start ipvsadm
[root@lvs2 network-scripts]# vim /opt/dr.sh

在这里插入图片描述

[root@lvs2 network-scripts]# cd /opt
[root@lvs2 opt]# chmod +x dr.sh 
[root@lvs2 opt]# cd /etc/keepalived/
[root@lvs2 keepalived]# cp keepalived.conf keepalived.conf.bak
[root@lvs2 keepalived]# vim keepalived.conf
global_defs {             #定义全局参数
      router_id lvs2		#热备组内的设备名称不能一致
}
vrrp_instance vi_1 {       #定义VRRP热备实例参数
      state BACKUP        #指定热备状态,主为master,备为backup
      interface ens33      #指定承载vip地址的物理接口
      virtual_router_id 51 #指定虚拟路由器的ID号,每个热备组保持一致
      priority 100		   #指定优先级,数值越大越优先
      advert_int 1
      authentication {
           auth_type PASS
           auth_pass 6666
 }
virtual_ipaddress {        #指定集群VIP地址
      192.168.235.100
}
}
#指定虚拟服务器地址vip,端口,定义虚拟服务器和web服务器池参数
virtual_server 192.168.235.100 80 { 
      lb_algo rr                #指定调度算法,轮询(rr)
      lb_kind DR				#指定集群工作模式,直接路由DR
      persistence_timeout 6		#健康检查的间隔时间
      protocol TCP				#应用服务采用的是TCP协议
#指定第一个web节点的地址,端口
real_server 192.168.235.144 80 {
      weight 1					#节点权重
      TCP_CHECK {
          connect_port 80		#添加检查的目标端口
          connect_timeout 3		#添加连接超时
          nb_get_retry 3		#添加重试次数
          delay_before_retry 3	#添加重试间隔
   }
}
#指定第二个web节点的地址,端口
real_server 192.168.235.156 80 {
      weight 1
      TCP_CHECK {
          connect_port 80
          connect_timeout 3
          nb_get_retry 3
          delay_before_retry 3
   }
}
}
[root@lvs2 keepalived]# systemctl start keepalived
[root@lvs2 opt]# sh -x dr.sh 

在这里插入图片描述
在这里插入图片描述

漂移

[root@lvs1 keepalived]# systemctl stop keepalived.service 
[root@lvs2 keepalived]# ip a

在这里插入图片描述

小结

vrrp热备协议主要针对的对象是router路由器,同一个路由器下为同一个热备组,同一个热备组中的成员ID不可相同
以viP做为提供服务的IP地址,vIP只会漂移在优先级最高的设备中,多种类型的设备以优先级区分主-备-(备2)关系,主宕机则主优先级下降,备服务器将提升为主(VIP飘逸到备)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值