AIX或UNIX下安装loadrunner的load generator负载生成器组件
Linux下安装LoadRunner(LoadGenerator)
http://wenku.baidu.com/view/db72a74ce45c3b3567ec8b26.htmlLinux下安装LoadRunner LoadGenerato
http://blog.sina.com.cn/s/blog_9aa583cf0101bu4y.html
http://blog.itpub.net/12272958/viewspace-706620/
本周单位同事需要用到LoadRunner对项目进行测试,我在Linux下搭建一个环境,借这个机会也学习一下LoadRunner,对以后监控和测试Oracle的性能有更多的办法。
搜集一些资料,通过安装和使用,整理LoadRunner在windows和Linux下搭建的过程、在安装过程中经常遇到些问题、重新安装时遇到的问题和解决办法、如何快点上手使用LoadRunner。
一、LoadRunner在windows的安装过程及系统环境初始化
1、 安装.net framwork 3.5
2、 安装LoadRunner(安装包路径和程序安装路径中不要有中文)
3、 安装JDK(下载官方最新安装包,所有机器安装目录建议相同)
4、 安装C++运行库
Microsoft Visual C++ 2005 Redistributable + sp1
Microsoft Visual C++ 2008 Redistributable + sp1
5、 将系统临时文件存在在空间最大的磁盘上。譬如执行批处理如下:
wmic ENVIRONMENT where "name='temp' or name='tmp'" set VariableValue='D:\temp'
6、 修改系统注册表,增加系统最大吞吐能力。批处理如下:
echo Yes | reg add HKLM\System\CurrentControlSet\Services\tcpip\Parameters /v MaxUserPort /t reg_Dword /d 65534 /f
echo Yes | reg add HKLM\System\CurrentControlSet\Services\tcpip\Parameters /v TcpTimedWaitDelay /t reg_Dword /d 5 /f
7、 保证RemoteRegistry服务自动启动,资源监控时需要用到:
sc config RemoteRegistry start= auto
8、 将LoadRunner的Agent添加到服务并自动启动:
"%LoadRunner%\LAUNCH_SERVICE\bin\magentservice.exe"–install
9、 各测试机时间同步,可使用Windows的时间同步或第三方软件实现。笔者使用Linux的NTP服务。
10、 如果安装有防火墙,注意给LoadRunner放行。
11、 如果要进行Oracle的测试,还需要安装Oracle客户端。
12、 开启自动登录,运行`control userpasswords2`取消勾选“要使用本机,用户必须输入用户名和密码”(配合第13点,防止系统更新完成后自动重启)
13、 禁止系统更新自动重启功能:
echo Yes | reg add HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate\AU /v NoAutoRebootWithLoggedOnUsers /t reg_Dword /d 1 /f
测试环境:
Microsoft Windows Server 2003 R2 Enterprise Edition Service Pack 2 _ cn _ i386 (v5.2.3790)
HP LoadRunner Software 9.50.0.0 Build 3210
二、LoadRunner在linux和Unix的安装过程及系统环境初始化
tips:撰写本本文时LoadRunner最新版本为9.5,经测试在当前LoadRunner最新版本11.00仍然适用!
2.1 在HP的官方网站上下载LoadRunner9.5 的Linux安装程序[T7177-15009.iso],安装文档[hp_man_LRIG9.50_01_pdf.pdf];
安装程序包括Hp、Ibm、Linux、Solaris系统的支持(LR9.0对应安装文件为[TLRNUX900WC_00.zip])。
2.2 安装包的处理:
2.2.1 ZIP解压:unzip TLRNUX900WC_00.zip
2.2.2 挂载ISO:mkdir /mnt/LoadRunner ; mount -t iso9660 -o loop T7177-15009.iso /mnt/LoadRunner
2.3 开始安装,以LR9.5为例:
/mnt/LoadRunner/Linux/installer.sh
按提示操作,直接Next到完成。
2.4 添加用户和环境变量:
useradd -g 0 -s /bin/csh higkoo
cat /opt/HP/HP_LoadGenerator/env.csh > /etc/.login
cat /opt/HP/HP_LoadGenerator/env.csh >~higkoo/.cshrc
touch ~root/.rhosts ~higkoo/.rhosts
2.5 检查运行环境(在本机或使用VNC执行):
su - higkoo
cd /opt/HP/HP_LoadGenerator/bin/
./verify_generator
2.6 启动服务(用新增的用户higkoo):
cd /opt/HP/HP_LoadGenerator/bin/
./m_daemon_setup start
2.7 检查是否启动:
ps aux | grep m_agent_daemon
netstat -naop | grep 54345
2.8 注意事项:
开启端口54345或关闭防火墙(service iptables stop)
正确设置后用verify_generator的检测结果是:
./verify_generator =================================================== HP Vuser Environment Verification Utility ===================================================
Product: HP LoadRunner 9.50 Version: 09.50.0000 Build: 3378 higkoolincn100ce5:
verify_generator...OK verify_generator...OK verify_generator...OK Don't forget to make sure that the name of the controller machine is also in .rhosts verify_generator...OK verify_generator...OK verify_generator...OK verify_generator...OK verify_generator...OK verify_generator...OK verify_generator...OK _______________________________________________
Summary: ________ Vuser Host higkoolincn100ce5: OK |
使用Controller连接,在“UNIX Environment Tab”下选择“Don't use RSH ”即可连接Linux负载机。
若使用RSH连接,则负载机必须安装RSH并正确配置,正如检测过程中描述的“Don't forget to make sure that the name of the controller machine”。
补充,Linux下似乎只支持Web/Http协议的脚本。譬如WinSock协议,从名称上都知道只适合Windows:
“Error (-81024): LR_VUG: The 'WinSock' type is not supported on 'LINUX' platforms .”
另外试了Java协议,确实不行,报错如下:
Error (-81024): LR_VUG: The 'General-Java' type is not supported on 'LINUX' platforms .
依赖库:yum -y --disablerepo=\* --enablerepo=AutoInstaller --nogpgcheck --skip-broken localinstall /mnt/CentOS_Final/CentOS/compat-libstdc++-33-3.2.3-61.i386.rpm
否则会报:m_agent_daemon: error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory
注意hosts文件的配置,如果机器名和hosts里配置不一致也会导致LoadRunner启动失败,
譬如:Error: Communication error: Failed to get the server host IP by calling the gethostbyname function.。
附上给LoadRunner定制的系统服务脚本(/etc/init.d/loadrunner):
#!/bin/bash
# /etc/init.d/loadrunner
# Loadrunner负载生成器服务
DAEMON=m_daemon_setup
ARGV="$@"
DIR=/opt/HP/HP_LoadGenerator/bin/
USER=higkoo
UBIT="su - $USER -c "
$UBIT "cd $DIR && ./$DAEMON $ARGV"
运行服务:
service loadrunner start
m_agent_daemon ( 1808 )
三、windows重新安装loadrunner及注意事项
1、备份文件lm70.dll和mlr5lprg.dll(C:\Program Files\Mercury\LoadRunner\bin和C:\Program Files\Mercury\LoadRunner\bin\tulip\bin下面)
2、卸载原来的安装程序(删了一下注册表中的相关键值);
3、安装新的程序,在添序列号的步骤中,填temporary(如果原来的序列号还能用,就没必要);
4、安装完成,正常重启以后,用备份的文件将安装后的文件替换,然后在loadrunner-config中new一个license,将原来的序列号输入进去,一切ok。
以上是将7.8更新为8.1时这样做的,不知道同一个版本是否可以
--------------------------------------------------------------------------------------------------------------
安装过程中碰到的问题为:
1.将安装的程序拷贝到本机或者映射为网络驱动器安装(有多层目录时),安装时会一直提示某个文件找不到。安装后的程序没法用。
2.将安装不成功的LoadRunner8卸载,再次安装时,就会提示序列号非法。
问题解决要点:
必须将LoadRunner8.0安装程序映射到根目录,如果是在某个子目录下,是不行的。
可以采用以下三种方法:
1.如果服务器上安装程序(setup.exe)已经在某个共享根目录下,这直接将这个共享根目录映射为网络驱动器,如Z盘,然后运行Z盘根目录下的setup.exe即可。
2.如果服务器上安装程序所在目录不是共享根目录,则可以将整个安装包拷贝到本地,然后将这个安装包所在目录共享;从网络上访问本机,如\\127.0.0.1,将刚才共享的那个目录映射为网络驱动器,最后执行setup.exe即可。
3.可以将安装程序刻成光盘,这是比较方便的方式了。
------------------------------------------------------------------------------------------------------------
LoadRunner 8.1 安装问题解决
安装中遇到两个问题:
1、刚开始安装时老提示找不到路径。
解决:这是因为路径中有中文的原因,换到非中文目录下即可。
2、安装完后重启时继续安装报很多如BHOManager.dll ,ActiveScreen.dll,xmlstoragewrapper.dll等dll注册失败的问题。
解决:不要结束任务,不停的点确认,直到安装完毕。
a、这是因为无法成功注册BHOManager.dll 而导致的一系列问题。要想先成功注册 ,必先注册atl.dll,命令:regsvr32 atl.dll,然后再注册BHOManager.dll :regsvr32 c:\windows\system32\BHOManager.dll。
b、接下来执行注册刚才那些安装中未成功注册的dll。找到 LoadRunner安装目录下 bin\Miregsvr.bat 这个文件,双击运行注册就可以了。
网上找到的卸载出现的问题的解决方法:
卸载:
因为之前一直没有分析正确问题的所在,所以卸载和重新安装loadrunner好几次,关于卸载的一些问题,及时你按照卸载工具卸载了loadrunner,下次装的时候还是会包license失效,解决方法,要登录到注册表regedit中(当发现报错后,立即去注册表删除下边的内容,只要有相同的就删除,这样注册码就可以再次使用了,并不会报错,呵呵)。
删除如下内容:
HKEY_CLASSES_ROOT\Mercury.Lm70Control
HKEY_CLASSES_ROOT\Mercury.Lm70Control.1
同时删除
Mercury.Lm70ControlMgr
Mercury.Lm70ControlMgr.1
然后就使用查找功能,搜索“Mercury”,发现有Lm70Contro字样的东西都要删除掉。
最后删除下面内容:
HKEY_CURRENT_USER\Software\Mercury Interactive
HKEY_LOCAL_MACHINE\SOFTWARE\Mercury Interactive
删除完成后,继续填入license,下一步,如果还是不行,继续去注册表中删除上边内容,知道没有了,就OK了。
四、LoadRunner监控Linux系统资源的准备工作
4.1首先查看rpc.rstatd是否安装:
[root@localhost bin]# whereis rpc.rstatd
4.2在Linux系统中安装rpc.rstatd:
4.2.1下载rpc.rstatd-4.0.1.tar.gz安装包。下载地址:http://sourceforge.net/projects/rstatd
4.2.2 执行安装程序包:
tar -xzvf rpc.rstatd-4.0.1.tar.gz //解压rcp.rstatd
cd rpc.rstatd-4.0.1 //进入到rpc.rstatd目录中
./configure //配置rc.rstatd的安装,以下我的是按照默认方式的
make //编译rc.rstatd
make install // 安装
4.2.3重启xinetd
/etc/init.d/xinetd restart
【不同版本的Linux,可能同时也要保证portmap 服务也已开启:/etc/rc.d/init.d/portmap start 】
4.2.4修改etc/xinetd.d目录下面的3个conf (rlogin, rsh, rexec)中的disable置均设置为no
cd /etc/xinetd.d //进入到etc/xinetd.conf目录中
Vi rlogin //编辑disable=no,保存
Vi rsh // 编辑disable=no,保存
Vi rexec //编辑disable=no,保存
【不同版本的Linux,可能不需要修改以上文件】
4.2.5启动rpc.rstatd和检测
rpc.rstatd //启动rpc.rstatd进程
rpcinfo –p // 执行此命令检查rpc服务的状态
[root@localhost xinetd.d]# rpcinfo -p
程序版本协议 端口
100000 2 tcp 111 portmapper
100000 2 udp 111 portmapper
100024 1 udp 32768 status
100024 1 tcp 32769 status
100001 5 udp 867 rstatd
100001 3 udp 867 rstatd
100001 2 udp 867 rstatd
100001 1 udp 867 rstatd
**最后提醒一下,被监视LINUX机器上的防火墙一定要关闭哟,否则还会监视不到的!(iptables -F)
五、loadrunner快速入门
------------------------------------------
loadrunner快速入门
------------------------------------------
创建脚本
设计场景
运行场景
分析结果
------------------------------------------
创建脚本
------------------------------------------
设置集合点
事务开始
事务结束
1 启动web服务器
2 打开VuGen
3 创建一个空白Web脚本
选择协议Web(Http/HTML)
4 开始录制
录制到操作(action)
5 查看脚本
6 树视图
7 脚本视图
8 回放脚本
------------------------------------------
设计场景
------------------------------------------
1 运行负载测试
2 手动场景
3 添加组(添加脚本)
4 编辑计划
------------------------------------------
运行场景
------------------------------------------
1 打开“运行”视图
2 开始场景
------------------------------------------
分析结果
------------------------------------------
结果=>分析结果
1 工具=>分析
2 文件=>打开=>打开现有Analysis会话文件
3 平均事务响应时间
Average Transaction Response Time
4 check_itineryary
5 发布Word报告
------------------------------------------
详细内容请参见HP LoadRunner中文快速入门11.0版:http://space.itpub.net/?uid-12272958-action-viewspace-itemid-706621