lvs负载均衡+ldirectord(后端健康检测)or+keepalived(调度主备)

本文详细介绍了如何在Linux环境下配置DR模式的LVS负载均衡,包括YUM源配置、ipvsadm命令使用、健康检查及主备切换策略。通过lvs、ldirectord与keepalived的组合应用,实现高效、稳定的网络服务负载均衡。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

DR模式配置


配置yum源:
[rhel-source]
name=Red Hat Enterprise Linux $releasever - $basearch - Source
baseurl=http://172.25.55.250/6.5
enabled=1
gpgcheck=0

[LoadBalancer]
name = LoadBalancer
baseurl = http://172.25.55.250/6.5/LoadBalancer
gpgcheck = 0

[HighAvailability]
name = HighAvailability
baseurl = http://172.25.55.250/6.5/HighAvailability
gpgcheck = 1

# 下载调度器工具
yum install ipvsadm -y

# 配置轮询模式dr
ipvsadm -A -t 172.25.55.100:80 -s rr
# 配置轮询的web服务
ipvsadm -a -t 172.25.55.100:80 -r 172.25.55.2:80 -g
ipvsadm -a -t 172.25.55.100:80 -r 172.25.55.1:80 -g
# 查看
ipvsadm -l


# 分别给调度器和两台机器配置vip
ip addr add 172.25.55.100/24 dev eth0


ip addr add 172.25.55.100/32 dev eth0


ip addr add 172.25.55.100/32 dev eth0

server1和server2

#以及给两个调度的web服务器配置arp过滤
yum install arptables_jf #下载工具

测试结果如下,但是如果http服务挂了之后,他无法检查后端服务(这里是httpd服务)的状态,还会调度无法正常工作的后端服务器。

 

lvs+ldirectord+实现调度器健康检查

#在前面实验的基础上

# 安装

yum install ldirectord-3.9.5-3.1.x86_64.rpm

# 复制一个配置文件,修改以下配置

cp /usr/share/doc/ldirectord-3.9.5/ldirectord.cf /etc/ha.d/

vim /etc/ha.d/ldirectord.cf

# 配置如下

# Sample for an http virtual service
virtual=172.25.254.100:80  # 设置为vip
        real=172.25.254.1 gate  # 指定后端真实服器的ip
        real=172.25.254.2 gate   #同上
        fallback=127.0.0.1:80 gate #如果后端服务器全都挂了,本地主机也就是调度器自己顶替
        service=http #提供的服务http
        scheduler=rr #轮询算法
        #persistent=600
        #netmask=255.255.255.255
        protocol=tcp #
        checktype=negotiate
        checkport=80 端口
        request="index.html" 默认主页
        #receive="Test Page"
        #virtualhost=www.x.y.z

 

# 在启动之前将调度器配置的清空,ldirectord会自动检测后端服务器状态,将正常工作的服务器添加到调度策率中,反之会删除

 

测试当一台httpd服务停止工作后,访问VIP只调度正常工作的服务器

 

lvs+keepalived实现调度器主备配置(自带将康检测与ldirectord冲突,所以关闭ldirectord)

# 解决依赖
yum install gcc openssl-devel libnl-devel -y
yum install libnfnetlink-devel-1.0.0-1.el6.x86_64.rpm -y

# 编译安装
tar zxf keepalived-2.0.6.tar.gz
cd keepalived-2.0.6
./configure --with-init=SYSV --prefix=/usr/local/keepalived #安装路径
make && make install

# 设置软链接,也就是快捷方式,不占用系统空间

ln -s /usr/local/keepalived/sbin/keepalived /sbin/
ln -s /usr/local/keepalived/etc/keepalived/ /etc/
ln -s /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/
ln -s /usr/local/keepalived/etc/sysconfig/keepalived  /etc/sysconfig/
chmod +x /usr/local/keepalived/etc/rc.d/init.d/keepalived         #给启动脚本加执行权限

# 主设备配置文件
! Configuration File for keepalived

global_defs {
   notification_email {
     root@localhost #节点健康检查报告,通知本地邮箱
   }
   notification_email_from keepalived@localhost
   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id LVS_DEVEL
   vrrp_skip_check_adv_addr
   #vrrp_strict  # 开启后VIP默认加入到iptables禁止列表
   vrrp_garp_interval 0
   vrrp_gna_interval 0
}

# 高可用配置
vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 105 # 0~255,虚拟路由id
    priority 100 # 权重越大,主高于备
    advert_int 1 #同步检查时间,单位s
    authentication {      #认证设置
        auth_type PASS  # 认证方式
        auth_pass 1111
    }

# 设置VIP,可以设置多,换行
    virtual_ipaddress {
        172.25.55.100
    }
}


virtual_server 172.25.254.100 443 {
    delay_loop 3        # 多次确认错误
    lb_algo rr
    lb_kind DR
    #persistence_timeout 50
    protocol TCP

# 两台真实后端服务器配置

    real_server 172.25.55.1 80 {
        TCP_CHECK {
        weight 1
            connect_timeout 3
            retry 3
            delay_before_retry 3
    }
    real_server 172.25.55.2 80 {
        TCP_CHECK {
        weight 1
            connect_timeout 3
            retry 3
            delay_before_retry 3
    }
    }

#配置完成后删除VIP,停止ipvsadm服务,

 

# 备用设置通主配置

主机:server4
# 其他配置于主设备配置一致,包括lvs,
# 同样安装keepalived
# 辅助设备配置,在主配置基础上修改如下
vrrp_instance VI_1 {
    state BACKUP          # 辅助设备
    interface eth0
    virtual_router_id 105 #主备配置标示要一样
    priority 50        # 权重小于主
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        172.25.55.100
    }
}

 

#启动后VIP自动配置在主调度器所在的主机server3,同样启动备调度器

 

#测试,当主设备重启后,VIP就自动配制到备用调度器,并开始工作

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值