LVS DR + Keepalived 负载均衡配置详解(测试篇)

本文涉及的产品
应用型负载均衡 ALB,每月750个小时 15LCU
日志服务 SLS,月写入数据量 50GB 1个月
传统型负载均衡 CLB,每月750个小时 15LCU
简介:

 一、启动服务

1、在每台RS(真实服务器)上绑定LVS的虚拟IP及抑制ERP


 
 
  1. [root@LVS_RS_104 ~]# /etc/rc.d/init.d/lvs_dr.sh start 
  2. RealServer Start OK 
  3. [root@LVS_DR_103 ~]# /etc/rc.d/init.d/lvs_dr.sh start 
  4. RealServer Start OK 

2、启动LVS主的Keepalived服务 并查看日志 /var/log/messages


 
 
  1. [root@LVS_Master_101 ~]# /etc/rc.d/init.d/keepalived start 
  2. 正在启动 keepalived:                                      [确定] 
  3. [root@LVS_Master_101 ~]# tail -f  /var/log/messages 
  4. Jan 22 04:06:28 centos1 Keepalived_healthcheckers: Using MII-BMSR NIC polling thread... 
  5. Jan 22 04:06:28 centos1 Keepalived_healthcheckers: Netlink reflector reports IP 192.168.1.101 added 
  6. Jan 22 04:06:28 centos1 Keepalived_healthcheckers: Registering Kernel netlink reflector 
  7. Jan 22 04:06:28 centos1 Keepalived_healthcheckers: Registering Kernel netlink command channel 
  8. Jan 22 04:06:29 centos1 Keepalived_vrrp: VRRP_Instance(VI_1) Transition to MASTER STATE 
  9. Jan 22 04:06:30 centos1 Keepalived_vrrp: VRRP_Instance(VI_1) Entering MASTER STATE 
  10. Jan 22 04:06:30 centos1 Keepalived_vrrp: VRRP_Instance(VI_1) setting protocol VIPs. 
  11. Jan 22 04:06:30 centos1 Keepalived_vrrp: VRRP_Instance(VI_1) Sending gratuitous ARPs on eth0 for 192.168.1.181 
  12. Jan 22 04:06:30 centos1 Keepalived_vrrp: Netlink: skipping nl_cmd msg... 
  13. Jan 22 04:06:30 centos1 avahi-daemon[1261]: Registering new address record for 192.168.1.181 on eth0.IPv4. 

3、启动备的Keeplived服务,并查看日志


 
 
  1. [root@LVS_Backup_114 ~]# /etc/rc.d/init.d/keepalived start 
  2. 正在启动 keepalived:                                      [确定] 
  3. [root@LVS_Backup_114 ~]# cat /var/log/messages  
  4. Jan 22 04:17:29 test Keepalived: Starting Keepalived v1.1.17 (01/13,2013) 
  5. Jan 22 04:17:29 test Keepalived: Starting Healthcheck child process, pid=1528 
  6. Jan 22 04:17:29 test Keepalived: Starting VRRP child process, pid=1529 
  7. Jan 22 04:17:29 test Keepalived_vrrp: Using MII-BMSR NIC polling thread... 
  8. Jan 22 04:17:29 test Keepalived_healthcheckers: Using MII-BMSR NIC polling thread... 
  9. Jan 22 04:17:29 test Keepalived_healthcheckers: Netlink reflector reports IP 192.168.1.114 added 
  10. Jan 22 04:17:29 test Keepalived_vrrp: Netlink reflector reports IP 192.168.1.114 added 
  11. Jan 22 04:17:29 test Keepalived_healthcheckers: Registering Kernel netlink reflector 
  12. Jan 22 04:17:29 test Keepalived_healthcheckers: Registering Kernel netlink command channel 
  13. Jan 22 04:17:29 test Keepalived_vrrp: Registering Kernel netlink reflector 
  14. Jan 22 04:17:29 test Keepalived_vrrp: Registering Kernel netlink command channel 
  15. Jan 22 04:17:29 test Keepalived_vrrp: Registering gratutious ARP shared channel 
  16. Jan 22 04:17:29 test Keepalived_vrrp: Opening file '/etc/keepalived/keepalived.conf'.  #打开Keepalived的主配置文件
  17. Jan 22 04:17:29 test Keepalived_vrrp: Configuration is using : 62711 Bytes 
  18. Jan 22 04:17:29 test Keepalived_vrrp: VRRP_Instance(VI_1) Entering BACKUP STATE  #进入备 角色
  19. Jan 22 04:17:29 test Keepalived_vrrp: VRRP sockpool: [ifindex(2), proto(112), fd(10,11)] 

4、使用ipvsadm -Ln查看状态


 
 
  1. [root@LVS_Master_101 ~]# ipvsadm  
  2. IP Virtual Server version 1.2.1 (size=4096)  
  3. Prot LocalAddress:Port Scheduler Flags  
  4.   -> RemoteAddress:Port           Forward Weight ActiveConn InActConn  
  5. TCP  192.168.1.181:http rr persistent 50  
  6.   -> 192.168.1.104:http           Route   1      0          0           
  7.   -> 192.168.1.103:http           Route   1      0          0   

如果输出和上面的一致表明 LVS + Keepalived安装配置成功。接下来测试负载均衡和高可用。

二、测试负载均衡

1、在192.168.1.103和192.168.1.104上分别执行如下命令(在这里放不同的内容是为了方便测试,在生产环境中内容应该是相同的):


 
 
  1. 在192.168.1.103上执行下面命令 
  2. [root@LVS_RS_104 ~]# echo "The is server 103" >/var/www/html/index.html 
  3. 在192.168.1.104上执行下面命令 
  4. [root@LVS_DR_103 ~]# echo "The is server 104" >/var/www/html/index.html 

2、用两个不同的浏览器访问 http://192.168.1.181

我们看到上面两个浏览器访问到的是不同的RS服务器,负载均衡测试完成。

三、测试高可用:

1、关闭主LVS的Keepalived服务,查看备LVS的日志

 

[root@LVS_Master_101 ~]# /etc/rc.d/init.d/keepalived stop

停止 keepalived:                                          [确定]

 


 
 
  1. [root@LVS_Backup_114 ~]# cat /dev/null >/var/log/messages  
  2. [root@LVS_Backup_114 ~]# tail -f /var/log/messages  
  3. Jan 22 04:41:09 test Keepalived_vrrp: VRRP_Instance(VI_1) Transition to MASTER STATE  #在没收到主LVS的心跳检测后过度到主
  4. Jan 22 04:41:10 test Keepalived_vrrp: VRRP_Instance(VI_1) Entering MASTER STATE  #进入主的角色
  5. Jan 22 04:41:10 test Keepalived_vrrp: VRRP_Instance(VI_1) setting protocol VIPs. #设置虚VIP协议
  6. Jan 22 04:41:10 test Keepalived_healthcheckers: Netlink reflector reports IP 192.168.1.181 added  #添加192.168.1.181IP地址
  7. Jan 22 04:41:10 test avahi-daemon[1180]: Registering new address record for 192.168.1.181 on eth0.IPv4.  #将192.168.1.181绑定到eth0上
  8. Jan 22 04:41:10 test Keepalived_vrrp: VRRP_Instance(VI_1) Sending gratuitous ARPs on eth0 for 192.168.1.181  #
  9. Jan 22 04:41:10 test Keepalived_vrrp: Netlink: skipping nl_cmd msg... 

2、启动主LVS的Keepalived服务,查看备节点的日志

 

[root@LVS_Master_101 ~]# /etc/rc.d/init.d/keepalived start

正在启动 keepalived:                                      [确定]

查看备的日志如下

 

[root@LVS_Backup_114 ~]# tail -f /var/log/messages 

Jan 22 04:47:42 test Keepalived_vrrp: VRRP_Instance(VI_1) Received higher prio advert

Jan 22 04:47:42 test Keepalived_vrrp: VRRP_Instance(VI_1) Entering BACKUP STATE

Jan 22 04:47:42 test Keepalived_vrrp: VRRP_Instance(VI_1) removing protocol VIPs.

Jan 22 04:47:42 test Keepalived_healthcheckers: Netlink reflector reports IP 192.168.1.181 removed

Jan 22 04:47:42 test avahi-daemon[1180]: Withdrawing address record for 192.168.1.181 on eth0.

Jan 22 04:47:42 test Keepalived_vrrp: Netlink: skipping nl_cmd msg...

在主LVS挂掉以后,备LVS会接替主节点的工作,主LVS起来以后,备LVS会把工作交给主节点

 

 

本文转自1594cqb 51CTO博客,原文链接:http://blog.51cto.com/wolfchen/1123498,如需转载请自行联系原作者

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
1月前
|
运维 关系型数据库 MySQL
os-copilot安装_配置_功能测试全集
我是一位中级运维工程师,我平时工作会涉及到 各类服务器的 数据库 与 java环境配置 操作。 我顺利使用了OS Copilot的 -t -f | 功能,我的疑惑是不能在自动操作过程中直接给与脚本运行权限,必须需要自己运行一下 chmod 这个既然有了最高的权限,为什么就不能直接给与运行权限呢。 我认为 -t 功能有用,能解决后台运行基础命令操作。 我认为 -f 功能有用,可以通过task文件中撰写连续任务操作。 我认为 | 对文件理解上有很直接的解读,可以在理解新程序上有很大帮助。
175 86
|
1月前
|
人工智能 Ubuntu Linux
os-copilot使用之全面配置与使用测试
作为一名个人开发者,我主要从事云服务器架设工作。近期,我成功使用了OS Copilot的 `-t -f |` 功能,解决了执行语句、连续提问及快速理解文件的问题。我发现这些功能非常实用,特别是在使用Workbench时能快速调用AI助手。此外,建议将AI功能与xShell工具联动,进一步提升效率。文中详细记录了购买服务器、远程连接、安装配置OS Copilot以及具体命令测试的过程,展示了如何通过快捷键和命令行操作实现高效开发。
144 67
|
10天前
|
缓存 Java 测试技术
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
122 3
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
|
1月前
|
Dart 前端开发 Android开发
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
41 1
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
|
2月前
|
域名解析 弹性计算 监控
slb测试基本配置检查
slb测试基本配置检查
125 60
|
3月前
|
安全 应用服务中间件 网络安全
如何测试Nginx反向代理实现SSL加密访问的配置是否正确?
如何测试Nginx反向代理实现SSL加密访问的配置是否正确?
253 60
|
2月前
|
监控 测试技术
slb测试会话保持功能
slb测试会话保持功能
93 6
|
2月前
|
弹性计算 负载均衡 监控
slb测试健康检查
slb测试健康检查
72 4
|
2月前
|
监控 负载均衡 容灾
slb测试配置
slb测试配置
57 5
|
3月前
|
Web App开发 定位技术 iOS开发
Playwright 是一个强大的工具,用于在各种浏览器上测试应用,并模拟真实设备如手机和平板。通过配置 `playwright.devices`,可以轻松模拟不同设备的用户代理、屏幕尺寸、视口等特性。此外,Playwright 还支持模拟地理位置、区域设置、时区、权限(如通知)和配色方案,使测试更加全面和真实。例如,可以在配置文件中设置全局的区域设置和时区,然后在特定测试中进行覆盖。同时,还可以动态更改地理位置和媒体类型,以适应不同的测试需求。
Playwright 是一个强大的工具,用于在各种浏览器上测试应用,并模拟真实设备如手机和平板。通过配置 `playwright.devices`,可以轻松模拟不同设备的用户代理、屏幕尺寸、视口等特性。此外,Playwright 还支持模拟地理位置、区域设置、时区、权限(如通知)和配色方案,使测试更加全面和真实。例如,可以在配置文件中设置全局的区域设置和时区,然后在特定测试中进行覆盖。同时,还可以动态更改地理位置和媒体类型,以适应不同的测试需求。
263 1

热门文章

最新文章

  • 1
    小鱼深度评测 | 通义灵码2.0,不仅可跨语言编码,自动生成单元测试,更炸裂的是集成DeepSeek模型且免费使用,太炸裂了。
  • 2
    3天功能开发→3小时:通义灵码2.0+DEEPSEEK实测报告,单元测试生成准确率92%的秘密
  • 3
    Potpie.ai:比Copilot更狠!这个AI直接接管项目代码,自动Debug+测试+开发全搞定
  • 4
    基于FPGA的图像双线性插值算法verilog实现,包括tb测试文件和MATLAB辅助验证
  • 5
    【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
  • 6
    大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
  • 7
    「ximagine」业余爱好者的非专业显示器测试流程规范,同时也是本账号输出内容的数据来源!如何测试显示器?荒岛整理总结出多种测试方法和注意事项,以及粗浅的原理解析!
  • 8
    用户说 | 通义灵码2.0,跨语言编码+自动生成单元测试+集成DeepSeek模型且免费使用
  • 9
    以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
  • 10
    AxBench:斯坦福大学推出评估语言模型控制方法的基准测试框架