LR(四)Controller-联机负载和IP欺骗
联机负载
又叫分布式负载,是为了解决单台负载机的资源有限的限制问题。
-
前提:
-
控制机和负载机、负载机和被测服务器的网络是连通的。
-
负载机上安装了LR或者Load Generator组件。
-
-
操作:在负载机上,启动Loadrunner Agent的服务,方式有两种:
-
Loadrunner Agent process:以进程方式启动,重启机器之后失效。对应的进程叫magentproc.exe。
-
Loadrunner Agent runtimesettings configuration:以服务方式启动,会加入到系统的启动列表,重启机器之后会自动启动。对应的进程叫magentservice.exe。 以服务方式启动时,需要输入负载机的管理员用户和密码。
-
-
在控制机上,添加负载机。 在Controller的Scenario--Load generators菜单中添加负载机。
-
name:负载机的名称或者IP地址。
-
平台:选择负载机的操作系统类型。
最后点击Connection进行连接测试即可。
-
-
分配虚拟用户到负载机,分配方式有两种:
-
整组用户分配到一台负载机。
-
一组用户分配到多台负载机。
-
注意事项: 1、在LR中,是否分布式负载,并不影响场景计划的制定和执行。
2、分布式负载时,真正运行脚本、向服务器发送请求的是负载机。
3、在分布式负载时,要保证本地脚本调试环境和负载机的环境的一致性。 主要是系统环境变量、相关的一些依赖程序等。
4、对于脚本中所使用到的第三方文件,建议在Vugen中通过菜单File--Add files to Script的方式添加到脚本,这样在Pending的过程中,这些文件才会发送到负载机,脚本在负载机运行才不会出错。
5、负载机的杀毒软件和防火墙最好关闭。
LR一个场景中能够支持的最大的用户数和分布式负载无关,只和license有关。
IP欺骗
所谓IP欺骗,就是通过一台机器向服务器发送请求,但是会使用到多个独立的IP地址,使得服务器以为请求是来源于多台独立的客户端(IP)。
-
为什么需要IP欺骗?
-
服务器端有针对IP的安全检测机制。
-
被测服务器启用了负载均衡机制来扩充服务器的处理能力,并且负载均衡策略使用了基于IP的策略。
-
-
IP欺骗的原理:
-
TCP/IP协议:IP层封装数据时,会封装源地址和目标地址的IP地址。
-
一个网卡上可以绑定多个IP地址。
-
LR中的操作:
-
负载机上添加IP地址,方式可以手动添加也可以通过LR的工具实现。 IP分配方式必须是静态的,而不是动态的。
-
在Controller中,勾选Scenario-enable IP spoofer选项。然后执行场景即可。
注意事项:
-
负载机上所绑定的IP地址必须真实有效。即IP地址可以和被测服务器进行通信。
-
测试完毕之后,负载机上绑定的IP地址必须释放。
-
如果有联机负载,则IP地址需要绑定在负载机上,而不是控制机上。
-
如果测试环境中的任一网络节点上存在NAT机制,则IP欺骗无效,只能通过代理方式实现。 NAT:内网地址映射。 一般来说内网访问外网,必然存在NAT机制。