关于LR监视Windows和linux的说明
一 windows
1 监视连接前的准备工作
首先保证被监视的windows系统开启以下二个服务Remote Procedure Call(RPC) 和Remote Registry Service (这里具体在那里开起服务就不说了)。
被监视的WINDOWS机器:右击我的电脑,选择管理->共享文件夹->共享在这里面要有C$这个共享文件夹,(要是没有自己手动加)。
然后保证在安装LR的机器上使用运行.输入\\被监视机器IP\C$ 然后输入管理员帐号和密码,如果能看到被监视机器的C盘了,就说明你得到了那台机器的管理员权限,可以使用LR去连接了。
说明: LR要连接WINDOWS机器进行监视貌似要有管理员帐号和密码才行。
2 用LR监视windows的步骤
(这里就不详细说明了,只要在窗口中右击鼠标选择Add Measurements就可以了)
二 linux
1 准备工作
首先,监视Linux一定要有rstatd这个守护进程,有的Linux版本里也有可能是rpc.rstatd这里只是名字不同而已,功能是一样的。
一般来说LINUX需要下载一个包才有这个服务,包名字是rpc.rstatd-4.0.1.tar.gz. 这是一个源码,需要编译。
下载并安装rstatd
tar -ivhrpc.rstatd-4.0.1.tar.gz
./configure —配置
make —编译
make install —安装
rpc.rstatd —启动rstatd进程
配置rstatd 目标守护进程是xinetd,它的主配置文件是/etc/xinetd.conf 里面内容是
只有基本信息
# Simple configuration file for xinetd
#
# Some defaults, and include /etc/xinetd.d/
defaults
{
instances = 60
log_type = SYSLOG authpriv
log_on_success = HOST PID
log_on_failure = HOST
cps = 25 30
}
includedir /etc/xinetd.d
里面内容的意思在这里就不说了!网上有具体解释,
我们这里需要修改的是/etc/xinetd.d/下的三个conf文件 rlogin ,rsh,rexec 这三个配置文件,打这三个文件里的disable = yes都改成 disable = no ( disabled 用在默认的 {} 中禁止服务)或是把# default: off都设置成 on 这个的意思就是在xinetd启动的时候默认都启动上面的三个服务!(由于貌似用ps ax不能看到rlogin ,rsh ,rexec这三个进程是否开启,所以使用default: on,因为rstatd和xinetd这二个服务是否启动在ps ax里是看的到的)。
然后你在保证Linux机器上的进程里有rstatd和xinetd这二个服务就可以用LR去监视了。
几点小的技巧:
检查是否启动: rsh server 监听和TCP 是514。
[root@mg04 root]# netstat -an |grep 514
tcp 0 0 0.0.0.0:514 0.0.0.0:* LISTEN
如果能看到514在监听说明rsh服务器已经启动。
检查是否启动: rstatd
输入命令: rpcinfo -p
如果能看到
程序版本协议端口
*** **** udp 741 rstatd
那就说明rstatd服务启动了,(当然这里也可以用ps ax代替)。
几点说明: 1) 在实际操作中有可能会碰到一些问题,这里还有一份网上的关于LR连接时候可能出错的情况,详细请见下面;
2) 网上也有人说在LR的资源窗口中右击鼠标出现的Add Measurements选项是暗淡的,我操作的时候没碰到,这里可能是LR没有完全安装的原因;
3) 由于条件的限制,(没有UNIX环境)所以这次没有遇及UNIX的监控,但网上也有这方面的资料,说明的也比较清楚,在这里就不再重复了;
4) 由于本人能力有限,只是把网上的内容归纳了一下,说的不对的地方请高人指点,我会更新内容。
LoadRunner中服务器资源监控器疑难解答
要监控服务器计算机上的资源,必须能够连接到该计算机。如果监控失败,并且LoadRunner找不到指定的服务器,请确认指定的服务器是否可用。在Controller或优化控制台计算机命令行中键入ping<server_name>,执行“ping”操作。
验证可以访问该计算机后,请查看下表中有关监控器疑难解答的其他提示。
问题 | 解决方案 |
无法监控其他域中的Windows计算机,或者“访问被拒绝”。 | 要获得对远程计算机的管理权限,请在命令提示符下执行以下命令: %net use \\<计算机名>/用户:[<域>\<远程计算机名>] 提示输入密码时,输入远程计算机的密码。 |
无法监控NT/Win 2000计算机(发出一条错误消息:“未找到计算机名”或“无法连接到主机”) | 要监控的NT/Win 2000计算机仅允许具有管理员权限的用户进行监控。要允许非管理员用户进行监控,必须授予用户对特定文件和注册表项的读取权限(Microsoft技术说明编号Q158438)。需要执行下列步骤: a.使用浏览器或文件管理器,授予用户对下列项的读取权限: %windir%\system32\PERFHxxx.DAT 其中xxx是系统的基本语言ID, b.使用REGEDT32,授予用户对下列项的读取权限: c.使用REGEDT32,至少授予用户对下列项的读取权限: |
无法从NT计算机监控某些Win 2000计数器。 | 在Win 2000计算机上运行Controller或优化控制台。 |
某些Windows默认计数器生成错误 | 删除有问题的计数器,并使用“添加度量”对话框添加相应计数器。 |
无法从被监控的计算机上获得SQLServer 6.5版的性能计数器。 | 这是SQL Server 6.5版的一个错误。解决方法为:在被监控的计算机上使用regedt32,授予用户对以下注册表项的读取权限: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer (Microsoft技术说明编号Q170394) |
选定度量未显示在图中。 | 确保已注册显示文件和online.exe。要在不执行完全安装的情况下注册监控器的dll,请运行LoadRunner\bin中的set_mon.bat批处理文件。 |
监控Windows计算机时,图中不显示任何度量。 | 检查内置的Windows性能监控器。如果该监控器不能正常工作,则可能是通信设置有问题。 |
监控UNIX计算机时,图中不显示任何度量。 | 确保rstatd正在UNIX计算机上运行(请参阅“系统资源监控”)。 |
无法监控下列Web服务器之一:MS IIS、MS ASP或ColdFusion | 请参阅上面的问题“无法监控Windows计算机”。 |
无法监控WebLogic (JMX)服务器 | 打开<LoadRunner根文件夹>\dat\monitors\WebLogicMon.ini文件,并搜索: |
二、监控linux
1 准备工作
可以通过两种方法验证服务器上是否配置了rstatd守护程序:
①使用rup命令,它用于报告计算机的各种统计信息,其中就包括rstatd的配置信息。使用命令rup 10.130.61.203,此处10.130.61.203是要监视的linux/Unix服务器的Ip,如果该命令返回相关的统计信息。则表示已经配置并且激活了rstatd守护进程;若未返回有意义的统计信息,或者出现一条错误报告,则表示rstatd守护进程尚未被配置或有问题。
②使用find命令
#find / -name rpc.rstatd,该命令用于查找系统中是否存在rpc.rstatd文件,如果没有,说明系统没有安装rstatd守护程序。
如果服务器上没有安装rstatd程序(一般来说LINUX都没有安装),需要下载一个包才有这个服务,包名字是rpc.rstatd-4.0.1.tar.gz. 这是一个源码,需要编译,下载并安装rstatd(可以在[url]http://sourceforge.net/projects/[/url]rstatd<wbr>这个地址下载)
下载后,开始安装,安装步骤如下:
tar -xzvf rpc.rstatd-4.0.1.tar.gz cd rpc.rstatd-4.0.1/ ./configure —配置操作 make —进行编译 make install —开始安装 rpc.rstatd —启动rstatd进程 |
2)安装完成后配置rstatd 目标守护进程xinetd,它的主配置文件是/etc/xinetd.conf,它里面内容是一些如下的基本信息:
# # xinetd.conf # # Copyright (c) 1998-2001 SuSE GmbH Nuernberg, Germany. # Copyright (c) 2002 SuSE Linux AG, Nuernberg, Germany. # defaults { log_type = FILE /var/log/xinetd.log log_on_success = HOST EXIT DURATION log_on_failure = HOST ATTEMPT #only_from = localhost instances = 30 cps = 50 10 # # The specification of an interface is interesting, if we are on a firewall. # For example, if you only want to provide services from an internal # network interface, you may specify your internal interfaces IP-Address. # # interface = 127.0.0.1 } includedir /etc/xinetd.d |
我们这里需要修改的是/etc/xinetd.d/下的三个conf文件 rlogin,rsh,rexec这三个配置文件,打这三个文件里的disable = yes都改成 disable = no ( disabled 用在默认的 {} 中禁止服务)或是把# default: off都设置成 on 这个的意思就是在xinetd启动的时候默认都启动上面的三个服务!
说明:我自己在配置时,没有disable = yes这项,我就将# default: off改为:default: on,重启后(cd /etc/init.d/ ./xinetd restart)通过netstat -an |grep 514查看,没有返回。然后,我就手动在三个文件中最后一行加入disable = no,再重启xinetd,再使用netstat -an |grep 514查看,得到tcp 0 0 0.0.0.0:514 0.0.0.0:* LISTEN结果,表明rsh服务器已经启动。
只要保证Linux机器上的进程里有rstatd和xinetd这二个服务就可以用LR去监视了。
两点小的技巧:
①检查是否启动: rsh server 监听的TCP 是514。
[root@mg04 root]# netstat -an |grep 514
tcp 0 0 0.0.0.0:514 0.0.0.0:* LISTEN
如果能看到514在监听说明rsh服务器已经启动。
②检查是否启动: rstatd
输入命令: rpcinfo -p
如果能看到类似如下信息:
程序版本协议端口
100001 5 udp 937 rstatd
100001 4 udp 937 rstatd
100001 3 udp 937 rstatd
100001 2 udp 937 rstatd
100001 1 udp 937 rstatd
那就说明rstatd服务启动了,(当然这里也可以用ps ax代替)
③重起xinetd方法:
在suse linux如下操作:
cd /etc/init.d/
./xinetd restart
看到网上有的地方说使用如下命令:
# service xinetd reload
# /sbin/service xinetd rstart
不知道是在什么系统用的。
④安装rsh,和rsh-server两个服务包方法
a. 卸载rsh
# rpm –q rsh----------查看版本号
# rpm -e 版本号---------卸载该版本。
b.安装
# rpm –ivh rsh-0.17-14.i386.rpmrsh-server-0.17-14.i386.rpm
⑤在启动rpc.rstatd时,会报错“Cannot register service: RPC: Unable toreceive;errno = Ction refused”。
解决方法如下:
# /etc/init.d ./portmap start
# /etc/init.d ./nfs start
然后再次启动rpc.rstatd就好了。
最后,在controller中,将UNIX resources拖放到右边窗口里面,右击鼠标选择Add Measurements,添加被监控linux的IP地址,然后选择需要监控的指标就可以了。
三、监控UNIX
lr监控UNIX,UNIX先启动一rstatd服务
以下是在IBM AIX系统中启动rstatd服务的方法:
1、使用telnet以root用户的身份登录入AIX系统
2、在命令行提示符下输入:vi/etc/inetd.conf
3、查找rstatd,找到
#rstatd sunrpc_udp udp wait root/usr/sbin/rpc.rstatd rstatd 100001 1-3
4、将#去掉
5、:wq保存修改结果
6、命令提示符下输入:refresh –s inetd 重新启动服务。
这样使用loadrunner就可以监视AIX系统的性能情况了。
注:在HP UNIX系统上编辑完inetd.conf后,重启inetd服务需要输入inetd -c
UNIX上也可以用rup命令查看rstatd程序是否被配置并激活
若 rstatd 程序已经运行,重启时,先查看进程 ps -ef |grep inet ,然后杀掉进程,再 refresh –s inetd 进行重启。