欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

存儲器中RAID類型的IO設(shè)置IP及時間的方法與流程

文檔序號:12271154閱讀:1366來源:國知局

技術(shù)領(lǐng)域

本發(fā)明涉及到存儲器測試技術(shù),具體的說是存儲器中RAID類型的IO設(shè)置IP及時間的方法。



背景技術(shù):

存儲器(Memory)是現(xiàn)代信息技術(shù)中用于保存信息的記憶設(shè)備。計算機中全部信息,包括輸入的原始數(shù)據(jù)、計算機程序、中間運行結(jié)果和最終運行結(jié)果都保存在存儲器中。它根據(jù)控制器指定的位置存入和取出信息。有了存儲器,計算機才有記憶功能,才能保證正常工作。計算機中的存儲器按用途存儲器可分為主存儲器(內(nèi)存)和輔助存儲器(外存)。

目前隨著IT領(lǐng)域技術(shù)的不斷發(fā)展,存儲器作為大數(shù)據(jù)時代的主流產(chǎn)物,也隨著涉足領(lǐng)域的逐漸增多,市場存儲器需求量逐漸增大。公司存儲器出貨量越來越大,能夠按時的達(dá)成生產(chǎn)排配準(zhǔn)時出貨,不但關(guān)系到公司的信譽也代表一個公司的生產(chǎn)能力,同時也影響著客戶的滿意度。企業(yè)注重生產(chǎn)速度的同時也要求品質(zhì)有保障,對于研發(fā)及生產(chǎn)的測試要求越來越高。無論是研發(fā)段還是生產(chǎn)線的測試,產(chǎn)品的測試能夠高效的完成是至關(guān)重要的一個環(huán)節(jié)。

針對存儲器的測試,進(jìn)行自動化的切入是必要的;所以針對存儲器RAID類型的IO做了一些自動化測試的導(dǎo)入,其中IO的IP設(shè)置及時間設(shè)置之前一直是一個人工操作的項目,需要大量人為操作參與進(jìn)來,這就不可避免的出現(xiàn)由于人為因素造成的失誤,致使設(shè)置不準(zhǔn)確,測試時間長而且成功率不高,又不會產(chǎn)生測試log;浪費了大量人力、時間,工作效率不高,產(chǎn)品品質(zhì)得不到保障。



技術(shù)實現(xiàn)要素:

本發(fā)明針對目前技術(shù)發(fā)展的需求和不足之處,提供存儲器中RAID類型的IO設(shè)置IP及時間的方法。

本發(fā)明所述存儲器中RAID類型的IO設(shè)置IP及時間的方法,解決上述技術(shù)問題采用的技術(shù)方案如下:所述存儲器中RAID類型的IO設(shè)置IP及時間的方法,使用linux 系統(tǒng)下perl語言編寫的自動化腳本,通過串口及網(wǎng)線對IO的IP及時間進(jìn)行自動化設(shè)置;其主要步驟包括:1)掃描存儲器中I/O的序列號;2)自動判斷I/O類型并自動加載I/O驅(qū)動;3)硬件檢測;4)設(shè)置上下I/O的IP;設(shè)置系統(tǒng)下成功后重啟I/O;5)檢測I/O的IP設(shè)置是否成功;6)設(shè)置I/O的時間。

優(yōu)選的,所述步驟2) 自動判斷I/O類型并自動加載I/O驅(qū)動,若加載成功則自動化腳本繼續(xù),若加載失敗則打印error,處理異常后重新執(zhí)行。

優(yōu)選的,所述步驟3)硬件檢測,自動化腳本通過串口線及SAS線抓取信息,自動判斷服務(wù)器與存儲器的連接狀態(tài)及各個模塊的在位狀況,若各個模塊狀態(tài)正常則繼續(xù)運行,若判斷出存儲器端及服務(wù)器端有異常則會在終端報錯“test fail”,同時打印error信息,排除問題后繼續(xù)重新測試。

優(yōu)選的,所述步驟5)檢測I/O的IP設(shè)置是否成功,成功則繼續(xù)進(jìn)行下步測試,不成功則結(jié)束,終端打印出error信息;然后排除異常重新測試。

優(yōu)選的,所述步驟6)設(shè)置I/O的時間,首先判斷上下兩個IO的時間是否相同,是與系統(tǒng)時間一致,若兩個IO的時間異常則重新設(shè)置時間;若I/O的時間是正確的則提示pass,繼續(xù)進(jìn)行。

本發(fā)明所述存儲器中RAID類型的IO設(shè)置IP及時間的方法與現(xiàn)有技術(shù)相比具有的有益效果是:本發(fā)明應(yīng)用于大部分存儲器IO的IP設(shè)置及時間設(shè)置,可以同時大批量的測試,每個測試步驟都有測試log產(chǎn)生,有利于問題分析及定位,減少了不必要的人機交互過程,節(jié)省人力、時間、成本等資源,不但提高了效率,而且有質(zhì)量保障;該方法操作簡單,實用性較強,并且不會有人為配置時可能出現(xiàn)的錯誤、漏失等,很大程度上提高生產(chǎn)速度。

附圖說明

附圖1為所述存儲器中RAID類型的IO設(shè)置IP及時間的方法的流程圖。

具體實施方式

為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚明白,以下結(jié)合具體實施例,對本發(fā)明所述存儲器中RAID類型的IO設(shè)置IP及時間的方法進(jìn)一步詳細(xì)說明。

實施例:

本實施例所述存儲器中RAID類型的IO設(shè)置IP及時間的方法,使用linux 系統(tǒng)下perl語言編寫的自動化腳本,通過串口及網(wǎng)線對IO的IP及時間進(jìn)行自動化設(shè)置,能夠同時進(jìn)行大批量測試,每個測試步驟都有測試log產(chǎn)生,并將測試log打印在終端,同時保存在服務(wù)器端,讓測試有絕對的保障。

附圖1為所述存儲器中RAID類型的IO設(shè)置IP及時間的方法的實施流程圖,如附圖1所示,該存儲器中RAID類型的IO設(shè)置IP及時間的方法具體實施過程如下:

1、搭建測試環(huán)境,服務(wù)器端裝好測試用的自動化腳本(掛載U盤mount /dev/sdb4 /mnt ; 復(fù)制即可cp /mnt/set_io_ips /usr/local/bin/Neptune/;),將好存儲器端I/O的SAS、網(wǎng)線及串口線連接到服務(wù)器端;

2、系統(tǒng)下執(zhí)行自動化腳本(加執(zhí)行權(quán)限chmod +x set_io_ips: ;執(zhí)行命令./ set_io_ips);log同步生產(chǎn)(log會自動寫在以時間命名的文件夾中,路徑可以自己通過配置文件指定);

3、掃描存儲器中I/O的序列號;

print "Please scan uiom sn[]: ";

chomp($uiom_sn=<STDIN>);

4、自動判斷I/O類型并自動加載I/O驅(qū)動,若加載成功則自動化腳本繼續(xù),若加載失敗則打印error,處理異常后重新執(zhí)行;

sub load_driver;

if($fc) {`modprobe mptfc`} --FC類型的I/O

if($sas){`modprobe mptsas`} ---SAS類型的I/O

5、硬件檢測,自動化腳本通過串口線及SAS線抓取信息,自動判斷服務(wù)器與存儲器的連接狀態(tài)及各個模塊的在位狀況,若各個模塊的狀態(tài)都是OK則繼續(xù)運行,若判斷出存儲器端及服務(wù)器端有異常則會在終端報錯“test fail”,同時打印error信息,排除問題后繼續(xù)重新測試;

sub get_device

my ($encl) = @_;

my @sg_map = `sg_map -x -i`;

登串口:

@MCports = ();

@FUports = ();

for (1..$expectedUUTs) {

my $slot = $_;

for (A,B) {

my $ctrl = $_;

my $mc = getConfig("uut$slot.ctrltest.ctrl$ctrl.com2");

my $fu = getConfig("uut$slot.ctrl$ctrl.fu");

push @MCports, $mc;

push @FUports, $fu;

6、設(shè)置上下I/O的IP;設(shè)置系統(tǒng)下成功后重啟I/O;

if($is_iscsi and $restarting) {

# setting new iSCSI IPs seems to help iscsi reliability

printout("both","\nSetting new IPs on all controllers...\n\n");

} else {

printout("both","\nSetting unique IPs on all controllers...\n\n");

}

}

if ($ctrl eq 'a') { $last = '1' } else { $last = '2' }

$set_ip_address = "10.0.0." . $slot . $last;

7、檢測I/O的IP設(shè)置是否成功,成功則繼續(xù)進(jìn)行下步測試,不成功則結(jié)束,終端打印出error信息;然后排除異常重新測試;若IP設(shè)置成功則繼續(xù)下一步測試;

unless($noSetup == 1){

unless(set_and_verify_ip_address($ctrl)) {

printout("both"," ERROR ! Could not set Controller $Ctrl on $mc to IP address $set_ip_address\n");

exit(1);

8、設(shè)置I/O的時間,首先判斷上下兩個IO的時間是否相同,是與系統(tǒng)時間一致,若兩個IO的時間異常則重新設(shè)置時間;若I/O的時間是正確的則提示pass,繼續(xù)進(jìn)行;

or $ctrl(a,b) { # cann't set CTRL A & B the same time; setting all ipA's, then all ipB's

$Ctrl=uc($ctrl);

$slot=$startSlot-1;

9、時間設(shè)置成功則測試pass,自動化腳本運行結(jié)束,若時間設(shè)置失敗,則自動化腳本運行結(jié)束,判斷異常后重新測試。

本實施例所述存儲器中RAID類型的IO設(shè)置IP及時間的方法,所使用的自動化腳本具體內(nèi)容如下:

sub load_driver {

#fill something

if($fc) {`modprobe mptfc`}

if($sas){`modprobe mptsas`}

@lsmod_out=`lsmod | grep mptsas`;

until(@lsmod_out) {

printout("both","SAS driver not loaded\n");

printout("both","loading SAS driver...\n");

system("modprobe mptsas");

sleep 5;

@lsmod_out=`lsmod | grep mptsas`;

}

#加載IO的驅(qū)動

$CS::failSub=\&serialWarn;

$tmpUUTs=0;

$CS::no_close = 0;

#調(diào)用數(shù)據(jù)包,進(jìn)入串口;

if($defaultsOnly) {

printout("both","detecting attached controllers...\n");

} else {

if($is_iscsi and $restarting) {

# setting new iSCSI IPs seems to help iscsi reliability

printout("both","\nSetting new IPs on all controllers...\n\n");

} else {

printout("both","\nSetting unique IPs on all controllers...\n\n");

}

}

if(not $defaultsOnly) {

unless(boldly_go($mc)) { exit(1) }

@FDE = CS::serial("set fde-state repurpose", "#"); # harmless if MC CLI don't support

printout("log","'set fde-state repurpose' result:\n@FDE");

unless($noSetup == 1){

unless(set_and_verify_ip_address($ctrl)) {

printout("both"," ERROR ! Could not set Controller $Ctrl on $mc to IP address $set_ip_address\n");

exit(1);

}

}

$ip_address = CS::get_ip($ctrl);

printout("log"," Controller $Ctrl on $mc IP address set to $ip_address (mcIndex=$mcIndex)\n");

}

#設(shè)置IO 的IP;

for $ctrl(a,b) { # cann't set CTRL A & B the same time; setting all ipA's, then all ipB's

$Ctrl=uc($ctrl);

$slot=$startSlot-1;

for $mcIndex (0..$#MCports) {

if($ctrl eq 'a') { next unless($mcIndex % 2 == 0) }

if($ctrl eq 'b') { next unless($mcIndex % 2 != 0) }

#檢測IO的時間。

上述具體實施方式僅是本發(fā)明的具體個案,本發(fā)明的專利保護(hù)范圍包括但不限于上述具體實施方式,任何符合本發(fā)明的權(quán)利要求書的且任何所屬技術(shù)領(lǐng)域的普通技術(shù)人員對其所做的適當(dāng)變化或替換,皆應(yīng)落入本發(fā)明的專利保護(hù)范圍。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
左贡县| 名山县| 虹口区| 伊春市| 雷波县| 冀州市| 常德市| 遂川县| 宜都市| 肥东县| 南投市| 阳春市| 西乌珠穆沁旗| 舟曲县| 文成县| 博野县| 习水县| 鄂伦春自治旗| 德保县| 扶沟县| 阿拉善右旗| 韶山市| 松滋市| 富锦市| 太湖县| 铁力市| 鄂州市| 永福县| 理塘县| 屯门区| 明星| 扶余县| 会昌县| 潮安县| 上饶市| 石林| 分宜县| 呼和浩特市| 孝昌县| 望谟县| 兰坪|