麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

I/o數據訪問中斷的處理方法和系統以及設備的制作方法

文檔序號:6438407閱讀:443來源:國知局
專利名稱:I/o數據訪問中斷的處理方法和系統以及設備的制作方法
技術領域
本發明涉及通信技術領域,尤其涉及一種I/O數據訪問中斷的處理方法和系統以及設備。
背景技術
通過虛擬技術將一臺獨占設備虛擬成多臺邏輯設備,供多個用戶進程同時使用, 通常把這種經過虛擬的設備稱為虛擬化設備。如果在I/O數據讀寫過程中,將該虛擬化設備部署在主機服務器與存儲陣列之間,以在I/O讀寫過程中,在主機服務器到存儲設備的路徑上實現虛擬存儲,即當主機服務器下發到存儲陣列的I/O數據都必須先到達該虛擬化設備,然后再從該虛擬化設備下發到存儲陣列中時,這種虛擬化設備通常被成為帶內虛擬化設備。在帶內虛擬化設備的應用場景中,在數據讀寫過程中,所有主機服務器下發到存儲陣列的業務數據都必須先到達該帶內虛擬化設備,然后再從該帶內虛擬化設備下發到具體的存儲陣列。該些存儲陣列提供真正的存儲空間,主機服務器上面存儲的I/O業務數據都是放在該些存儲陣列上的。但是,當帶內虛擬化設備由于某種原因出現故障時,主機服務器無法通過帶內虛擬化設備對存儲陣列中的I/O數據進行讀寫,從而造成主機服務器上業務的中斷,進而給客戶的使用帶來了不便。

發明內容
本發明提供一種I/O數據訪問中斷的處理方法和系統以及設備,用于解決現有技術中當帶內虛擬化設備由于某種原因出現故障時,主機服務器上業務中斷的問題。本發明提供一種I/O數據訪問中斷的處理方法,包括若判斷出虛擬化設備故障或者第一路徑組的第一路徑全部故障,則發送用于注冊第二路徑的第二 SCSI注冊指令給存儲陣列,所述第一路徑組包括至少一條所述第一路徑, 所述第一路徑由所述主機服務器與所述存儲陣列通過所述虛擬化設備連接形成,所述第二路徑組包括至少一條第二路徑,所述第二路徑由所述主機服務器與所述存儲陣列直連形成,所述存儲陣列上設置有與第一路徑對應的第一 SCSI預留;通過所述第二路徑發送攜帶有第一路徑標識的第一 SCSI預留刪除指令給所述存儲陣列,以使所述存儲陣列根據所述第一 SCSI預留刪除指令,刪除與所述第一路徑標識對應的第一 SCSI預留;在接收到所述存儲陣列發送的第二 SCSI注冊指令的響應消息,以及所述第一 SCSI刪除指令的響應消息后,通過所述第二路徑發送攜帶有第二路徑標識的第二 SCSI預留設置指令給所述存儲陣列,以使所述存儲陣列根據所述第二 SCSI預留設置指令,設置與所述第二路徑標識對應的第二 SCSI預留;根據與所述第二路徑標識對應的第二 SCSI預留,通過所述第二路徑對所述存儲陣列進行I/O數據訪問處理。
本發明提供一種主機服務器,包括判斷模塊,用于判斷虛擬化設備是否發生故障或者第一路徑組的第一路徑是否全部故障;所述第一路徑組包括至少一條所述第一路徑,所述第一路徑由所述主機服務器與所述存儲陣列通過所述虛擬化設備連接形成,所述存儲陣列上設置有與第一路徑對應的第一 SCSI預留;注冊模塊,用于若所述判斷模塊判斷出虛擬化設備故障或者第一路徑組的第一路徑全部故障,則發送用于注冊的第二路徑的第二 SCSI注冊指令給存儲陣列;所述第二路徑組包括至少一條第二路徑,所述第二路徑由所述主機服務器與所述存儲陣列直連形成;路徑處理模塊,用于通過所述第二路徑發送攜帶有第一路徑標識的第一 SCSI預留刪除指令給所述存儲陣列,以使得所述存儲陣列根據所述第一 SCSI預留刪除指令,刪除與所述第一路徑標識對應的第一 SCSI預留;并在接收到所述存儲陣列發送的第二 SCSI注冊指令的響應消息,以及所述第一 SCSI刪除指令的響應消息后,通過所述第二路徑發送攜帶有第二路徑標識的第二 SCSI預留設置指令給所述存儲陣列,以使所述存儲陣列根據所述第二 SCSI預留設置指令,設置與所述第二路徑標識對應的第二 SCSI預留;訪問處理模塊,用于根據與所述第二路徑標識對應的第二 SCSI預留,通過所述第二路徑對所述存儲陣列進行I/O數據訪問處理。本發明提供一種I/O數據訪問中斷的處理系統,包括虛擬化設備、存儲陣列和上述所述的主機服務器,其中,所述主機服務器通過所述第二路徑組與所述存儲陣列相連,所述虛擬化設備通過第一路徑組分別與所述主機服務器和所述存儲陣列相連。本發明提供的I/O數據訪問中斷的處理方法和系統以及設備,通過主機服務器若判斷出虛擬化設備故障或者第一路徑組的第一路徑全部故障,則發送用于注冊第二路徑組的第二 SCSI預留注冊指令給存儲陣列,并通過第二路徑發送攜帶有第一路徑標識的第一 SCSI預留刪除指令給該存儲陣列,以使得該存儲陣列刪除第一路徑標識對應的第一 SCSI 預留,當接收存儲陣列發送的第二 SCSI注冊指令的響應消息,以及第一 SCSI刪除指令的響應消息,則發送攜帶有第二路徑標識的第二 SCSI預留設置指令給存儲陣列,以供該存儲陣列設置與該第二路徑組標識對應的第二 SCSI預留,從而可以通過第二路徑對存儲陣列進行I/O數據訪問處理,進而有效地解決了現有技術中當帶內虛擬化設備由于某種原因出現故障時,主機服務器上業務中斷的問題,并有效地提高了用戶使用的便捷性。


為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。圖1為本實施例I/O數據訪問終端處理方法所基于的帶內虛擬化設備應用場景的結構示意圖;圖2為本發明I/O數據訪問中斷的處理方法的一個實施例的流程圖;圖3為本發明I/O數據訪問中斷的處理方法的再一個實施例的流程圖;圖4為本發明主機服務器的一個實施例的結構圖。
具體實施例方式為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。圖1為本實施例I/O數據訪問終端處理方法所基于的帶內虛擬化設備應用場景的結構示意圖,如圖1所示,該帶內虛擬化設備應用場景包括主機服務器11、虛擬化設備12 和存儲陣列13。具體的,主機服務器11經過虛擬化設備到存儲陣列的路徑為第一路徑組 14,主機服務器11直連到存儲陣列13的路徑為第二路徑組15,虛擬化設備12后端可以接多個存儲陣列13,并將這些存儲陣列13映射過來的邏輯單元號(Logical Unit Number ;簡稱LUN)經過虛擬化處理后提供給主機服務器11。其中,該LUN用于存儲I/O數據,該第一路徑組14包括至少一條第一路徑;該第二路徑組15包括至少一條第二路徑。在虛擬化設備12未故障,且全部第一路徑組14未故障時,主機服務器11 一般通過第一路徑組14和虛擬化設備12對存儲陣列13上的I/O數據進行訪問處理。另外,舉例來說,當第一路徑組14包括兩條第一路徑時,可以通過這兩條第一路徑對該存儲陣列13上的I/O數據進行訪問處理,或者通過其中一條第一路徑對該存儲陣列13上的I/O數據進行訪問處理。當設置其中一條第一路徑為訪問路徑來對該存儲陣列13上的I/O數據進行訪問處理時,如果該路徑出現故障,則路徑管理模塊111可以將訪問路徑由該第一路徑4切換到另一條第一路徑上。值得注意的是,該虛擬化設備12的數量可以是兩個,其中一個虛擬化設備12的后端可以接多個存儲陣列13,并與另一個虛擬化設備12相連接,用于將虛擬化LUN復制到這個虛擬化設備12上,進行容災備份。圖2為本發明I/O數據訪問中斷的處理方法的一個實施例的流程圖,如圖2所示, 本實施例的執行主體為主機服務器,則該方法包括步驟101、主機服務器若判斷出虛擬化設備故障或者第一路徑組的第一路徑全部故障,則發送用于注冊第二路徑組的第二小型計算機系統接口(Small Computer System Interface ;簡稱SCSI)注冊指令給存儲陣列。其中,該虛擬化設備部署在主機服務器與存儲陣列之間,該第一路徑組包括至少一條第一路徑,該第一路徑由該主機服務器與存儲陣列通過虛擬化設備連接形成;該第二路徑組包括至少一條第二路徑,該第二路徑由主機服務器與該存儲陣列直連形成,該存儲陣列上設置有第一路徑對應的第一 SCSI預留。步驟102、主機服務器通過第二路徑發送攜帶有第一路徑標識的第一 SCSI預留刪除指令給存儲陣列,以使得該存儲陣列根據該第一 SCSI預留刪除指令,刪除與該第一路徑標識對應的第一 SCSI預留。步驟103、主機服務器在接收到該存儲陣列發送的第二 SCSI注冊指令的響應消息,以及該第一 SCSI刪除指令的響應消息后,通過第二路徑發送攜帶有第二路徑標識的第二 SCSI預留設置指令給該存儲陣列,以使該存儲陣列根據該第二 SCSI預留設置指令,設置與該第二路徑標識對應的第二 SCSI預留。
在本實施例中,該第一 SCSI預留包括第一路徑信息,例如虛擬化設備端口號和存儲陣列端口號等 ’第二 SCSI預留包括第二路徑信息,例如主機服務器端口號和存儲陣列端口號等。步驟104、主機服務器根據與該第二路徑標識對應的第二 SCSI預留,通過該第二路徑對該存儲陣列進行I/O數據訪問處理。在本實施例中,當主機服務器判斷出虛擬化設備未故障,且第一路徑組中的第一路徑全部未發生故障時,可以設置第一路徑組為訪問路徑,并通過該第一路徑組和虛擬化設備發送第一 SCSI注冊指令給存儲陣列,其中該第一 SCSI注冊指令包括第一路徑標識。當存儲陣列發送第一 SCSI注冊指令的響應消息時,則說明允許主機服務器通過第一路徑組對存儲陣列上的I/O數據進行訪問處理,該主機服務器發送攜帶有第一路徑標識對應的第
一SCSI預留設置指令給存儲陣列,以供存儲陣列根據該該第一 SCSI預留設置指令,設置與該第一路徑標識對應的第一 SCSI預留,從而使得該主機服務器可以通過第一路徑組和虛擬化設備對該存儲陣列上的I/O數據進行訪問處理,例如主機服務器可以對存儲陣列上的I/O數據進行讀寫。當主機服務器判斷出該虛擬化設備故障或者第一路徑組的第一路徑全部故障時, 可以將訪問路徑由第一路徑組切換為第二路徑組,具體的,發送用于注冊第二路徑組的第
二SCSI注冊指令給存儲陣列,并通過第二路徑發送攜帶有第一路徑標識的第一 SCSI預留刪除指令給存儲陣列,以供該存儲陣列根據該第一 SCSI預留刪除指令,刪除與該第一路徑標識對應的第一 SCSI預留;當主機服務器接收到存儲陣列返回的第二 SCSI注冊指令的響應消息,以及第一 SCSI刪除指令的響應消息,發送攜帶有第二路徑標識的第二 SCSI預留設置指令給該存儲陣列,以供該存儲陣列根據該第二 SCSI預留設置指令,設置與該第二路徑標識對應的第二 SCSI預留,從而使得該主機服務器可以通過第二路徑對存儲陣列上的I/O 數據進行訪問處理。在本實施例中,通過主機服務器若判斷出虛擬化設備故障或者第一路徑組的第一路徑全部故障,則發送用于注冊第二路徑組的第二 SCSI預留注冊指令給存儲陣列,并通過第二路徑發送攜帶有第一路徑標識的第一 SCSI預留刪除指令給該存儲陣列,以使得該存儲陣列刪除第一路徑標識對應的第一 SCSI預留,當接收存儲陣列發送的第二 SCSI注冊指令的響應消息,以及第一 SCSI刪除指令的響應消息,則發送攜帶有第二路徑標識的第二 SCSI預留設置指令給存儲陣列,以供該存儲陣列設置與該第二路徑組標識對應的第二 SCSI預留,從而可以通過第二路徑對存儲陣列進行I/O數據訪問處理,進而有效地解決了現有技術中當帶內虛擬化設備由于某種原因出現故障時,主機服務器上業務中斷的問題, 并有效地提高了用戶使用的便捷性。進一步的,在本發明的另一個實施例中,在上述圖1所示實施例的基礎上,該方法還可以包括主機服務器接收該存儲陣列通過該虛擬化設備和該第一路徑映射給該主機服務器的虛擬化LUN,并接收該存儲陣列通過該第二路徑映射給該主機服務器的非虛擬化LUN ;主機服務器判斷該虛擬化LUN中的全球唯一名字(World Wide Name ;簡稱WWN) 與該非虛擬化LUN中的WffN是否相同,若相同,則設置該虛擬化LUN和非虛擬化LUN為同一 LUN。
在本實施例中,存儲陣列將存儲陣列上的非虛擬化LUN映射給該虛擬化設備,由該虛擬化設備對該些非虛擬化LUN進行虛擬化處理,并將獲取的虛擬化LUN通過第一路徑提供給主機服務器,同時,存儲陣列將存儲陣列上的非虛擬化LUN通過第二路徑映射給主機服務器,為了避免主機服務器上同一個LUN顯示出一個非虛擬化LUN和一個虛擬化LUN, 而導致數據可能被破壞的問題,主機服務器可以判斷該虛擬化LUN中的WffN和該非虛化LUN 中的WffN是否相同,若相同,則設置該虛擬化LUN和非虛擬化LUN為同一 LUN,即使得主機服務器將具有相同的WffN的虛擬化LUN和非虛擬化LUN設置為相同的LUN。圖3為本發明I/O數據訪問中斷的處理方法的又一個實施例的流程圖,如圖3所示,在本實施例中,主機服務器設置從主機服務器經過虛擬化設備到存儲陣列的路徑為第一路徑組;并設置從主機服務器直連到存儲陣列的路徑為第二路徑組。其中,該第一路徑組包括至少一條第一路徑,第二路徑組包括至少一條第二路徑。則該方法包括步驟201、主機服務器通過第一路徑發送測試信號。其中,該測試信號可以用于檢測第一路徑和帶內虛擬化設備是否正常工作。步驟202、主機服務器判斷通過該第一路徑是否接收到測試信號的響應消息,或者通過該第一路徑接收到測試信號的響應消息是否正確;若判斷出沒有通過第一路徑接收到測試信號的響應消息,或者通過第一路徑接收到測試信號的響應消息不正確,則執行步驟 203 ;若判斷出通過第一路徑接收到測試信號的響應消息正確,則執行步驟212。步驟203、主機服務器發送用于注冊第二路徑的第二 SCSI注冊指令給存儲陣列。步驟204、主機服務器發送攜帶有第一路徑標識的第一 SCSI預留刪除指令給該存儲陣列,以使該存儲陣列根據該第一 SCSI預留刪除指令,刪除與該第一路徑標識對應的第
一SCSI預留。步驟205、主機服務器根據該存儲陣列發送的第二 SCSI注冊指令的響應消息,以及該第一 SCSI刪除指令的響應消息,發送攜帶有第二路徑標識的第二 SCSI預留設置指令給該存儲陣列,以使該存儲陣列根據該第二 SCSI預留設置指令,設置與該第二路徑組標識對應的第二 SCSI預留。步驟206、主機服務器根據與該第二路徑標識對應的第二 SCSI預留,通過該第二路徑對該存儲陣列進行I/O數據訪問處理。步驟207、主機服務器每隔預定時間,通過該第一路徑發送測試信號。其中,該測試信號用于檢測該第一路徑和/或帶內虛擬化設備是否恢復。步驟208、主機服務器判斷通過該第一路徑是否接收到測試信號的響應消息,或者通過該第一路徑接收到測試信號的響應消息是否正確;若判斷出沒有通過第一路徑接收到測試信號的響應消息,或者通過第一路徑接收到測試信號的響應消息不正確,則執行步驟 206 ;若判斷出通過第一路徑接收到測試信號的響應消息正確,則執行步驟209。步驟209、主機服務器發送攜帶有第二路徑標識的第二 SCSI預留刪除指令給該存儲陣列,以供該存儲陣列根據該第二 SCSI預留刪除指令,刪除與該第二路徑標識對應的第
二SCSI預留。步驟210、主機服務器根據該存儲陣列發送的第二 SCSI預留刪除指令的響應消息,發送攜帶有第一路徑標識對應的第一 SCSI預留設置指令給該存儲陣列,以供該存儲陣列根據該第一 SCSI預留設置指令,設置與該第一路徑標識對應的第一 SCSI預留。
步驟211、主機服務器通過該第一路徑對該存儲陣列進行I/O數據訪問處理。結
束ο步驟212、主機服務器通過所述未發生故障的第一路徑發送第一 SCSI注冊指令給該存儲陣列,當接收到該存儲陣列發送的第一 SCSI注冊指令的響應消息時,發送攜帶有未發生故障的第一路徑標識的第一 SCSI預留設置指令給該存儲陣列,以供該存儲陣列根據該第一 SCSI預留設置指令,設置與該未發生故障的第一路徑標識對應的第一 SCSI預留。步驟213、根據該與未發生故障的第一路徑對應的第一 SCSI預留,通過該未發生故障的第一路徑對該存儲陣列進行I/O數據訪問處理。在本實施例中,通過主機服務器若判斷出虛擬化設備故障或者第一路徑組的第一路徑全部故障,則發送用于注冊第二路徑組的第二 SCSI預留注冊指令給存儲陣列,并通過第二路徑發送攜帶有第一路徑標識的第一 SCSI預留刪除指令給該存儲陣列,以使得該存儲陣列刪除第一路徑標識對應的第一 SCSI預留,當接收存儲陣列發送的第二 SCSI注冊指令的響應消息,以及第一 SCSI刪除指令的響應消息,則發送攜帶有第二路徑標識的第二 SCSI預留設置指令給存儲陣列,以供該存儲陣列設置與該第二路徑組標識對應的第二 SCSI預留,從而可以通過第二路徑對存儲陣列進行I/O數據訪問處理,進而有效地解決了現有技術中當帶內虛擬化設備由于某種原因出現故障時,主機服務器上業務中斷的問題, 并有效地提高了用戶使用的便捷性。進一步的,在本發明的另一個實施例中,在上述圖1或者圖2所示實施例基礎上, 在主機服務器將該訪問路徑由該第一路徑組切換到該第二路徑組之后,該方法還包括主機服務器通過該第二路徑發送測試信號;其中,該測試信號用于檢測第二路徑是否正常工作。則主機服務器通過所述第二路徑發送用于注冊第二路徑的第二 SCSI注冊指令給存儲陣列可以具體為主機服務器若判斷出通過第二路徑接收到的測試信號的響應消息正確,則下發用于注冊第二路徑的第二 SCSI注冊指令給存儲陣列。圖4為本發明主機服務器的一個實施例的結構示意圖,如圖4所示,本實施例的主機服務器包括判斷模塊21、注冊模塊22、路徑處理模塊23和訪問處理模塊M,其中,判斷模塊21用于判斷虛擬化設備是否發生故障或者第一路徑組的第一路徑是否全部故障,該虛擬化設備部署在主機服務器與存儲陣列之間,該第一路徑組包括至少一條路徑,該第一路徑由主機服務器與存儲陣列通過虛擬化設備連接形成;該存儲陣列上設置有與該第一路徑對應的第一 SCSI預留;注冊模塊22用于若該判斷模塊21判斷出虛擬化設備故障或者第一路徑組的第一路徑全部故障,則發送用于注冊的第二路徑的第二 SCSI注冊指令給存儲陣列;該第二路徑組包括至少一條第二路徑,該第二路徑由該主機服務器與該存儲陣列直連形成;路徑處理模塊23用于通過該第二路徑發送攜帶有第一路徑標識的第一 SCSI預留刪除指令給該存儲陣列,以使得該存儲陣列根據該第一 SCSI預留刪除指令,刪除與該第一路徑標識對應的第一 SCSI預留;并在接收到該存儲陣列發送的第二 SCSI注冊指令的響應消息,以及該第一 SCSI刪除指令的響應消息,通過第二路徑發送攜帶有第二路徑標識的第二 SCSI預留設置指令給所述存儲陣列,以使該存儲陣列根據該第二 SCSI預留設置指令,設置與該第二路徑標識對應的第二 SCSI預留;訪問處理模塊M用于根據與該第二路徑標識對應的第二 SCSI預留,通過該第二路徑對該存儲陣列進行I/O數據訪問處理。本實施例的主機服務器可以執行圖2所示方法實施例的技術方案,其實現原理相類似,此處不再贅述。在本實施例中,通過主機服務器若判斷出虛擬化設備故障或者第一路徑組的第一路徑全部故障,則發送用于注冊第二路徑組的第二 SCSI預留注冊指令給存儲陣列,并通過第二路徑發送攜帶有第一路徑標識的第一 SCSI預留刪除指令給該存儲陣列,以使得該存儲陣列刪除第一路徑標識對應的第一 SCSI預留,當接收存儲陣列發送的第二 SCSI注冊指令的響應消息,以及第一 SCSI刪除指令的響應消息,則發送攜帶有第二路徑標識的第二 SCSI預留設置指令給存儲陣列,以供該存儲陣列設置與該第二路徑組標識對應的第二 SCSI預留,從而可以通過第二路徑對存儲陣列進行I/O數據訪問處理,進而有效地解決了現有技術中當帶內虛擬化設備由于某種原因出現故障時,主機服務器上業務中斷的問題, 并有效地提高了用戶使用的便捷性。進一步的,在本發明的另一個實施例中,在上述圖4所示實施例的基礎上,判斷模塊21還用于每隔預定時間,通過該第一路徑發送測試信號,該測試信號用于檢測該第一路徑和/或帶內虛擬化設備是否恢復,并判斷是否通過該第一路徑接收到測試信號的響應消息,或者判斷通過該第一路徑接收到的該測試信號的響應消息是否正確;路徑處理模塊23還用于若該判斷模塊21判斷出通過該第一路徑接收到的測試信號的響應消息正確,則發送攜帶有第二路徑標識的第二 SCSI預留刪除指令給該存儲陣列, 以供該存儲陣列根據該第二 SCSI預留刪除指令,刪除與該第二路徑標識對應的第二 SCSI 預留;并根據該存儲陣列發送的第二 SCSI預留刪除指令的響應消息,發送攜帶有第一路徑標識對應的第一 SCSI預留設置指令給該存儲陣列,以供該存儲陣列根據該第一 SCSI預留設置指令,設置與該第一路徑標識對應的第一 SCSI預留。訪問處理模塊M還用于通過該第一路徑和所述虛擬化設備對該存儲陣列進行I/ 0數據訪問處理。進一步的,在初始化時,注冊模塊22還用于若判斷模塊21判斷出該虛擬化設備無故障,且第一路徑組所包含的第一路徑未全部發生故障,則通過未發生故障的第一路徑發送第一 SCSI注冊指令給該存儲陣列;路徑處理模塊23還用于當接收到該存儲陣列發送的第一 SCSI注冊指令的響應消息后,發送攜帶有未發生故障的第一路徑標識的第一 SCSI預留設置指令給該存儲陣列,以供該存儲陣列根據該第一 SCSI預留設置指令,設置與該未發生故障的第一路徑標識對應的第一 SCSI預留。訪問處理模塊M還用于根據該與未發生故障的第一路徑對應的第一 SCSI預留, 通過該未發生故障的第一路徑和該虛擬化設備對該存儲陣列進行I/O數據訪問處理。本實施例的主機服務器可以執行圖3所示方法實施例的技術方案,其實現原理相類似,此處不再贅述。在本實施例中,通過主機服務器若判斷出虛擬化設備故障或者第一路徑組的第一路徑全部故障,則發送用于注冊第二路徑組的第二 SCSI預留注冊指令給存儲陣列,并通過第二路徑發送攜帶有第一路徑標識的第一 SCSI預留刪除指令給該存儲陣列,以使得該存儲陣列刪除第一路徑標識對應的第一 SCSI預留,當接收存儲陣列發送的第二 SCSI注冊
1指令的響應消息,以及第一 SCSI刪除指令的響應消息,則發送攜帶有第二路徑標識的第二 SCSI預留設置指令給存儲陣列,以供該存儲陣列設置與該第二路徑組標識對應的第二 SCSI預留,從而可以通過第二路徑對存儲陣列進行I/O數據訪問處理,進而有效地解決了現有技術中當帶內虛擬化設備由于某種原因出現故障時,主機服務器上業務中斷的問題, 并有效地提高了用戶使用的便捷性。更進一步的,在本發明的又一個實施例中,在上述圖4所示實施例的基礎上,為了避免主機服務器上同一個LUN顯示出一個非虛擬化LUN和一個虛擬化LUN,而導致數據可能被破壞的問題,該主機服務器還可以包括接收模塊和識別處理模塊,其中,接收模塊用于接收該存儲陣列通過該虛擬化設備和該第一路徑映射給該主機服務器的虛擬化LUN,并接收該存儲陣列通過該第二路徑映射給該主機服務器的非虛擬化LUN ;識別處理模塊用于識別該虛擬化LUN中的WWW與該非虛擬化LUN中的WWW是否相同,若相同,則設置該虛擬化 LUN和非虛擬化LUN為同一 LUN。發明還提供了一種I/O數據訪問中斷的處理系統,該系統包括虛擬化設備、存儲陣列和主機服務器,其中,該主機服務器可以執行圖2或者圖3所示方法實施例的技術方案,其原理相類似,此處不再贅述。具體的,主機服務器通過第二路徑組與存儲陣列相連,虛擬化設備通過第一路徑組分別與主機服務器和存儲陣列相連。本領域普通技術人員可以理解實現上述方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成,前述的程序可以存儲于一計算機可讀取存儲介質中,該程序在執行時,執行包括上述方法實施例的步驟;而前述的存儲介質包括R0M、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質。最后應說明的是以上實施例僅用以說明本發明的技術方案,而非對其限制;盡管參照前述實施例對本發明進行了詳細的說明,本領域的普通技術人員應當理解其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發明各實施例技術方案的范圍。
權利要求
1.一種I/O數據訪問中斷的處理方法,其特征在于,包括若判斷出虛擬化設備故障或者第一路徑組的第一路徑全部故障,則發送用于注冊第二路徑的第二 SCSI注冊指令給存儲陣列,所述第一路徑組包括至少一條所述第一路徑,所述第一路徑由所述主機服務器與所述存儲陣列通過所述虛擬化設備連接形成,所述第二路徑組包括至少一條第二路徑,所述第二路徑由所述主機服務器與所述存儲陣列直連形成,所述存儲陣列上設置有與第一路徑對應的第一 SCSI預留;通過所述第二路徑發送攜帶有第一路徑標識的第一 SCSI預留刪除指令給所述存儲陣列,以使所述存儲陣列根據所述第一 SCSI預留刪除指令,刪除與所述第一路徑標識對應的第一 SCSI預留;在接收到所述存儲陣列發送的第二 SCSI注冊指令的響應消息,以及所述第一 SCSI刪除指令的響應消息后,通過所述第二路徑發送攜帶有第二路徑標識的第二 SCSI預留設置指令給所述存儲陣列,以使所述存儲陣列根據所述第二 SCSI預留設置指令,設置與所述第二路徑標識對應的第二 SCSI預留;根據與所述第二路徑標識對應的第二 SCSI預留,通過所述第二路徑對所述存儲陣列進行I/O數據訪問處理。
2.根據權利要求1所述的I/O數據訪問中斷的處理方法,其特征在于,還包括 接收所述存儲陣列通過所述虛擬化設備和所述第一路徑映射給所述主機服務器的虛擬化邏輯單元號,并接收所述存儲陣列通過所述第二路徑映射給所述主機服務器的非虛擬化邏輯單元號;識別所述虛擬化邏輯單元號中的全球唯一名字與所述非虛擬化邏輯單元號中的全球唯一名字是否相同,若相同,則設置所述虛擬化邏輯單元號和非虛擬化邏輯單元號為同一邏輯單元號。
3.根據權利要求1所述的I/O數據訪問中斷的處理方法,其特征在于,還包括每隔預定時間,通過所述第一路徑發送測試信號,所述測試信號用于檢測所述第一路徑和/或所述帶內化虛擬設備是否恢復;若通過所述第一路徑接收到的測試信號的響應消息正確,則發送攜帶有第二路徑標識的第二 SCSI預留刪除指令給所述存儲陣列,以供所述存儲陣列根據所述第二 SCSI預留刪除指令,刪除與所述第二路徑標識對應的第二 SCSI預留;根據所述存儲陣列發送的第二 SCSI預留刪除指令的響應消息,發送攜帶有第一路徑標識對應的第一 SCSI預留設置指令給所述存儲陣列,以供所述存儲陣列根據所述第一 SCSI預留設置指令,設置與所述第一路徑標識對應的第一 SCSI預留; 通過所述第一路徑對所述存儲陣列進行I/O數據訪問處理。
4.根據權利要求1所述的I/O數據訪問中斷的處理方法,其特征在于,還包括若判斷出所述虛擬化設備無故障,且所述第一路徑組所包含的第一路徑未全部發生故障,則通過未發生故障的第一路徑發送第一 SCSI注冊指令給所述存儲陣列,當接收到所述存儲陣列發送的第一 SCSI注冊指令的響應消息后,發送攜帶有未發生故障的第一路徑標識的第一 SCSI預留設置指令給所述存儲陣列,以供所述存儲陣列根據所述第一 SCSI預留設置指令,設置與所述未發生故障的第一路徑標識對應的第一 SCSI預留;根據所述與未發生故障的第一路徑對應的第一 SCSI預留,通過所述未發生故障的第一路徑和所述虛擬化設備對所述存儲陣列進行I/O數據訪問處理。
5.一種主機服務器,其特征在于,包括判斷模塊,用于判斷虛擬化設備是否發生故障或者第一路徑組的第一路徑是否全部故障;所述第一路徑組包括至少一條所述第一路徑,所述第一路徑由所述主機服務器與所述存儲陣列通過所述虛擬化設備連接形成,所述存儲陣列上設置有與第一路徑對應的第一 SCSI預留;注冊模塊,用于若所述判斷模塊判斷出虛擬化設備故障或者第一路徑組的第一路徑全部故障,則發送用于注冊的第二路徑的第二 SCSI注冊指令給存儲陣列;所述第二路徑組包括至少一條第二路徑,所述第二路徑由所述主機服務器與所述存儲陣列直連形成;路徑處理模塊,用于通過所述第二路徑發送攜帶有第一路徑標識的第一 SCSI預留刪除指令給所述存儲陣列,以使得所述存儲陣列根據所述第一 SCSI預留刪除指令,刪除與所述第一路徑標識對應的第一 SCSI預留;并在接收到所述存儲陣列發送的第二 SCSI注冊指令的響應消息,以及所述第一 SCSI刪除指令的響應消息后,通過所述第二路徑發送攜帶有第二路徑標識的第二 SCSI預留設置指令給所述存儲陣列,以使所述存儲陣列根據所述第二 SCSI預留設置指令,設置與所述第二路徑標識對應的第二 SCSI預留;訪問處理模塊,用于根據與所述第二路徑標識對應的第二 SCSI預留,通過所述第二路徑對所述存儲陣列進行I/O數據訪問處理。
6.根據權利要求5所述的主機服務器,其特征在于,還包括接收模塊,用于接收所述存儲陣列通過所述虛擬化設備和所述第一路徑映射給所述主機服務器的虛擬化邏輯單元號,并接收所述存儲陣列通過所述第二路徑映射給所述主機服務器的非虛擬化邏輯單元號;識別處理模塊,用于識別所述虛擬化邏輯單元號中的全球唯一名字與所述非虛擬化邏輯單元號中的全球唯一名字是否相同,若相同,則設置所述虛擬化邏輯單元號和非虛擬化邏輯單元號為同一邏輯單元號。
7.根據權利要求5所述的主機服務器,其特征在于,所述判斷模塊還用于每隔預定時間,通過所述第一路徑發送測試信號,所述測試信號用于檢測所述第一路徑和/或所述帶內化虛擬設備是否恢復,并判斷是否通過所述第一路徑接收到測試信號的響應消息;所述路徑處理模塊還用于若所述判斷模塊判斷出通過所述第一路徑接收到的測試信號的響應消息正確,則發送攜帶有第二路徑標識的第二 SCSI預留刪除指令給所述存儲陣列,以供所述存儲陣列根據所述第二 SCSI預留刪除指令,刪除與所述第二路徑標識對應的第二 SCSI預留;并根據所述存儲陣列發送的第二 SCSI預留刪除指令的響應消息,發送攜帶有第一路徑標識對應的第一 SCSI預留設置指令給所述存儲陣列,以供所述存儲陣列根據所述第一 SCSI預留設置指令,設置與所述第一路徑標識對應的第一 SCSI預留;所述訪問處理模塊還用于通過所述第一路徑對所述存儲陣列進行I/O數據訪問處理。
8.根據權利要求5所述的主機服務器,其特征在于,所述注冊模塊還用于若所述判斷模塊判斷出所述虛擬化設備無故障,且所述第一路徑組所包含的第一路徑未全部發生故障,則通過未發生故障的第一路徑發送第一 SCSI注冊指令給所述存儲陣列;所述路徑處理模塊還用于當接收到所述存儲陣列發送的第一 SCSI注冊指令的響應消息后,發送攜帶有未發生故障的第一路徑標識的第一 SCSI預留設置指令給所述存儲陣列,以供所述存儲陣列根據所述第一 SCSI預留設置指令,設置與所述未發生故障的第一路徑標識對應的第一 SCSI預留;所述訪問處理模塊還用于根據所述與未發生故障的第一路徑對應的第一 SCSI預留, 通過所述未發生故障的第一路徑和所述虛擬化設備對所述存儲陣列進行I/O數據訪問處理。
9. 一種I/O數據訪問中斷的處理系統,其特征在于,包括虛擬化設備、存儲陣列和如權利要求5至8任一項所述的主機服務器,其中,所述主機服務器通過所述第二路徑組與所述存儲陣列相連,所述虛擬化設備通過所述第一路徑組分別與所述主機服務器和所述存儲陣列相連。
全文摘要
本發明提供一種I/O數據訪問中斷的處理方法和系統以及設備,該方法包括若判斷出虛擬化設備故障或者第一路徑組的第一路徑全部故障,則發送第二SCSI注冊指令給存儲陣列,并通過第二路徑發送攜帶有第一路徑標識的第一SCSI預留刪除指令給存儲陣列,以使存儲陣列刪除與第一路徑標識對應的第一SCSI預留;在接收到存儲陣列發送的第二SCSI注冊指令的響應消息以及第一SCSI刪除指令的響應消息后,通過第二路徑發送攜帶有第二路徑標識的第二SCSI預留設置指令給存儲陣列,以使存儲陣列設置與第二路徑標識對應的第二SCSI預留;通過第二路徑對存儲陣列進行I/O數據訪問處理。
文檔編號G06F13/24GK102495815SQ20111036120
公開日2012年6月13日 申請日期2011年11月15日 優先權日2011年11月15日
發明者卿翔, 李小華 申請人:成都市華為賽門鐵克科技有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 新兴县| 怀来县| 漳州市| 琼中| 简阳市| 安阳县| 通州区| 军事| 灌云县| 冕宁县| 监利县| 方山县| 岑溪市| 乌审旗| 蓬溪县| 齐齐哈尔市| 固原市| 依安县| 永宁县| 兴山县| 曲水县| 平泉县| 闵行区| 桦甸市| 漯河市| 富平县| 宁晋县| 湖州市| 浦江县| 丰都县| 嵩明县| 赞皇县| 舒兰市| 桓仁| 罗甸县| 佛冈县| 渑池县| 醴陵市| 三穗县| 鹿邑县| 贡觉县|