在使用loadrunner来获得被测试linux服务器(Centos系统)的系统资源使用情况时,网上一般介绍使用rstatd来获取linux资源信息,实际在使用中,发现没法在centos系统上面监控到网卡的流量(Incoming packets、outgoing packets的值无法取得,其他的倒是可以),原来一直使用替代的办法,安装nload 0.7.2来监控网络流量,nload在监控大流量时会出现错误(流量为负)而且进行数据分析的时候比较麻烦。
另外一个方法就是使用loadrunner的snmp在线监控器获得网络流量,得到的值是网络的平均字节流量和最大字节流量。
一、在被测试服务器上面安装snmp服务
1.yum install net-snmp -y或者安装net-snmp的rpm包
2.修改snmpd.conf文件
Vi /etc/snmp/snmpd.conf
A、修改默认的community string
com2sec notConfigUser default public
将public修改为你才知道的字符串(如果这里改了,需要在<loadRunnerrootfolder>/dat/monitors/snmp.cfg文件里更改snmp_community_name)
B、把下面的#号去掉
#view mib2 included .iso.org.dod.internet.mgmt.mib-2 fc
C、把下面的语句
access notConfigGroup "" any noauth exact systemview none none
改成:
access notConfigGroup "" any noauth exact mib2 none none
如果不做B、C的操作,也可以将
view systemview included .1.3.6.1.2.1.1
view systemview included .1.3.6.1.2.1.25.1.1
修改为:
view systemview included .1.3.6.1.2.1.1
view systemview included .1.3.6.1.2.1.2
view systemview included .1.3.6.1.2.1.25.1.1
MIB-2里相关网络流量的interface组是.1.3.6.1.2.1.2
3.重启snmpd
service snmpd restart
4.确保Linux的iptables防火墙对流量监控服务器开放了udp 161端口的访问权限
可以编辑 vi /etc/sysconfig/iptables文件 并重启iptables服务
二、loadrunner通过system Resource下的snmp来获得网络流量
主要就是取mib-2库里面的ifInOctets 输入字节数、ifOutOctets 输出字节数
(服务器有几个网络接口就会有几个)
MIB-2里相关网络流量的是interface组
主要管理如下信息:
ifIndex 端口索引号
ifDescr 端口描述
ifType 端口类型
ifMtu 最大传输包字节数
ifSpeed 端口速度
ifPhysAddress 物理地址
ifOperStatus 操作状态
ifLastChange 上次状态更新时间
*ifInOctets 输入字节数
*ifInUcastPkts 输入非广播包数
*ifInNUcastPkts 输入广播包数
*ifInDiscards 输入包丢弃数
*ifInErrors 输入包错误数
*ifInUnknownProtos 输入未知协议包数
*ifOutOctets 输出字节数
*ifOutUcastPkts 输出非广播包数
*ifOutNUcastPkts 输出广播包数
*ifOutDiscards 输出包丢弃数
*ifOutErrors 输出包错误数
ifOutQLen 输出队长
其中,*号标识的是与网络流量有关的信息。