功能測(cè)試:一次網(wǎng)管測(cè)試
摘要現(xiàn)網(wǎng)在出現(xiàn)故障或者出現(xiàn)大量告警時(shí)候,網(wǎng)管系統(tǒng)沒(méi)有及時(shí)的向上級(jí)網(wǎng)管站發(fā)出告警,導(dǎo)致我們不能第一時(shí)間發(fā)現(xiàn)問(wèn)題,解決問(wèn)題。如何在實(shí)驗(yàn)室環(huán)境中模擬、重現(xiàn)出現(xiàn)網(wǎng)問(wèn)題,以及解決問(wèn)題?本文主要對(duì)實(shí)驗(yàn)室如何模擬現(xiàn)
摘要
現(xiàn)網(wǎng)在出現(xiàn)故障或者出現(xiàn)大量告警時(shí)候,網(wǎng)管系統(tǒng)沒(méi)有及時(shí)的向上級(jí)網(wǎng)管站發(fā)出告警,導(dǎo)致我們不能第一時(shí)間發(fā)現(xiàn)問(wèn)題,解決問(wèn)題。如何在實(shí)驗(yàn)室環(huán)境中模擬、重現(xiàn)出現(xiàn)網(wǎng)問(wèn)題,以及解決問(wèn)題?本文主要對(duì)實(shí)驗(yàn)室如何模擬現(xiàn)網(wǎng)環(huán)境的測(cè)試方法和手段進(jìn)行了描述。
適讀人群
測(cè)試設(shè)計(jì)師、測(cè)試經(jīng)理、質(zhì)量保證主管、項(xiàng)目經(jīng)理
模型分析
網(wǎng)管站主要處理三種方式的告警:
1. 主機(jī)資源類告警(數(shù)據(jù)庫(kù)資源類告警)
2. 核心網(wǎng)元實(shí)時(shí)告警(采用snmp協(xié)議trap發(fā)送到網(wǎng)管站)
3. 核心網(wǎng)元數(shù)據(jù)文件告警(網(wǎng)管站采用ftp協(xié)議進(jìn)行告警文件采集)
經(jīng)過(guò)分析系統(tǒng)出現(xiàn)告警遺漏是網(wǎng)元告警文件模式,現(xiàn)網(wǎng)中配置了大量的關(guān)于該類告警的規(guī)則,每來(lái)一條記錄都會(huì)觸發(fā)規(guī)則校驗(yàn)。因此主機(jī)采集和數(shù)據(jù)庫(kù)采集不作為本次關(guān)注的重點(diǎn),只要發(fā)些背景壓力即可。
系統(tǒng)大概有15個(gè)網(wǎng)元,有5臺(tái)虛擬機(jī)供測(cè)試使用。因此在每臺(tái)機(jī)器上面部署3個(gè)目錄來(lái)模擬3個(gè)網(wǎng)元產(chǎn)生告警文件。
使用loadrunner模擬15個(gè)網(wǎng)元并發(fā)發(fā)起trap告警請(qǐng)求。
在5臺(tái)虛擬機(jī)上部署HostAgent來(lái)完成主機(jī)信息采集,在1臺(tái)數(shù)據(jù)庫(kù)主機(jī)上面部署dbagent.23456783.2模擬網(wǎng)元產(chǎn)生告警文件供網(wǎng)管進(jìn)行采集。
通過(guò)獲得現(xiàn)網(wǎng)網(wǎng)元產(chǎn)生的告警文件,進(jìn)行修改,為了增加壓力,使里面的數(shù)據(jù)產(chǎn)生的告警增多,編寫Shell動(dòng)態(tài)生成這些文件。如果每次都發(fā)送相同的內(nèi)容,后臺(tái)網(wǎng)管站會(huì)認(rèn)為是重復(fù)告警,因此我們腳本需要完成下面的功能:
1. 根據(jù)系統(tǒng)時(shí)間修改告警文件后綴
2. 在達(dá)到告警清除時(shí)間后能夠進(jìn)行判讀是否需要生成告警文件。
示例代碼:
```
!/bin/bash
olddate"quot"
runi0
while true; do
find "/root/data1/" -name "mpiag*" > result.txt
count$(wc -l result.txt|awk '{print $1}')
if [ $count -gt 1 ]; then
echo "have"
else
runi$runi 1
filename$(find "./tmp/" -name "mpiag*")
arr(${filename// / })
arr1(${arr//// })
for i in ${arr1[@]}; do
filename$id
done
echo "fielname$filename"
arr2(${filename//_/ })
for i in ${arr2[@]}; do
olddate$id
done
newdate$(date %Y%m%d%H%M'00')
rename $olddate $newdate ./tmp/*
cp -r ./tmp/* /root/data1/
echo $runi
fi
sleep 500
done
```
主機(jī)和DB信息采集
主機(jī)采集和DB信息采集使用真實(shí)程序完成,如果需要模擬大批量主機(jī)信息采集,需要開發(fā)相應(yīng)的擋板完成。