LVS_DR模式结合keepalived

背景:lvs_dr模式dr无法主动识别rs上的web服务器是否停止工作,为解决这一问题,用到keepalived,集成高可

用集群和负载均衡为一体(keepalived-->HA+LB)

环境:

DIR:172.16.115.100(主keepalived)

RS1:172.16.115.157(nginx)

RS2:172.16.115.202(nginx、备keepalived)

Cilent:172.16.115.*

DIR/RS2主机(keepalived主、备)

1. DIR/RS2上分别安装keepalived和ipvsadm

命令 yum install -y keepalived ipvsadm

2. DIR/RS2上分别置空并重新编辑keepalived配置文件vim /etc/keepalived/keepalived.conf

内容:

vrrp_instance VI_1 {
     state MASTER         # 状态:DIR上用MASTER,RS2备用服务器上用BACKUP
     interface eth0
     virtual_router_id 51
     priority 100         # 优先级别:DIR上用100,RS2用90
     advert_int 1
     authentication {
        auth_type PASS
        auth_pass 1111
     }
    virtual_ipaddress {
        172.16.115.200
     }
    }
   virtual_server 172.16.115.200 80 {
     delay_loop 6              # 每隔6秒查询real server的状态
     lb_algo rr               # lvs算法
     lb_kind DR               # Driect Route
     persistence_timeout 0           # 同一ip的连接60秒内被分配到同一台real server
     protocol TCP              # 用tcp协议查询real server状态
     real_server 172.16.115.157 80 {
        weight 100            # 权重为100
        TCP_CHECK {
            connect_timeout 10       # 10秒无反应超时
            nb_get_retry 3
            delay_before_retry 3
            connet_port 80
        }
    }
    real_server 172.16.115.202 80 {
        weight 100
        TCP_CHECK {
            connect_timeout 10
            nb_get_retry 3
            delay_before_retry 3
            connet_port 80
          }
      }
   }

RS1/RS2(Web服务器)

1. RS1和RS2编写脚本vim /usr/local/sbin/lvs_rs.sh

内容:

 #! /bin/bash
    #指定vip是在回环地址地址上;子网掩码全设255,表明只发不回
    vip=172.16.115.200
    ifconfig lo:0 $vip broadcast $vip netmask 255.255.255.255 up
     
    #添加路由
    route add -host $vip lo:0
    
    #调整内核参数
    echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore
    echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce
    echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
    echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce

2. RS1和RS2分别启动脚本/usr/local/sbin/lvs_rs.sh,并启动niginx

说明:执行成功之后,会在回环地址网卡上生产一个虚拟ip 172.16.115.200

命令 sh  /usr/local/sbin/lvs_rs.sh

命令 /etc/init.d/nginx start

3. dir和rs2上启动keepalived服务;dir上查看ipvsadm规则;ip addr查看ip(ifconfig看不到)

说明:dir和rs2(主备)都产生转发规则,主启动了虚拟ip:172.16.115.200,备没有启动(当主停掉时,备才启动)

dir上:  /etc/init.d/keepalived start

rs2上:  /etc/init.d/keepalived start

注:echo 1 > /proc/sys/net/ipv4/ip_forward(如无法转发,则在keepalived主、备上开启)

keepalived 主

keepalived 备

测试:

1. 停止rs1的nginx服务,客户机访问虚拟IP

命令 /etc/init.d/nginx stop

命令 curl 172.16.115.200

结果:成功跳过不能访问的rs1,rs1的转发规则也被清掉(重启nginx,又会加回来)

 

2. 停掉dir上的主keepalived,查看主备状态

说明:备用keepalived接管,重新启动主keepalived时,主重启接管

命令 /etc/init.d/keepalived stop

keepalived 主

keepalived 备

dir上的主keepalived停止状态下,再次停用rs1的Nginx时,客户端也成功跳过不能访问的rs1;重启rs1的Nginx,恢复正常

 

时间: 2024-08-07 21:17:02

LVS_DR模式结合keepalived的相关文章

Keepalived+Lvs_DR模式实现Web服务的HA高可用集群

Keepalived基于VRRP协议实现LVS服务的高可用集群,可以利用其来避免单点故障.一个LVS服务会有2台服务器运行Keepalived,一台为主服务器(MASTER),一台为备份服务器(BACKUP),但是对外表现为一个虚拟IP,主服务器会发送特定的消息给备份服务器,当备份服务器收不到这个消息的时候,即主服务器宕机的时候, 备份服务器就会接管虚拟IP,继续提供服务,从而保证了高可用性.Keepalived是VRRP的完美实现,因此在介绍keepalived之前,先介绍一下VRRP的原理.

搭建LVS(DR模式)+Keepalived高可用群集,可跟做!!!

Keepalived的设计目标就是构建高可用的LVS负载均衡群集,可以调用ipvsadm工具来创建虚拟服务器.管理服务器池,而不仅仅用作双机热备.使用Keepalived构建LVS群集更加简便易用,主要优势体现在,对LVS负载调度器实现热备切换.提高可用性,对服务器池中的节点进行健康检查,自动移除失效节点,恢复后再重新加入. 在基于LVS(DR模式)+Keepalived实现的LVS群集结构中,至少包括两台热备的负载调度器,两台以上的节点服务器,本次实验以DR模式的LVS群集为基础,增加一台负载

LVS DR 模式和 keepalived lvs

一.LVS DR 模式 1.准备工作 调度器(dir): 192.168.134.132 rs1:192.168.134.131 rs2:192.168.134.150 vip:192.168.134.200 2.将之前两台rs的网关修改回来. 将GATEWAY=192.168.134.100 修改为 192.168.134.2 3.在 dir 编辑配置文件  vim /usr/local/sbin/lvs_dr.sh #! /bin/bash echo 1 > /proc/sys/net/ip

LVS DR模式搭建 keepalived + LVS

lvs DR dir 编写脚本vim /usr/local/sbin/lvs_dr.sh #! /bin/bashecho 1 > /proc/sys/net/ipv4/ip_forwardipv=/usr/sbin/ipvsadmvip=192.168.91.200rs1=192.168.91.129rs2=192.168.91.130#注意这里的网卡名字ifdown ens33ifup ens33ifconfig ens33:2 $vip broadcast $vip netmask 255

LVS_DR模式构建配置

一.环境准备 lvs负载均衡器 系统:centos6.8 ip:192.168.2.203 vip:192.168.2.17 web服务器RS1 系统:centos6.8 ip:192.168.2.204 web服务器RS2 系统:centos6.8 ip:192.168.2.204 二.安装LVS软件 可以编译安装也可以yum安装,编译安装需要创建一个超链接:ln -s /usr/src/kernels/2.6.18-238.el5-i686 /usr/src/linux 这里选择yum方式安

基于DR模式的keepalived主从模式高可用架构搭建

一:架构图示 2.keepalived是什么? Keepalived的作用是检测服务器的状态,如果有一台web服务器宕机 ,或工作出现故障,Keepalived将检测到,通过VRRP协议,将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工作正常后 Keepalived自动将服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的服务器. 3.VRRP协议是什么? VRRP(Virtual Router Redundancy Protoc

负载均衡lvs_dr模式

################################################################# director为调度器 rs1及rs2位real server vip为虚拟ip director: 192.168.108.18 rs1: 192.168.108.19 rs2: 192.168.108.10 vip: 192.168.108.17 #########################################################

Linux的shell脚本LvsDR模式启动脚本和模拟keepalived高可用脚本

一.脚本运行前模拟环境 DR:server1:172.25.29.1 ipvsadm  keepalived RS:server2:172.25.29.2 arptables_jf   httpd RS:server3:172.25.29.3 arptables_jf   httpd DR:server4:172.25.29.4 ipvsadm  keepalived 使用脚本前先安装好server1.server2.server3的软件,做好httpd的后端访问页面 二.LVS_DR模式脚本介

LVS DR 模式搭建、Keepalived+LVS DR模式搭建

LVS DR 模式搭建 Keepalived+LVS DR模式搭建 原文地址:http://blog.51cto.com/13515599/2097080