亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

用于提高系統(tǒng)故障恢復性能的主要與輔助虛擬化軟件映像之間的分組鏡像的制作方法

文檔序號:6349811閱讀:216來源:國知局
專利名稱:用于提高系統(tǒng)故障恢復性能的主要與輔助虛擬化軟件映像之間的分組鏡像的制作方法
技術領域
一個示例性方面涉及提高系統(tǒng)故障恢復性能。更具體地,一個示例性方面涉及在 (一個或多個)高可用性(HA)軟件環(huán)境中的提高的系統(tǒng)故障恢復性能。
背景技術
使用當前技術水平的虛擬機(VM)平臺和技術進行的軟件應用復制是向軟件應用用戶提供高可用性保證的非常強大且靈活的方式。應用供應商可以利用VM技術通過創(chuàng)建軟件應用的同時但彼此獨立運行的多個映像(image)(或拷貝)來向其解決方案提供可靠性。這些映像可以運行在同一實體設備上,例如通用應用服務器,或者運行在多個分離開的 VM容器內,或者它們可以跨越分離開的VM容器中的多個實體計算機而被開發(fā)。存在多種VM 復制方案,但是一般地,VM解決方案具有為用戶遞送軟件服務的主要軟件映像,并且具有位于備用服務器處的在發(fā)生故障的情況中可接任主要軟件映像的輔助或第三備份映像。備份映像一般在離散時間間隔處被同步,以更新備份服務器的數據結構和數據庫,從而跟蹤自數據同步更新上次發(fā)生時起所發(fā)生的改變。該同步被稱為“提交”(commit),并且這些解決方案極大地提高了軟件應用供應商保證其用戶將接收到對軟件應用服務的可靠訪問的能力。在高可用性環(huán)境中,主要(主動)和輔助(被動)系統(tǒng)一起工作來確保在緊湊鎖步 (lock step)(例如tandem(公司名)和stratus (公司名)容錯系統(tǒng))或寬松鎖步中(例如不太昂貴的集群)的狀態(tài)的同步性。只要系統(tǒng)的某個層級存在狀態(tài)改變,主要系統(tǒng)就將概括狀態(tài)(summary state)發(fā)送給輔助系統(tǒng),輔助系統(tǒng)使用該概括狀態(tài)將其狀態(tài)調節(jié)為與主要系統(tǒng)同步。當主要系統(tǒng)在能夠發(fā)送自上次檢查點起累積的任何信息之前發(fā)生故障時, 該信息通?;谄浔唤邮盏降娜掌诙惠o助系統(tǒng)本地地重放,并且輔助系統(tǒng)試圖在接任作為主要系統(tǒng)之前同步其自身。

發(fā)明內容
然而,在軟件應用的VM復制中存在一個需要解決方案的重要問題。該問題是在主要系統(tǒng)發(fā)生故障時引起的在故障恢復期間在備用服務器處的分組丟失。目前總是存在進入主要系統(tǒng)的大量分組流量中的在故障恢復間隔期間丟失的某些量。在現有解決方案中,故障恢復期間的這種分組丟失是不可避免的。問題在于,當該信息丟失時,備用服務器具有上次提交的狀態(tài),因此該備用服務器將具有這樣的老舊狀態(tài)信息,其代表僅對于上次提交時的系統(tǒng)狀態(tài)而言是準確的系統(tǒng)狀態(tài)??朔搯栴}的嘗試的一個現有示例是鏈路彈回(link bouncing)。Remus (http:// people, cs. ubc. ca/ brendan/papers/remus-nsdi08. pdf)試圖通過將傳出分組緩沖在主動緩沖器中來解決該問題。然而,Remus實現方式遭受了巨大的性能損失,因此其在大多數產品軟件環(huán)境中不可用。在Remus中,性能損失的主因是正在丟失的網絡分組的傳輸被
4延遲直到下一檢查點/提交為止。從先前的事實來看,用于通過數據進行故障恢復的基礎實踐是使用檢查點間隔, 在檢查點間隔期間,使得數據在備份服務器上是當前數據。然而如上面所討論的,這些可用解決方案或者在故障恢復期間丟失數據,或者最好也只不過是它們在故障恢復期間緩沖傳入數據,但它們會遭受極大的性能損失。根據一個示例性實施例,一種系統(tǒng)或機制被構建來實現如下方法要被遞送給運行在主要虛擬機(VM)中的主要軟件應用或系統(tǒng)(例如虛擬化軟件應用)的所有進入數據網絡分組被持續(xù)監(jiān)視,并被網絡復制設備或驅動器(NRD,Network Replication Device or driver)分支或拷貝,以用于同時遞送給運行在備用系統(tǒng)或VM上的軟件應用的備份映像。 為了實現使應用中斷運行時間減少或變?yōu)榱愕哪康?,該數據實時地或接近實時地被NRD拷貝并遞送給備用應用映像。NRD的第二示例性益處是其能夠使因故障恢復事件期間的分組丟失引起的應用性能下降減少或變?yōu)榱愕哪芰?。一個示例性實施例假設應用了本技術的VM 平臺/系統(tǒng)包括當前的“現有技術水平的”檢查點提交和故障檢測機制。在準備好(一個或多個)檢查點提交和故障檢測系統(tǒng)后,網絡復制NRD技術的基本邏輯可被實現為網絡復制驅動器,該網絡復制驅動器完全由共同駐留(co-resident) 在容納軟件應用映像和VM的一個或多個服務器上運行的軟件和/或硬件來實現。替代地,或許在另一示例性實現方式中,NRD可被實現為(一個或多個)單獨的“線路插件”(bump-in-the-wire)嵌入式計算設備,該嵌入式計算設備實體上獨立于容納軟件應用 VM映像的一個或多個服務器被提供并部署。在容納主要和輔助軟件應用的虛擬化映像的主要和輔助實體服務器的超集(superset)情況中,一個示例性實施例還可以包括主要(主動)和輔助(備用)NRD。NRD可以在主動和/或備用服務器或裝備中或者在網絡中的某個其它位置處運行。根據一個示例性實施例,主動NRD將拷貝到達VM的分組,將目的地地址變?yōu)閭溆媚康牡?,并且將分組轉發(fā)給備用服務器設備。在此示例性實施例中,備用目的地可以是備用 DOMO (第零域,Domain Zero)位置,其中,該系統(tǒng)在管理程序環(huán)境中被實現。然而,一般地, 該位置可以是系統(tǒng)內的任何位置。備用NRD如下這樣來緩沖分組-在檢查點提交時,備用NRD將清除直到提交為止的緩沖器網絡分組。-在故障檢測時,備用NRD將緩沖器分組遞送給用于虛擬機的新被激活的備用設備。示例性實施例使用一組分離開的線路插件緩沖設備,其中操作在概念上是相同的。但在實現時,分組在到達運行了主要VM的主要服務器之前被主要“插件(bump),,設備截取。它們然后被分支到第二線路插件設備以在故障恢復的情況中進行緩沖以用于備份/ 備用軟件映像。利用線路實現方式中的插件,當主要設備發(fā)生故障時,即使是嚴重的硬件故障,插件設備也可以確保去往主要設備的進入流量不丟失。在發(fā)生故障時,輔助映像然后可被啟動并且開始處理流量,該輔助映像具有如下能力由于去往主要映像的進入數據完全沒有丟失,因此能完全復原(recover)主要映像的狀態(tài)。另外,由于插件設備不限于僅在離散的、檢查點提交間隔處形成數據鏡像,因此不會犧牲性能。作為此情形的一部分,輔助插件設備和主要插件設備在故障恢復時可以交換角色,從主要插件設備交換為輔助插件設備,反之亦然。在發(fā)生故障之后像主要插件設備那樣動作的輔助插件設備可以開始將數據鏡像到先前作為主要插件設備并且現在起輔助插件設備的作用的插件設備。同時,發(fā)生故障的主要服務器可被替換并被重啟,同時這兩個插件設備可繼續(xù)未經中斷的操作。一旦主要服務器被替換/重啟,系統(tǒng)現在就可以進行恢復“反向置換 (swapback) ”,其中,主動“備份”服務器將狀態(tài)、流量和所有權會話操作提交回已被替換/ 重啟的“主要”服務器。再次地,這將能夠再次平衡利用兩個實體上分離的插件設備,而不會丟失任何狀態(tài)或可用性。與在前解決方案相比,本方法的一個示例性優(yōu)點在于,即使面對著嚴重的主要硬件或軟件映像故障,其也能夠使多映像虛擬化軟件應用向軟件應用用戶提供連續(xù)的未被中斷的服務。另一示例性方面涉及將去往虛擬化軟件映像的進入流量的處理與該虛擬化軟件應用的主要操作分離開。另外,其它感興趣方面可在如下想法中找到在實體上將該流量處理分離到執(zhí)行該協作緩沖操作的獨立部署的線路插件設備。另一示例性實施例涉及VM環(huán)境中的網絡復制,具體地涉及VM復制。將網絡信息、 應用數據以及一般地任何類型的數據(系統(tǒng)數據等)中的一個或多個存儲在緩沖器中的VM 復制正在成為提供虛擬化系統(tǒng)中的高訪問性的一種主導方式。然而,VM復制存在一個大問題,并且尚沒有完美的解決方案。示例性問題是故障恢復期間的分組丟失。由于在故障恢復期間存在VM中斷運行時間并且備用設備通常在每個檢查點間隔處被同步,因此故障恢復期間的分組丟失是不可避免的。因此,一個示例性實施例是在(一個或多個)備用服務器處實時地緩沖網絡分組。 這至少提供了系統(tǒng)性能的大幅增長。然而該假設是在系統(tǒng)被提供有由其它裝置進行的檢查點提交和故障檢測的情況下來預測的。根據示例性實施例,用于網絡復制的基本邏輯可被實現為網絡復制驅動器。NRD可以在主動服務器和備用服務器中的一個或多個中運行,并且可以可選地位于通信或計算網絡的某個其它位置。主動NRD將拷貝進入VM的分組,將目的地地址變?yōu)閭溆玫刂?,并且將分組發(fā)送給備用設備或服務器。備用NRD將緩沖這些分組并且進行如下操作-在檢查點提交時,備用NRD清除直到檢查點為止所緩沖的網絡分組。-在故障檢測時,備用NRD將所緩沖分組遞送給新被激活的虛擬機。另一方面涉及一種技術,其中,不是緩沖傳出分組,而是傳入網絡分組被拷貝到備用機器、服務器、設備或虛擬機。傳入分組中的一些在故障恢復期間不可避免地未抵達主動機器,因為該設備在那時可能不存在。然而,分組被保存在備用機器的緩沖器中。在備用機器接任之后,所保存的網絡分組可被重放給新激活的機器或虛擬機,以使得因網絡分組丟失引起的狀態(tài)丟失最小化。更具體地,虛擬機狀態(tài)丟失以如下方式發(fā)生。假設僅存在通過檢查點進行的虛擬機存儲器復制。在時間T時,假設主動設備處于第N個檢查點的中間。備用設備具有上一檢查點(第N-I個)的狀態(tài)。在當前的第N個檢查點期間,主動VM從確認該分組的客戶端接收到稱為“丟失分組”的一個分組,然后在提交當前檢查點之前不知何故停止運轉。然后, 備用設備將從上一檢查點N-I的狀態(tài)起繼續(xù)。因此,新被激活的VM現在丟失了稱為“丟失分組”的分組。根據示例性實施例,備用設備可以通過重放或讀取丟失分組來恢復丟失分組,以重建故障之前的狀態(tài)。在高可用性環(huán)境中,主要(主動)和輔助(被動)系統(tǒng)一起工作來確保緊湊鎖步 (例如tandem和stratus容錯系統(tǒng))或寬松鎖步中(例如不太昂貴的集群)的狀態(tài)的同步性。只要系統(tǒng)的某個層級存在狀態(tài)改變,主要系統(tǒng)就將概括狀態(tài)發(fā)送給輔助系統(tǒng),輔助系統(tǒng)使用該概括狀態(tài)將其狀態(tài)調節(jié)為與主要系統(tǒng)同步。當主要系統(tǒng)在能夠發(fā)送自上次檢查點起累積的任何信息之前發(fā)生故障時,該信息基于其被接收的日期而被輔助系統(tǒng)本地地重放, 并且輔助系統(tǒng)試圖在接任主要系統(tǒng)之前將其自身與外部同步。本技術的示例性方面將這后一種的非檢查點式(imcheckpointed)數據立即復制到輔助設備,而非保持該數據并且以后從主要設備發(fā)送該數據,這導致如下兩個缺點一個缺點是其占據了發(fā)送隊列,第二個缺點是當檢查點從主要設備被發(fā)送時導致了額外的阻塞,在Remus類型的高可用性的情況中,其導致在高主動性時間期間來自主動主要設備的存儲器資源耗盡。因此,花費用于將網絡數據報較早地分支到輔助設備上去的初始開銷被避免以上列舉的缺點的益處抵消。當然,當來自主要設備的狀態(tài)-檢查點消息到達時,這些所緩沖數據報在輔助設備在其自身中提交了該狀態(tài)之后被輔助設備丟掉。取決于特定配置,這里描述的技術可以提供多個優(yōu)點。將從這里包含的公開中清楚這些以及其它優(yōu)點。短語“至少一個”、“一個或多個”以及“和/或”是在運用時既連接又分離的開放式表達。例如,如下表達“A、B和C中的至少一個”、“A、B或C中的至少一個”、“A、B和C中的一個或多個”、“A、B或C中的一個或多個”以及“A、B和/或C”中的每一種的意思是A單獨的、B單獨的、C單獨的、A和B —起、A和C 一起、B和C 一起或者A、B和C 一起。術語“一”或“一個”實體指代一個或多個該實體。這樣,術語“一”(或“一個”)、 “一個或多個”和“至少一個”在這里可以互換使用。還要注意,術語“包含”、“包括”和“具有”可以互換使用。如這里使用的術語“自動的”及其變體是指當任何處理或操作被執(zhí)行時,在沒有實質性人為輸入(material human input)的情況下完成該處理或操作。然而,如果輸入是在處理或操作的執(zhí)行之前被接收的,則即使處理或操作的執(zhí)行使用了實質性的或非實質性的人為輸入,處理或操作也可以是自動的。如果人為輸入對處理或操作將如何被執(zhí)行產生了影響,則認為該輸入是實質性的。同意處理或操作的執(zhí)行的人為輸入不被認為是“實質性的”。如這里使用的術語“計算機可讀介質”是指參與向處理器提供指令供執(zhí)行的任何有形存儲和/或傳輸介質。這種介質可以采取許多形式,包括但不限于非易失性介質、易失性介質以及傳輸介質。非易失性介質例如包括NVRAM或者磁盤或光盤。易失性介質包括動態(tài)存儲器,例如主存儲器。計算機可讀介質的常見形式例如包括軟盤、柔性磁盤、硬盤、磁帶或任何其它磁介質,磁光介質、CD-ROM、任何其它光介質,打孔卡、紙帶、任何其它具有孔圖案的物理介質,RAM、PROM和EPROM,FLASH-EPR0M,類似存儲卡的固態(tài)介質,任何其它存儲器芯片或存儲器盒,如下面將描述的載波,或者計算機可以讀取的任何其它介質。電子郵件的數字文件附件或其它自容式信息文檔或文檔組被認為是等效于有形存儲介質的分布式介質。當計算機可讀介質被配置為數據庫時,將明白,該數據庫可以是任何類型的數據庫,例如關系數據庫、層次化數據庫、面向對象的數據庫等等。雖然電路交換或分組交換類型的通信可被用于本系統(tǒng),然而這里公開的概念和技術也適用于其它協議。因此,認為本發(fā)明包括其中存儲了本技術的軟件實現方式的有形存儲介質或分布式介質以及現有技術認可的等同物和后繼介質。這里使用的術語“確定”、“計算”和“運算”及其變體可互換使用,并且包括任何類型的方法、處理、數學操作或技術。這里使用的術語“模塊”是指能夠執(zhí)行與該元件相關聯的功能的任何公知的或以后開發(fā)出的硬件、軟件、固件、人工智能、模糊邏輯或硬件與軟件的組合。此外,雖然根據示例性實施例描述了本發(fā)明,然而,應當理解,可以單獨地要求保護本發(fā)明的各個方面。前面是本技術的簡化概述以提供對本技術各個方面的了解。該概述既不是對本技術及其各個實施例的廣泛性綜述也不是全面性綜述。既不旨在標識出本技術的重要的或關鍵性元素也不旨在記述本技術的范圍,而是以簡化的形式將本技術的所選概念呈現作為對下面將呈現的更詳細描述的介紹。如將會理解的,通過單獨或組合地利用上面闡述的或下面將詳細描述的一個或多個特征,還可以作出本技術的其它實施例。


將參考附圖詳細描述示例性實施例,在附圖中圖1圖示出了示例性故障恢復系統(tǒng);圖2-圖4圖示出了示例性時序圖;以及圖5圖示出了故障恢復系統(tǒng)的示例性操作方法。
具體實施例方式下面將結合系統(tǒng)故障恢復環(huán)境描述本技術的示例性實施例。雖然很適合用于VM, 但是示例性方面不限于用于任何特定類型的設備或系統(tǒng)元件配置,并且本領域技術人員將認識到,所公開的技術可以在希望提供系統(tǒng)故障恢復的任何環(huán)境中使用。還將結合軟件、模塊以及相關聯的硬件和(一個或多個)網絡來描述示例性系統(tǒng)和方法。為了避免不必要地模糊本公開,下面的描述省略了可能以框圖形式示出的、公知的或者以其他方式概括的公知結構、組件和設備。為了說明的目的,闡述了多個細節(jié)以提供對本技術的透徹理解。然而,應當理解, 本技術可以以這里闡述的具體細節(jié)以外的多種方式來實施??梢允褂枚喾N變更和修改??梢蕴峁┗蛞蟊Wo本技術的一些特征而不需要提供或要求保護其它特征。已結合系統(tǒng)故障恢復改進來描述了示例性系統(tǒng)和方法。然而,為了不必要地模糊本公開,本說明書省略了多個已知結構和設備。這種省略不應被解釋為對權利要求的范圍的限制。闡述了具體細節(jié)以提供對本技術的理解。然而,應當理解,本技術可以以這里闡述的具體細節(jié)以外的多種方式來實踐。此外,雖然這里圖示出的示例性實施例示出了系統(tǒng)的各個組件共處一地 (collocated);然而系統(tǒng)的某些組件可以遠程地位于分布式網絡(例如LAN、有線網絡和/或因特網)中的遠處,或者專用系統(tǒng)內。因此,應當理解,系統(tǒng)的組件可被組合為一個或多個設備,例如網關,或者共處于分布式網絡的特定節(jié)點上,該分布式網絡例如是模擬和/或數字通信網絡、分組交換網絡、電路交換網絡或線纜網絡。圖1概述了示例性計算環(huán)境1。計算環(huán)境1包括由一個或多個網絡10和鏈路5 相連的主動設備100和備用設備200。主動設備100和備用設備200的每個包括經由一個或多個網絡10和鏈路5相連的提交模塊(110、210)、設備狀態(tài)模塊(120、220)、( 一個或多個)處理器(130、230)、存儲器(140、240)、服務器(150、250)、(一個或多個)數據庫(160、 260)、可選緩沖器(170、270)以及NRD模塊(180、280)??蛇x緩沖器175也可以位于計算環(huán)境1中的任何地方,其中當前是主動的設備通常經由網絡10和鏈路5從一個或多個客戶端 2接收數據分組。在操作中,主要系統(tǒng)被激活(主動設備/系統(tǒng))。根據第一示例性實施例,主動設備是設備100,備用設備是設備200。在與提交模塊110的協作下,在預定時間處,提交模塊 110執(zhí)行提交從而保存主動設備100的狀態(tài)。(參見圖2-圖4)當完成該提交時,在處理器 130和可選緩沖器170或175的協作下,來自客戶端2的所有進入數據分組都被拷貝到備用設備200。這些分組可以被存儲在緩沖器本身或者例如數據庫沈0中的一個或多個中。更具體地,NRD模塊180監(jiān)視來自客戶端2的所有傳入數據分組,所有的這些傳入數據分組持續(xù)地被NRD模塊180監(jiān)視并且被分支或鏡像以用于同時遞送到備用設備,該備用設備維護在主動設備100中運行的(一個或多個)軟件應用的備份映像。這些數據分組可被NRD模塊180實時地分支并遞送到備用設備200,其一個示例性目的是實現使這兩個設備之間的應用中斷運行時間減少或為零。如所討論的,NRD模塊180可以以例如共同駐留在容納有軟件應用和VM映像的 (一個或多個)服務器或設備上運行的軟件或硬件實現。在另一示例性實施例中,NRD模塊可被實現為單獨的“線路插件”嵌入式計算設備,該嵌入式計算設備實體上獨立于經由映像來容納軟件應用的一個或多個服務器被提供并部署。在發(fā)生故障的情況中,備用設備200在處理器230和設備狀態(tài)模塊220的協作下, 重放被拷貝的分組以從上次提交重建(restore)到當前狀態(tài)。然后,處理能夠從故障恢復點起繼續(xù),而不會丟失數據分組。此時,備用設備200現在是“主動設備”并且充當主要系統(tǒng)直到發(fā)生故障的主動設備100被復原并恢復在線為止。一旦發(fā)生故障的主動設備100被替換/修復/重啟,系統(tǒng)就可以可選地進行恢復“反向置換”,其中,主動的備用設備200將狀態(tài)、流量和所有權擁有操作提交回被替換/修復/重啟的主動設備100。再次地,這可以在不丟失狀態(tài)或數據分組的情況下進行。 圖2概述了示例性時序圖,該時序圖強調了上次提交被做出的點和時間、被復制緩沖的分組被存儲的時段、以及備用設備利用被緩沖數據從發(fā)生故障點開始繼續(xù)操作的時間點。圖3和圖4概述了關于在主動設備發(fā)生故障之后各個動作如何發(fā)生直到發(fā)生故障的設備重新被激活為止的示例性時間軸??傮w上,圖3和圖4強調在主動設備100發(fā)生了故障的情況中例如當備用設備200正充當“主要或主動”設備時進行的處理。用于從備用設備200到主動設備100的恢復反向置換的處理在操作上與主動設備100是“主動或主要”設備或系統(tǒng)時相同。 如所討論的,緩沖器(170、175、270)可位于計算環(huán)境1內的任何點處。另外,假若緩沖器能夠在主動設備發(fā)生故障的情況中將被復制緩沖的分組轉發(fā)給(一個或多個)備用設備或系統(tǒng),則可以根據需要提供多個緩沖器。取決于計算系統(tǒng)1的特定環(huán)境,緩沖器還可以與存儲器140、MO以及數據庫160、沈0中的一個或多個協作。圖5概述了用于在軟件應用環(huán)境中提供高可用性的示例性方法。具體地,控制開始于步驟SlOO并且繼續(xù)到步驟Sl 10。在步驟Sl 10,主要系統(tǒng)被激活。接下來,在步驟S120, 由主要系統(tǒng)執(zhí)行提交以為備用系統(tǒng)保存狀態(tài)。然后,在步驟S130,到主要系統(tǒng)的所有進入流量被拷貝到一個或多個緩沖器或備用系統(tǒng)??刂齐S后繼續(xù)到步驟S140。在步驟S140,判斷是否發(fā)生了故障。如果已發(fā)生了故障,則控制跳至步驟S142。否貝U,控制繼續(xù)到步驟S150。在步驟S150,判斷是否到達下一提交狀態(tài)。如果已到達,則控制跳回步驟S120,否則控制繼續(xù)到步驟S130。在步驟S142,為備用系統(tǒng)拷貝的分組被從上次提交重放到當前狀態(tài)。然后,在步驟S144,備用系統(tǒng)能夠從故障恢復點起開始處理而不會丟失任何數據分組。然后,在步驟 S146,備用系統(tǒng)充當主要系統(tǒng),并且控制繼續(xù)到步驟S148,在步驟S148中,控制序列結束。從前面的描述將理解,出于計算效率的原因,系統(tǒng)的組件可以被布置在分布式組件網絡內的任何位置,而不會影響系統(tǒng)的操作。例如,各個組件可以位于諸如PBX之類的交換機和媒體服務器、網關、線纜供應商、企業(yè)系統(tǒng)、客戶端-服務器環(huán)境、包含一個或多個服務器的分發(fā)者網絡,位于一個或多個通信設備中、一個或多個用戶的駐地(premises)處或它們的某種組合。類似地,系統(tǒng)的一個或多個功能部件可以被分布在(一個或多個)通訊設備和相關聯的計算設備之間。此外,應當理解,諸如鏈路5之類的用于將元件相連的各種鏈路可以是有線或無線鏈路,或者它們的任意組合,或者能夠向相連元件提供數據和/或從相連元件傳輸數據的任何其它已知或以后開發(fā)出的(一個或多個元件)。這些有線或無線鏈路還可以是安全鏈路并且能夠傳輸加密的信息。用作鏈路的傳輸介質例如可以是用于電信號的任何適當的載波,包括同軸電纜、銅線和光纖,并且可以采取聲波或光波的形式,例如在無線電波和紅外數據通信期間生成的那些波。此外,雖然已經關于具體的事件序列討論并圖示說明了流程圖,然而應當明白,可以在對本發(fā)明的操作沒有實質性影響的情況下對該序列進行改變、添加和省略。在又一實施例中,本技術的系統(tǒng)和方法可以結合專用計算機、經編程微處理器或微控制器以及(一個或多個)外圍集成電路元件、ASIC或其它集成電路、數字信號處理器、 硬連線電子電路或邏輯電路(例如分立元件電路)、可編程邏輯器件或門陣列(例如PLD、 PLA、FPGA、PAL)、專用計算機、任何類似裝置等來實現。一般地,能夠實現這里說明的方法的任何(一個或多個)設備或裝置可被用來實現本技術的各個方面??捎糜诒鞠到y(tǒng)的示例性硬件包括計算機、手持設備以及本領域已知的其它硬件。 這些設備的一些包括處理器(例如,單個或多個微處理器)、存儲器、非易失性存儲裝置、輸入設備和輸出設備。此外,包括但不限于分布式處理或組件/對象分布式處理、并行處理或虛擬機處理的替代軟件實現方式還可以被構建來實現這里描述的方法。在又一實施例中,可以結合利用對象的軟件或面向對象的軟件開發(fā)環(huán)境來容易地實現所公開的方法,這些軟件和開發(fā)環(huán)境提供了在各種計算機或工作站平臺上使用的可移植源代碼??商鎿Q地,可以用使用標準邏輯電路或VLSI設計的硬件來部分地或全部地實現所公開的系統(tǒng)。是用硬件還是軟件來實現根據本技術的系統(tǒng)取決于系統(tǒng)的速度和/或效率要求、具體的功能,以及所利用的具體軟件或硬件系統(tǒng)或微處理器或微計算機系統(tǒng)。在又一實施例中,可以用被存儲在存儲介質中,并且在與控制器和存儲器協同操作的經編程通用計算機、專用計算機、微處理器等上運行的軟件來部分地實現所公開的方法。在這些情況中,本技術的系統(tǒng)和方法可以被實現為被嵌入在個人計算機上的程序(例如小應用程序(applet)、JAVA 或CGI腳本)、駐留在服務器或計算機工作站上資源、被嵌
入在專用測量系統(tǒng)或系統(tǒng)組件等中的例程等等。還可以通過將系統(tǒng)和/或方法實體地結合到軟件和/或硬件系統(tǒng)中來實現本系統(tǒng)。雖然本發(fā)明參考特定的標準和協議描述了在實施例中實現的組件和功能,然而, 本發(fā)明不局限于這些標準和協議。這里未提到的其它類似標準和協議是存在的并且認為被包括在本發(fā)明中。此外,這里提到的標準和協議以及這里未提到的標準和協議定期地被更快更有效的具有基本上相同功能的等同物所替代。這些具有相同功能的取代標準和協議被認為是包括在本發(fā)明中的等同物。在各個實施例、配置和方面中,本公開包括基本上如這里示出和描述的組件、方法、處理、系統(tǒng)和/或裝置,包括其各種實施例、子組合以及子集。本領域技術人員在理解了本公開之后將明白如何作出和使用本技術。在各個實施例、配置和方面中,本技術包括在缺少這里未示出和/或描述的項目時或者在其各種實施例、配置或方面中(包括在缺少諸如在先前的設備或處理中為了提高性能、獲得改善并/或減小實現成本所使用的項目時), 提供設備和處理。前面的討論是為了說明和描述的目的而呈現的。前面的討論不旨在將本公開限制到這里公開的一種或多種形式。在前面的詳細描述中,例如,為了簡化本公開,在一個或多個實施例、配置或方面中將本技術的各個特征成組在一起。在除上面討論的那些以外的本技術的替代實施例、配置或方面中,可以將本技術的實施例、配置或方面的特征相組合。這種公開的方法不應被解釋為反映了如下意圖要求保護的技術需要比在每個權利要求中明確記述的特征多的特征。而是,如下面的權利要求所反映的,創(chuàng)造性方面在于比前面所公開的單個實施例、配置或方面的所有特征少。因此,下面的權利要求由此被結合到該詳細描述中,其中,每個權利要求獨立地作為單獨的優(yōu)選實施例。此外,盡管本技術的描述包括了對一個或多個實施例、配置或方面以及某些變更和修改的描述,然而,例如在理解了本公開之后可能落在本領域技術人員的技術和知識內的其它變更、組合和修改也在本公開的范圍內。希望獲得包括了在所允許程度內的替代實施例、配置或方面的權利,其包括針對所要求保護的那些的替代、互換和/或等同的結構、 功能、范圍或步驟,而無論這里是否公開了這些替代、互換和/或等同的結構、功能、范圍或步驟,并且不意圖向公眾貢獻任何可專利的主題。
1權利要求
1.一種用于保存狀態(tài)并減少數據丟失的方法,包括當檢測到主動設備中的提交時,將所有進入數據流量拷貝到一個或多個緩沖器直到下一提交或發(fā)生故障為止; 檢測故障;以及重放被拷貝的數據流量以便將備用設備重建到發(fā)生故障設備的當前狀態(tài)。
2.如權利要求1所述的方法,還包括在所述備用設備處從故障恢復點起開始處理。
3.如權利要求1所述的方法,還包括在所述下一提交時刪除所有被拷貝的進入數據流量。
4.如權利要求1所述的方法,還包括執(zhí)行從所述備用設備到所述主動設備的反向置換。
5.如權利要求1所述的方法,其中,所述主動設備是一個或多個虛擬機、服務器和計算機中的一個或多個。
6.如權利要求1所述的方法,其中,所述備用設備是一個或多個虛擬機、服務器和計算機中的一個或多個。
7.如權利要求1所述的方法,其中,網絡復制設備執(zhí)行所述拷貝。
8.如權利要求7所述的方法,其中,所述網絡復制設備位于所述主動設備的上游。
9.一種或多種用于執(zhí)行權利要求1的各步驟的裝置。
10.一種存儲有指令的計算機可讀存儲介質,當所述指令被運行時使得權利要求1的各步驟被執(zhí)行。
11.一種保存狀態(tài)并減少數據丟失的系統(tǒng),包括網絡復制模塊,當檢測到由主動設備中的提交模塊進行的提交時,所述網絡復制模塊將所有進入數據流量拷貝到一個或多個緩沖器直到下一提交或發(fā)生故障為止; 設備狀態(tài)模塊,檢測故障;以及第二設備狀態(tài)模塊,重放被拷貝的數據流量以便將備用設備重建到發(fā)生故障設備的當前狀態(tài)。
12.如權利要求11所述的系統(tǒng),其中,所述備用設備處的處理從故障恢復點開始。
13.如權利要求11所述的系統(tǒng),其中,所有被拷貝進入數據流量在所述下一提交時被刪除。
14.如權利要求11所述的系統(tǒng),其中,當所述故障被校正時,所述備用設備被置換回所述主動設備。
15.如權利要求11所述的系統(tǒng),其中,所述主動設備是一個或多個虛擬機、服務器和計算機中的一個或多個。
16.如權利要求11所述的系統(tǒng),其中,所述備用設備是一個或多個虛擬機、服務器和計算機中的一個或多個。
17.如權利要求11所述的系統(tǒng),其中,所述網絡復制設備執(zhí)行到所述一個或多個緩沖器的拷貝,所述一個或多個緩沖器與所述主動設備、所述備用設備中的一個或多個共處一地,或者位于網絡節(jié)點上。
18.如權利要求17所述的系統(tǒng),其中,所述網絡復制設備位于所述主動設備的上游。
19.如權利要求17所述的系統(tǒng),其中,所述網絡復制設備位于所述備用設備的上游。
20.如權利要求1所述的系統(tǒng),其中,要被遞送給運行在所述主動設備上的主要虛擬機中的主要軟件應用的所有進入數據流量被持續(xù)監(jiān)視,并且被所述網絡復制模塊拷貝以用于同時遞送給運行在備用系統(tǒng)或虛擬機上的軟件應用的備份映像。
全文摘要
當主要服務器發(fā)生故障時導致在故障恢復期間在備用服務器處出現分組丟失。目前總是存在進入主要系統(tǒng)的分組流量中的在故障恢復間隔期間被丟失某些量。問題在于,當該信息丟失時,備用服務器具有上次提交的狀態(tài),因此該備用服務器將具有這樣的老舊狀態(tài)信息,其代表僅對于上次提交時的系統(tǒng)狀態(tài)而言是準確的系統(tǒng)狀態(tài)。一種解決方案是一種方法,在該方法中,要被遞送給運行在主要虛擬機上的主要軟件應用(例如虛擬化軟件應用)的所有進入數據分組被持續(xù)監(jiān)視,并被網絡復制設備拷貝以用于同時遞送給運行在備用系統(tǒng)上的軟件應用的備份映像。
文檔編號G06F9/455GK102473105SQ201080029848
公開日2012年5月23日 申請日期2010年12月13日 優(yōu)先權日2010年1月4日
發(fā)明者亨俊·李 申請人:阿瓦雅公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1