欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 游戏 > 2. keepalived结合LVS配合使用

2. keepalived结合LVS配合使用

2025/3/26 8:44:46 来源:https://blog.csdn.net/u010198709/article/details/139487968  浏览:    关键词:2. keepalived结合LVS配合使用

keepalived结合LVS配合使用

  • 1、后端nfs存储提供项目文件
  • 2、后端nfs上集中安装MySQL,共用数据库
  • 3、业务服务器通过LNMP正常部署wordpress博客,客户端通过DNS解析可正常访问
  • 4、所有业务服务器上修改arp参数、配置VIP
  • 5、配置keepalived实现LVS高可用
    • 5.1 keepalived结合LVS的作用
    • 5.2 在负载均衡器上安装keepalived
    • 5.3 编辑keepalived配置文件
    • 5.4 启动keepalived服务,查看验证
    • 5.5 测试通过VIP访问业务

在这里插入图片描述

1、后端nfs存储提供项目文件

2、后端nfs上集中安装MySQL,共用数据库

3、业务服务器通过LNMP正常部署wordpress博客,客户端通过DNS解析可正常访问

4、所有业务服务器上修改arp参数、配置VIP

[root@web01 ~]# vim /etc/sysctl.conf 
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1[root@web01 ~]# sysctl -p
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
[root@web01 ~]# ip addr add dev lo 192.168.140.100/32
[root@web01 ~]# ip addr show lo
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet 192.168.140.100/32 scope global lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever

5、配置keepalived实现LVS高可用

5.1 keepalived结合LVS的作用

1、自动生成负载均衡规则(虚拟服务、后端real server)
2、实现lvs负载均衡器的高可用
3、对后端业务服务器有健康状态检查功能

5.2 在负载均衡器上安装keepalived

[root@master_lvs ~]# yum install -y keepalived ipvsadm 

5.3 编辑keepalived配置文件

主调度器的配置

[root@master_lvs ~]# cat /etc/keepalived/keepalived.conf
! Configuration File for keepalivedglobal_defs {router_id master_lvs
}vrrp_instance blog {             // keepalived虚拟组名state MASTER								// 状态interface ens33							// 在哪块网卡配置VIPvirtual_router_id 51			  // 虚拟组IDpriority 100								// 优先级advert_int 1								// 心跳间隔,单位秒authentication {auth_type PASSauth_pass redhat}virtual_ipaddress {192.168.140.100}
}virtual_server 192.168.140.100 80 { delay_loop 6lb_algo rrlb_kind DRpersistence_timeout 300protocol TCPreal_server 192.168.140.12 80 {weight 1TCP_CHECK {connect_port 80connect_timeout 3nb_get_retry 3delay_before_retry 3}}real_server 192.168.140.13 80 {weight 1TCP_CHECK {connect_port 80connect_timeout 3nb_get_retry 3delay_before_retry 3}}
}

从调度器的配置

[root@slave_lvs ~]# cat /etc/keepalived/keepalived.conf
! Configuration File for keepalivedglobal_defs {router_id slave_lvs
}vrrp_instance blog {state BACKUP							// BACKUP代表从状态interface ens33virtual_router_id 51priority 50							// 低优先级advert_int 1authentication {auth_type PASSauth_pass redhat}virtual_ipaddress {192.168.140.100}
}virtual_server 192.168.140.100 80 { delay_loop 6lb_algo rrlb_kind DRpersistence_timeout 300protocol TCPreal_server 192.168.140.12 80 {weight 1TCP_CHECK {connect_port 80connect_timeout 3nb_get_retry 3delay_before_retry 3}}real_server 192.168.140.13 80 {weight 1TCP_CHECK {connect_port 80connect_timeout 3nb_get_retry 3delay_before_retry 3}}
}

5.4 启动keepalived服务,查看验证

[root@master_lvs ~]# 
[root@master_lvs ~]# systemctl enable --now keepalived
Created symlink from /etc/systemd/system/multi-user.target.wants/keepalived.service to /usr/lib/systemd/system/keepalived.service.
[root@master_lvs ~]# [root@slave_lvs ~]# systemctl enable --now keepalived
Created symlink from /etc/systemd/system/multi-user.target.wants/keepalived.service to /usr/lib/systemd/system/keepalived.service.
[root@slave_lvs ~]# 

分别在主、备调度上查看LVS负载均衡规则

[root@master_lvs ~]# ipvsadm -L -n
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.140.100:80 rr persistent 300-> 192.168.140.12:80            Route   1      0          0         -> 192.168.140.13:80            Route   1      0          0      
[root@slave_lvs ~]# ipvsadm -L -n
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.140.100:80 rr persistent 300-> 192.168.140.12:80            Route   1      0          0         -> 192.168.140.13:80            Route   1      0          0   

正常情况下,只有主调度上会出现VIP,客户端所有的流量从主经过

[root@master_lvs ~]# ip addr show 
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 00:0c:29:cc:6b:2f brd ff:ff:ff:ff:ff:ffinet 192.168.140.10/24 brd 192.168.140.255 scope global noprefixroute ens33valid_lft forever preferred_lft foreverinet 192.168.140.100/32 scope global ens33valid_lft forever preferred_lft foreverinet6 fe80::20c:29ff:fecc:6b2f/64 scope link valid_lft forever preferred_lft forever

5.5 测试通过VIP访问业务

修改解析

C:\Users\admin>ping blog.linux.com正在 Ping blog.linux.com [192.168.140.100] 具有 32 字节的数据:
来自 192.168.140.100 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.140.100 的回复: 字节=32 时间<1ms TTL=64

在这里插入图片描述将主调度停掉,在从调度上查看VIP

[root@slave_lvs ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 00:0c:29:29:e5:43 brd ff:ff:ff:ff:ff:ffinet 192.168.140.11/24 brd 192.168.140.255 scope global noprefixroute ens33valid_lft forever preferred_lft foreverinet 192.168.140.100/32 scope global ens33valid_lft forever preferred_lft foreverinet6 fe80::20c:29ff:fe29:e543/64 scope link valid_lft forever preferred_lft forever

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词