ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

通过LoadGenerator将Linux作为负载机进行压力测试

2019-02-11 13:40:48  阅读:278  来源: 互联网

标签:opt 负载 csh 步骤 HP 如下 LoadGenerator Linux


前提说明:

测试架构:controller部署在windows操作系统下(windows下安装loadrunner的过程,可以去网上搜下,这里不做解释),loadgenerator部署在linux下。

前提条件:

1、软件版本:Windows 7 X64,Loadrunner 11.0,LoadGenerator11.0,CentOS-6.4-i386-bin-DVD1to2

2、windows和centos的防火墙关闭

3、确保centos系统的主机名可以ping通

下载loadGenerator,LoadRunner Generator for Linux.zip,下载地址:http://pan.baidu.com/s/1o6OQpfk,当然用ISO也可以,不过用ISO涉及到挂载的问题,但是,没有权限的问题,而压缩文件则反之

安装步骤:

步骤1、利用rz命令,将LoadRunner Generator for Linux.zip拷贝到/opt下

步骤2、利用unzip LoadRunner Generator for Linux.zip命令将压缩文件解压缩,并重命名为LoadRunner,如下图:

步骤3、进入到/opt/LoadRunner/Linux文件夹下,执行./installer.sh

发现,当前用户没有执行installer.sh的权限,于是,利用命令chmod 777 installer.sh更改当前用户对installer.sh的执行权限。再次,执行./installer.sh弹出以下提示信息:

意思是,当前用户在访问/opt/LoadrunnerGenerator/Linux/prerequisites/steps/include.sh文件时,没有权限,为了防止使用其它文件遇到权限问题,索性将Linux整个文件夹的权限问题统一设置一下,于是,就用到了chmod的一个参数R,返回到LoadrunnerGenerator目录下,执行chmod -R 777 Linux,如下图:

然后,再到Linux目录下,执行./installer.sh脚本,如下图:

 

输入n,然后回车,如下图:

要读协议,输入v,若不读协议,直接同意,输入a,然后回车,如下图:

输入b,可以返回,输入i,然后回车,开始安装,如下图:

当出现下面这个页面时,可以选择finish,也可以看下安装的log:

步骤4、设置环境变量

在安装完成以后,验证是否安装成功,在/opt/HP/HP_LoadGenerator/bin目录下,执行./verify_generator,出现如下图所示的提示信息:

于是,得知我们需要设置环境变量。首先,将/etc/profile下的profile备份一下,然后,在profile文件尾部添加:

export M_LROOT=/opt/HP/HP_LoadGenerator/

保存退出,source /etc/profile重新加载该文件,再次在/opt/HP/HP_LoadGenerator/bin目录下,执行./verify_generator,出现如下图所示的提示信息:

从提示信息来看,LoadGenerator不能以root身份运行

步骤5、建立一个普通用户,因LoadGenerator不能以root身份运行,所以,一定要建立一个普通用户;如果有用户之间使用su 命令进行切换即可

步骤6、以创建的普通的用户登录,进入/opt/HP/HP_LoadGenerator/bin目录下,执行./verify_generator,弹出如下图所示的提示信息:

从提示信息来看,要再次设置DISPLAY环境变量(方法与步骤4相同),export DISPLAY=:0.0,关于DISPLAY参数,请参考:http://blog.chinaunix.net/uid-24020646-id-3065211.html,设置完DISPLAY变量以后,切换到普通用户(所有的设置都以root身份去做,运行时,切换到普通用户)执行,如下图:

步骤7、从运行结果来看,还是有一些错误存在的;

问题1:error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory;从这两个错误来看应该都是缺少So库导致;

解决办法:

执行命令yum install libstdc++.so.5 ,安装libstdc,如下图:

问题2:

error: The file .rhosts does not exist in the home directory of the user

大家可以上网查一下.rhosts 的作用,该文件主要是为了两台机器远程通信而建立的,在这里可以忽略。

问题3:

error:Verify $M_LROOT ...Failed

解决办法:大致猜测应该是环境变量的问题,可见在PATH中并没有加入/opt/HP/HP_LoadGenerator/bin,进入/etc/profile,添加:export PATH=${M_LROOT}/bin:$PATH,再次执行./verify_generatorg还是出现这样的错误可以忽略。如下图:

验证ok,(ps:Vuser Host localhost.Infoworks: Failed此错误目前没有影响loadrunner代理的正常启动,暂不用考虑)

步骤8:

此时,执行./m_daemon_setup start,若agent成功启动,则如下图所示,若启动失败,则提示m_agent_daemon is down,此时,可以去 :/tmp目录 下查看agent的运行log,排除错误。

注意:该文主要是对LoadGenerator进行的设置,如果用这个方法去执行压测,在跑脚本的时候会出错

解决办法参考:

 

LR的配置如下:

 

步骤1、打开LoadRunner Controller 设置要运行的脚本,打开后如下图:

 

 

步骤2、选择Run切换到场景运行模式,打开Load Generators ,如下图:

 

 

步骤3、点击添加按钮,添加负载机

 

 

最后点击确定,添加完成

 

步骤4、验证,选择添加的负载机,点击connect查看连接是否成功,连接成功后如下图:

 

 

步骤5:接下来开始跑测试脚本,发现出现如下图所示的错误:

 

 

错误:error Not all extension dlls were loaded

 

解决办法:

 

1、创建负载端的用户lrtest:

 

useradd -g 0 -s /bin/csh lrtest  

 

此用户默认使用的shell为csh;在centos下,默认的shell应该是bash,但LR使用的csh;当时我的机器上没有安装csh,需要进行安装:yum install csh

 

2、查看新增的用户信息

 

more /etc/passwd

 

 

 

3、配置环境变量

 

csh和bash在加载不同的shell时,可以加载不同的配置;csh的默认配置在 /etc/csh.cshrc下,bash的默认配置在/etc/profile。LR默认给出了一个环境变量的配置文件,文件在/opt/HP/HP_LoadGenerator/env.csh。下面我们需要将它加入到csh的默认配置中

 

vim /etc/csh.cshrc   

 

在文件末尾添加:

 

source /opt/HP/HP_LoadGenerator/env.csh

 

如下图:

 

 

4、在env.csh中设置DISPLAY变量

 

vim  /opt/HP/HP_LoadGenerator/env.csh

 

在末尾添加,如下图:

 

setenv DISPLAY 0.0

 

 

5、切换到lrtest用户,验证安装启动

 

cd  /opt/HP/HP_LoadGenerator/bin  //切换到该bin目录下

 

./verify_generator   //启动agent

 

 

 

 

./m_daemon_setup start  //若agent成功启动,则如下图所示,若启动失败,则提示m_agent_daemon is down

 

 

步骤6、在次运行场景中的脚本发现可以正常运行。

 

 

 

注意:

 

步骤5出现的错误可能是由于在安装LoadGenerator的时候,出现Vuser Host localhost.Infoworks: Failed错误导致,把该问题修复即可正常使用

 

标签:opt,负载,csh,步骤,HP,如下,LoadGenerator,Linux
来源: https://www.cnblogs.com/xiaowenshu/p/10361535.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有