LoadRunner監控Linux與Windows方法
覺得這篇文章考慮的很全面,文章的出處不太清楚,感謝作者分享!
PS:監控windows伺服器需要開啟伺服器上的Computer Browser、Server、Remote Registry、Remote Procedure Call (RPC) Locator、Remote Procedure Call (RPC)五個服務。
一、監控windows系統:
1、監視串連前的準備工作
1)進入被監視windows系統,開啟以下二個服務Remote Procedure Call(RPC) 和Remote Registry Service (開始—)運行 中輸入services.msc,開啟對應服務即可)。
2)在被監視的WINDOWS機器上:右擊我的電腦,選擇管理->共用資料夾->共用 在這裡面要有C$這個共用資料夾 (要是沒有自己手動加上)。
3)在安裝LR的機器上,開始—》運行,輸入 \\被監視機器IP\C$ 然後輸入管理員帳號和密碼,如果能看到被監視機器的C盤了,就說明你得到了那台機器的管理員權限,可以使用LR去串連了。(LR要串連WINDOWS機器進行監視要有管理員帳號和密碼才行。)
問題:在執行步驟3)時,輸入 \\被監視機器IP\C$,出現不能以administrator身份訪問被監控系統(若採用這種方式用LR對其監控的話,會提示:“找不到網路路徑”)的情況,現象就是使用者名稱輸入框是灰色的,並且預設使用者是guest。
解決辦法:這是安全性原則的設定問題(管理工具 -> 本地安全性原則 -> 安全選項 ->“網路訪問:本地帳戶的共用和安全模式”)。預設情況下,XP的訪問方式是“僅來賓”的方式,如果你訪問它,當然就固定為Guest來訪問,而guest賬戶沒有監控的許可權,所以要把訪問方式改為“經典”模式,這樣就可以以administrator的身份登陸了。修改後,再次執行步驟3),輸入管理使用者名和密碼,就可以訪問被監控機器C盤了。
若這樣都不行的話(可能是其它問題引起的),那隻好採取別的方法了。在伺服器的機子上,通過windows內建的“效能日誌和警報”下的“計數器日誌”中新增加一個監控日誌(管理工具—)效能—)效能記錄檔及警示),配置好日誌,也能監控伺服器的cpu、memory、disk等計數器。當然,這種方法就不是用LR來監控了。
2、用LR監視windows的步驟
在controller 中,Windows Resources視窗中右擊滑鼠選擇Add Measurements,添加被監控windows的IP地址,選擇所屬系統,然後選擇需要監控的指標就可以開始監控了。
二、監控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(可以在http://sourceforge.net/projects/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.rpm rsh-server-0.17-14.i386.rpm
⑤在啟動rpc.rstatd時,會報錯“Cannot register service: RPC: Unable to receive;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進行重啟。