国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

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

      文檔序號(hào):12271154閱讀:1353來(lái)源:國(guó)知局

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

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



      背景技術(shù):

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

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

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



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

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

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

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

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

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

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

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

      附圖說(shuō)明

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

      具體實(shí)施方式

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

      實(shí)施例:

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

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

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

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

      3、掃描存儲(chǔ)器中I/O的序列號(hào);

      print "Please scan uiom sn[]: ";

      chomp($uiom_sn=<STDIN>);

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

      sub load_driver;

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

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

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

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

      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的時(shí)間,首先判斷上下兩個(gè)IO的時(shí)間是否相同,是與系統(tǒng)時(shí)間一致,若兩個(gè)IO的時(shí)間異常則重新設(shè)置時(shí)間;若I/O的時(shí)間是正確的則提示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í)間設(shè)置成功則測(cè)試pass,自動(dòng)化腳本運(yùn)行結(jié)束,若時(shí)間設(shè)置失敗,則自動(dòng)化腳本運(yùn)行結(jié)束,判斷異常后重新測(cè)試。

      本實(shí)施例所述存儲(chǔ)器中RAID類型的IO設(shè)置IP及時(shí)間的方法,所使用的自動(dòng)化腳本具體內(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ū)動(dòng)

      $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) }

      #檢測(cè)IO的時(shí)間。

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

      當(dāng)前第1頁(yè)1 2 3 
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1