http://note.youdao.com/noteshare?id=341c03233eb74adfb1b6b1bc131c279d&sub=577EC1D1A58544AB8927DBBBA872F051
安装IE9浏览器 SOP Operation Task: 安装微软IE9浏览器。 因为LoadRunner11版本最高支持的IE版本目前为IE9,因此建议安装IE9浏览器版本,以便于上下兼容,既能满足新应用的需求,又能兼容旧IE版本的功能。 安装Java运行环境 SOP Operation Task: 分别运行运行下载好的Java 32位和java 64位运行时环境。 如果安装IE9浏览器,那么会有两个版本并存,分别是32位版本和64位版本。缺省情况下,Windows的IE浏览器链接是指向64位版本,启动这个64位版本浏览器安装java,会默认安装64位版本的java,而LoadRunner本身录制脚本时,如果选择IE会默认启动32位版本,而不是64位版本,而这个默认启动的32位IE浏览器是不包含java浏览器插件的。如果选择路径下面的64位IE版本,那么录制脚本时会丢失句柄,导致LoadRunner录不到操作和事件。 此处需要去https://www.java.com网站去下载Java的32位版本。 下载方法:启动C:Program Files (x86)Internet Exploreriecplorer.exe, 在地址栏中输入上述Java网站的地址,按照网站提示下载32位Java安装程序。一般建议下载离线安装包。 用同样的方法,启动C:Program FilesInternet Exploreriecplorer.exe,下载64位的Java安装程序。同样建议下载离线的Java64位安装程序。 分别运行下载好的Java32位和64位安装程序,并重新启动计算机。 安装LoadRunner测试软件 按照提示安装即可(包括添加License)。注意:不要安装汉化!不要安装汉化!不要安装汉化!重要的事情说三遍。安装汉化以后,分析图表有些会打不开。 使用LoadRunner教程Tutorial HP LoadRunner本身自带的Samples是很好的脚本和功能的试验场,最好保证一直能够使用。以下是如何搭建和使用Samples。 准备PDF reader或者Viewer LoadRunner 11的教程Tutorial是PDF格式,建议安装Acrobat Reader,用于打开和阅读该Tutorial。 设置Java安全信任本地站点 打开配置Java。位置Contol Panel ->Java,或者从菜单中选择‘配置Java’。 点击‘安全’Tab,选中‘启用浏览器中的Java内容(E)’。 点击‘编辑站点列表(S)’,在列表中加入http://127.0.0.1:1080,点击添加会有警告,忽略该警告完成添加。 在Internet选项->安全中添加受信任站点 打开Internet选项,点击‘安全’Tab,点击‘受信任的站点’,点击‘站点(S)’按钮,在输入框中输入http://127.0.0.1,点击添加,会收到提示必须用https连接的警告,忽略该警告并完成添加。 录制脚本 检查Web Tours是否正常工作 启动HP LoadRunner->SamplesWebStart Web Server,在系统图标栏可以查看到Xitami Web Server的小图标。 启动HP LoadRunner->SamplesWebHP Web Tours Application,会打开32位的IE浏览器,地址栏显示http://127.0.0.1:1080/WebTours/,显示Web Tours主页面,左边是用户名、密码和login按钮。在左边输入用户名jojo,密码bean,点击login,如果能够登录,看到航班Flight以及Itinerary航班查询等等,可以判定Web Tous是能正常工作,下面就可以开始录制脚本了。 接下来,关闭刚才打开的浏览器。 开始录制 启动HP LoadRunner。 点击Create/Edit Scripts,HP Virtual User Generator会启动。点击添加新脚本New Script,选择New Single Protocol Script和Web(HTTP/HTML),点击Create创建。 一个对话框会弹出来,Application type,选择Internet Applications(缺省), Program to record, 选择Microsoft Internet Explorer(缺省),URL Address,选择http://127.0.0.1:1080/WebTours/,Working directory工作目录缺省不动。Record into Action,选择Action(缺省), 点击OK,会打开动态的录制工具栏。 接下来按照以下步骤录制: 登录到 HP Web Tours 网站。 在 User Name (用户名)框中输入 jojo,在 Password (密码)框中输入 bean。 单击 Login (登录)。欢迎页面打开。 3 输入航班详细信息。 单击 Flights (航班)。这时将打开 Find Flight (查找航班)页面: ➤ Departure City (出发城市):Denver (丹佛,默认值) ➤ Departure Date (出发日期):保持默认值 (当前日期) ➤ Arrival City (到达城市):Los Angeles (洛杉矶) ➤ Return Date (返回日期):保持默认值 (第二天的日期) ➤ Seating Preference (首选座位):Aisle (靠近过道) 接受其余选项的默认设置并单击 Continue (继续)。这时将打开 Search Results (搜索结果)页面。 4 选择航班。 单击 Continue (继续)接受默认航班选择。 Payment Details (支付明细)页面 打开。 5 输入支付信息并预订机票。 在 Credit Card (信用卡)框中输入 12345678,并在 Exp Date (到期日)框中 输入 06/19。单击 Continue (继续)。这时将打开 Invoice (发票)页面,显示 您的发票。 6 查看航班路线。 单击左窗格中的 Itinerary (路线)。这时将打开 Itinerary (路线)页面。 第 3 课 • 创建脚本 32 7 单击左窗格中的 Sign Off (注销)。 8 在浮动工具栏上单击停止以停止录制。 选择文件 > 保存或单击保存按钮,导航到 scripts 并创 建名为 Tutorial 的新文件夹。在文件名框中输入 basic_tutorial 并单击保存。 配置LoadRunner Generator Linux负载机 为什么要配置Linux负载机? 因为每个负载大约会消耗2-5Mb内存,而Windows系统是个很重的操作系统,运行了很多我们不需要的软件和服务,进行压力和负载测试时,可能会由于资源问题导致负载失真。选择Linux做单独的负载机是正确姿势,唯一的缺陷是测不到一些Windows系统专用的协议,比如WinSocks协议。但如果真用到Windows专有协议,那时再切换到Windows Load Generator。 其中Linux负载安装部分略繁琐,可以将这些步骤写为bash脚本,一次执行完成。 安装loadRunner Generator for Linux 将下载好的loadRunner Generator for Linux上传到Linux系统,例如CentOS 7。 可以使用ssh连接工具例如MobaXterm,或者puTTy。 在root用户下面使用命令修改之前默认的主机名(例如可能是bogon什么的),例如修改为'vugen001', 如果有多台负载发生器,建议为每一台负载发生器都设置不同的主机名,例如'vugen002', 'vugen003', 'vugen004', 'vugen005', 'vugen006'。除此之外,建议使用timedatectl命令设置时区和网络时间同步,将所有的负载发生器的主机时间都设置为同一时间。 准备工作 su 切换到root用户 hostnamectl set-hostname vugen001 timedatectl set-timezone "Asia/Shanghai" timedatectl set-ntp true 关掉防火墙,并设置为开机禁止启动防火墙。 su root systemctl stop firewalld; systemctl disable firewalld.service 或者 systemctl stop firewalld; systemctl disable firewalld 关闭防火墙和禁止开机启动防火墙。 安装过程,本节全部root执行 可以建一个/home/vugen/目录,将文件拷贝到该目录/ 注意上传时要保证左边的文件夹浏览处在/home/vugen目录 cd /home mkdir ./vugen 或者是mkdir vugen cd /home/vugen mv 【原来的iso文件名】 loadrunner-11-load-generator.iso, 改一下文件名,不然文件名中间的空格会 变成slash,不利于脚本自动化。 cd /usr/etc/ mkdir loadrunner cd /home/vugen mount -o loop loadrunner-11-load-generator.iso /usr/etc/loadrunner cd /usr/etc/loadrunner/Linux ./installer.sh 接下来页面会显示是否继续安装提示,选择项都为是(n, a, i, f)即可 接下来的两步要联网执行。 yum -y install glibc.i686 //yum whatprovides ld-linux.so.5 yum -y install compat-libstdc++-33-3.2.3-72.el7.i686 这个名字可以改变,如果要改变,以下命令中也要相应替换掉修改过的用户名。 cd /opt/HP/HP_LoadGenerator/ chmod 644 env.csh vim env.csh 在最开始加入 #!/bin/csh 以下192.168.1.19是LoadRunner Controller地址,根据环境不同,要按需修改为您的Controller地址。 最后一行加入 setenv DISPLAY 192.168.1.19:0.0 并且在最后一行加一个回车换行,保存退出 执行下面四条命令,添加一个LoadRunner Generator的用户名,例如higkoo, 并为这个用户配置执行环境 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 执行 vim /etc/csh.cshrc 在最后一行添加 source /opt/HP/HP_LoadGenerator/env.csh 然后执行 vim /etc/security/limits.conf 并添加以下内容 * soft nproc 65535 * hard nproc 65535 * soft nofile 65535 * hard nofile 65535 存盘退出 vim /etc/sysctl.conf 添加以下内容 fs.file-max=65535 存盘退出 执行命令 reboot 重启之后,root登录 执行 ulimit -n 应该显示65535,或者ulimit -a, 在open files (-n) 一项应该显示65535 切换到higkoo启动LoadGenerator 切换到刚刚建立的higkoo用户 su higkoo cd /opt/HP/HP_LoadGenerator/bin ./verify_generator 应该出现以下响应。 也可以执行./verify_generator -v 打印出更详细的信息。 执行./m_daemon_setup -install 用下面的命令检查LoadGenerator是否正常启动运行 ps -aux |grep m_agent_daemon netstat -naop|grep 54345 查看进程 /opt/HP/HP_LoadGenerator/bin/m_daemon_setup stat 启动负载机必须在指定添加到用户下,例如本例的higkoo用户执行。 root登录以后执行以下命令 su higkoo cd /opt/HP/HP_LoadGenerator/bin ./verify_generator -v ./m_daemon_setup -install 或者执行 ./m_daemon_setup start 建议用-install参数,当user退出登录以后agent依然会运行 这样在LoadRunner Controller里面就可以添加Linux负载机了。 配置开机启动LoadGenerator 为Linux负载机添加开机启动服务, 在root用户下执行。以下命令。 注意该方式为不使用标准systemd服务。建议使用标准systemd服务。 vim /etc/init.d/vugen 在文件中添加以下内容 #!/bin/bash # chkconfig: 345 99 01 # description: auto start vugen using user: higkoo # case "$1" in 'start') su - higkoo -c "cd /opt/HP/HP_LoadGenerator/bin ; ./verify_generator -v ; ./m_daemon_setup -install";; 'stop') su - higkoo -c "cd /opt/HP/HP_LoadGenerator/bin ; ./verify_generator -v ; ./m_daemon_setup stop";; esac 存盘退出,然后执行 chmod +x /etc/init.d/vugen chkconfig --add vugen systemctl daemon-reload systemctl enable vugen reboot 以后Vugen就可以开机启动,并且可以用 systemctl start vugen systemctl status vugen systemctl stop vugen systemctl enable vugen systemctl disable vugen 来查看和使用LoadRunner Generator的服务了。 在LR Controller中添加Linux负载机 启动LoadRunner Controller,点击下图的图标,添加负载机 填入负载机的IP地址,Platform选择UNIX,点击More,打开折叠(首次使用时会折叠下面的配置界面)。在Unix Environment Tab里,Shell setting部分,勾选Don't use RSH,点击OK。 负载机添加完成,刚刚添加的Status是Down。 点击右边的Connet,测试一下负载机。如果Status是Ready,说明负载机已经连接成功。可以添加多个Linux负载机,每台负载机负载生成一部分负载。 配置LoadRunner Windows负载机 Windows 7的安装环境,一般比较复杂,因此安装LoadRunner负载机有一定的成功率。但是一旦失败,就比较麻烦,要执行一大堆命令来解决安装权限导致的执行错误。 安装Windows负载机 方法一,成功率高 1:首先使用虚拟光驱挂载LR的ISO文件 2:安装.NET Framework 3.5 (如果机器已经有就跳过),路径:V:lrunnerCommondotnet35_sp1dotnetfx35_sp1.exe 3:运行V:Setup.exe 4:点击Load Generator(第二个),一路next,(中途会弹出一个窗口,选择loadrunner,不要选择Performance Center) 方法二,有时会安装失败,再尝试方法一 1:首先使用虚拟光驱挂载LR的ISO文件 2:安装.NET Framework 3.5 (如果机器已经有就跳过),路径:V:lrunnerCommondotnet35_sp1dotnetfx35_sp1.exe 3:安装LoadGenerator,一直next V:Additional ComponentsStandalone ApplicationsSetupLoadGenerator.exe 中途会弹出一个窗口,选择loadrunner,不要选择Performance Center) 配置和加载Windows负载机 配置Windows负载机 运行LoadRunner Agent Runtime Settings 选择Manual login to this machine. 在Contoller中添加Windows负载机 参照添加Linux负载机,输入IP地址,操作系统选择Windows. 安装LoadRunner Server Monitor for Linux 配置Linux Server本地资源监控 安装Nmon for Linux # Get Root sudo su # Download NMON archive cd /tmp wget http://sourceforge.net/projects/nmon/files/mob.tar.gz # Untar archive tar -xzvf nmon16e_mpginc.tar.gz # Copy nmon file cp nmon_x86_64_centos7 /usr/local/bin/ chmod a+x /usr/local/bin/nmon_x86_64_centos7 # Create symbolic link ln -s /usr/local/bin/nmon_x86_64_centos7 /usr/local/bin/nmon # tidy up tmp rm -f nmon_* 数据收集策略和nmon常用指令参数 数据采集策略 何时采集 一般建议测试时才启动nmon,平时不要启动它。 如何收集数据 收集数据到文件里,格式为CSV文件。 注意:一个详细的图表需要300到600个数据,因此测量时间和间隔要根据测试场景去设置,保证采集到数据颗粒度足够细足够多,但又不影响系统性能,即对系统的性能影响可以忽略。 nmon常用指令参数 nmon不带参数是live on screen监控,按q键退出当前live on screen监控 nmon -f 将测量数据和配置数据写到文件中,生成的文件格式是CSV格式。 -s采集间隔秒数 -c 采集多少次 nmon -f -s "seconds" -c "count" 每隔多少秒采集一次数据共采集多少次 使用nmon analyzer分析监控数据 通过sort命令可以将nmon结果文件转换为csv文件: # sort -A hostname_timeSeries.nmon> hostname_timeSeries.nmon.csv nmon Analyzer是IBM的一个开源Excel工具,使用VBA写成。下载链接 https://www.ibm.com/developerworks/community/wikis/home?lang=zh#!/wiki/Power%20Systems/page/nmon_analyser (1)打开nmonanalyser.xls工具; (2)调整excel宏安全性:工具-宏-安全性 (如果报告以下宏的安全级别太高错误,则在“工具-- 宏--安全性”里把级别调低,然后重新打开文件) (3)修改完后,确定-关闭nmonanalyser.xls,重新打开; (4)点击Analysernmon data 按钮,选择下载下来的.csv文件,然后就会转化成.excel文件,生成图形化的文件 大家可以根据自己所采集到的结果分析系统的情况。点击在EXCEL工具下的标签可以看见不同的性能报告,参考如下: sheet名称 sheet含义 SYS_SUMM 系统汇总,蓝线为cpu占有率变化情况,粉线为磁盘IO的变化情况; AAA 关于操作系统以及nmon本身的一些信息; BBBB 系统外挂存储容量以及存储类型; BBBC 系统外挂存储位置、状态以及描述信息; BBBD 磁盘适配器信息;(包含磁盘适配器名称以及描述) BBBE 包含通过lsdev命令获取的系统设备及其特征,显示vpaths和hdisks之间的映射关系; BBBG 显示磁盘组详细的映射关系; BBBL 逻辑分区(LPAR)配置细节信息; BBBN 网络适配器信息; BBBP vmtune, schedtune, emstat和lsattr命令的输出信息; CPUnn 显示执行之间内CPU占用情况,其中包含user%、sys%、wait%和idle%; CPU_ALL 所有CPU概述,显示所有CPU平均占用情况,其中包含SMT状态; CPU_SUMM 每一个CPU在执行时间内的占用情况,其中包含user%、sys%、wait%和idle%; DGBUSY 磁盘组每个hdisk设备平均占用情况; DGREAD 每个磁盘组的平均读情况; DGSIZE 每个磁盘组的平均读写情况(块大小); DGWRITE 每个磁盘组的平均写情况; DGXFER 每个磁盘组的I/O每秒操作; DISKBSIZE 执行时间内每个hdisk的传输块大小; DISKBUSY 每个hdisk设备平均占用情况; DISKREAD 每个hdisk的平均读情况; DISKWRITE 每个hdisk的平均写情况; DISKXFER 每个hdisk的I/O每秒操作; DISKSERV 本sheet显示在每个收集间隔中hdisk的评估服务时间(未响应时间) DISK_SUMM 总体disk读、写以及I/O操作; EMCBSIZE/FAStBSIZE 执行时间内EMC存储的传输块大小; EMCBUSY/FAStBUSY EMC存储设备平均占用情况; EMCREAD/FAStREAD EMC存储的平均读情况; EMCWRITE/FAStWRITE EMC存储的平均写情况; EMCXFER/FAStXFER EMCSERV/FAStSERV ESSBSIZE 本sheet记录在系统中每个vpaths下读写操作的平均数据传输大小(blocksize) Kbytes ESSBUSY 本sheet记录使用ESS系统的每个vpaths下的设备繁忙情况 ESSREAD 本sheet记录在系统中每个vpaths下读取操作的 data rate (Kbytes/sec) ESSWRITE 本sheet记录在系统中每个vpaths下写入操作的 data rate (Kbytes/sec) ESSXFER 本sheet记录在系统中每个vpaths下每秒的IO操作 ESSSERV 本sheet显示在每个收集间隔中vpaths的评估服务时间(未响应时间) FILE 本sheet包含nmon内核内部的统计信息的一个子集,跟sar报告的值相同 FRCA IOADAPT 对于BBBCsheet每个IO适配器列表,包含了数据传输速度为读取和写入操作(千字节/秒)和I / O操作执行的总数量 JFSFILE 本sheet显示对于每一个文件系统中,在每个间隔区间正在被使用的空间百分比 JFSINODE 本sheet显示对于每一个文件系统中,在每个间隔区间正在被使用的inode百分比 LARGEPAGE 本图表显示Usedpages和Freepages随着时间的变化 LPAR MEM 本sheet主图上显示空闲实存的数量 MEMUSE 除 %comp参数外,本sheet包含的所有项都和vmtune命令的报告中一样 MEMNEW 本sheet显示分配的内存片信息,分三大类:用户进程使用页,文件系统缓存,系统内核使用页 NET 本sheet显示系统中每个网络适配器的数据传输速率(千字节/秒) NETPACKET 本sheet统计每个适配器网络读写包的数量;这个类似于netpmon –O dd 命令 NFS sheets PAGE 本sheet统计相关页信息的记录 PROC 本sheet包含nmon内核内部的统计信息。其中RunQueue和Swap-in域是使用的平均时间间隔,其他项的单位是比率/秒 PROCAIO 本sheet包含关于可用的和active的异步IO进程数量信息. TOP UARG WLM sheets ZZZZ 本sheet自动转换所有nmon的时间戳为现在真实的时间,方便更容易的分析 配置oracle DB专用OSWbb监控工具 概述及使用(参考文档如下) 30-Jan-15 汪伟华 1.0 Initial SHOUG-OSWatcher-OSW监控工具.docx 配置Linux远程资源监控 使用Linux远程资源监控的优点是不需要在分析数据时再去导入、调整和融合资源监控数据。但是缺点也很明显,在压测和负载测试时,可能会因为Server太忙导致远程资源监控失败。这里仅仅给出配置的思路。目前还未使用该方法进行系统测试。 登录Linux 启动MobaXterm(或者其他SSH连接工具),登录Linux服务器。 切换到root用户,命令一般是su,按照提示输入根用户密码。或者从SSH工具以root用户登录也可以。 安装rstatd 首先要查看系统是否开启了rpc服务,通过命令rpcinfo -p来查看。如果没有rstatd进程,说明还没有安装。接下来要安装rstatd 下载rpc.rstatd-4.0.1.tar.gz,下载网站(通常需翻墙)https://sourceforge.net/projects/rstatd/ 在/Home目录下面建一个新目录,比如LoadRunnerStaff。将下载好的rpc.rstatd-4.0.1.tar.gz文件上传到该目录。 cd /Home/LoadRunnerStaff 解压rpc.rstatd-4.0.1.tar.gz文件,命令为tar -xvzf rpc.rstatd-4.0.1.tar.gz 进入到rpc.rstatd-4.0.1/目录下,运行./configure 编译,使用命令make, 安装,使用命令 make install 启动rstatd,使用命令rpc.rstatd,然后使用rpcinfo -p查看是否有rstatd进程。看下图,启动了四个rstatd进程,说明该服务以及各启动了。 yum -y install portmap 重启端口映射服务portmap /etc/rc.d/init.d/portmap start yum -y install rsh-server 安装xinetd yum -y install xinetd [root@localhost /]# vim rlogin --编辑disable=no,保存 [root@localhost /]# vim rsh --编辑disable=no,保存 [root@localhost /]# vim rexec --编辑disable=no,保存 [root@localhost /]# rpc.rstatd start 启动rsh systemctl start rsh.socket systemctl start rexec.socket systemctl start rlogin.socket systemctl enable rsh.socket systemctl enable rexec.socket systemctl enable rlogin.socket 检查是否启动: rsh server 监听和TCP 是514。 # netstat -an |grep 514 tcp 0 0 0.0.0.0:514 0.0.0.0:* LISTEN