專利名稱:具有雙控制器的儲存服務裝置及其備份方法
技術領域:
本發明涉及一種對服務器的數據備份方法,特別是涉及一種具有雙控制器的儲存 服務裝置及其備份方法。
背景技術:
為了能增加儲存設備的存取效能,已有人提出了具有雙控制器(dualcontroller) 的一種儲存服務裝置。相對于單控制器而言,雙控制器可以同時間提供多個客戶端相同的 服務。以往對于雙控制器的儲存服務裝置為了能確保多個客戶端可以具有相同的操作 環境,所以采用了一種對等環境功能(same view)。對等環境功能主要是客戶端連結至儲存 設備時,客戶端不會因為所提供服務的控制器不同而有不同的操作環境及服務。舉例來說, 當系統在第一控制器中創建了一個虛擬設備(virtual disk)時,若其它的客戶端通過第二 控制器連結至存儲服務設備的話,其它客戶端也可以看到此虛擬設備。除了對等環境功能外,為了能讓雙控制器在存取資料時可以確保雙控制器中的資 料同步,所以提出了“鏡射快取”(mirror cache)功能。鏡射快取就是在每一個控制器中都 具有所屬的高速緩存,當第一控制器接收/取出數據時會將暫存于高速緩存中的數據復制 一份到第二控制器所屬的高速緩存中,藉以確保兩個控制器所具有的數據是一致的。而且 當有兩個控制器有一個出現錯誤時,存儲服務設備可以由另一個控制器所屬的高速緩存中 取回遺失的數據。并且為保持兩個控制器的索引頁的一致性,現有技術會將配置文件與登入文件存 放至閃存(Flashrom)或是硬盤中。雖然可以有效的達到儲存的目的,但是對于保存的安全 性而言卻有其危險。以儲存在閃存中而言,因為閃存的存取次數有限。一旦閃存損壞時,會 因為相關數據的遺失使得整個儲存系統崩潰。以硬盤為例,因為硬盤是屬于機械存取的方 式,所以硬盤在動作的當時是無法被移動的,否則硬盤會容易被毀損。
發明內容
鑒于以上的問題,本發明的主要目的在于提供一種具有雙控制器的儲存服務裝置,用以對服務器的事件登入日志與配置文件提供對等環境服務。為了實現上述目的,本發明提供了一種具有雙控制器的儲存服務裝置,用以對一 服務器的一事件登入日志與一配置文件提供對等環境服務,其特征在于,該儲存服務裝置 包括有一第一控制模塊,其還包括有一第一內存模塊與一第一閃存,其儲存一索引頁,其 用以記錄一虛擬設備在該儲存服務裝置中的存取地址;一第二控制模塊,其電性連接于該第一控制模塊,該第二控制模塊還包括有一第 二內存模塊與一第二閃存,其儲存另一該索引頁;一電池單元,其電性連結于該第一內存模塊與該第二內存模塊;以及
一基本輸入/輸出系統,電性連結于該電池單元、該第一控制模塊與該第二控制 模塊,該基本輸入/輸出系統中還包括一備份程序,當該服務器發生斷電時,該基本輸入/ 輸出系統執行該備份程序發送一硬件中斷信號至該電池單元,用以提供給該第一內存模塊與該第二內存模 塊的運作電力;對該第一內存模塊的該索引頁與該第二內存模塊的該索引頁進行同步;以及將更新后的該索引頁分別記錄至該第一閃存與該第二閃存。所述的具有雙控制器的儲存服務裝置,其中,該索引頁包括配置文件、登入文件、 內存頁的地址、內存頁的鎖與內存頁的更新時間。所述的具有雙控制器的儲存服務裝置,其中,還包括一索引頁檢查程序,其包括以 下步驟當該儲存服務裝置啟動后,分別檢查該第一內存模塊的該索引頁與該第二內存模 塊的該索引頁是否存在;若該第一內存模塊的該索引頁與該第二內存模塊的該索引頁均不存在時,則重新 建立該第一內存模塊的該索引頁與該第二內存模塊的該索引頁;以及若該第一內存模塊的該索引頁與該第二內存模塊的該索引頁僅有一個存在時,則 將存在的該索引頁同步至另一內存模塊中。所述的具有雙控制器的儲存服務裝置,其中,該第一控制模塊與該第二控制模塊 通過串行小型計算機接口或以太網絡進行連接。所述的具有雙控制器的儲存服務裝置,其中,還包括有一定時備份程序,其包括以 下步驟于到達一預定時間時,將該第一內存模塊的該索引頁與該第二內存模塊的該索引 頁進行同步;以及將更新后的該索引頁分別記錄至該第一閃存與該第二閃存。從本發明的另一觀點,本發明提出一種對雙控制器的儲存服務裝置的備份方法, 雙控制器具有彼此建立通訊的第一控制器與一第二控制器,第一控制器中配置有第一內存 模塊與第一閃存,第二控制器中配置有第二內存模塊與第二閃存。為了實現上述目的,本發明提供了一種對雙控制器的儲存服務裝置的備份方法, 該雙控制器具有彼此建立通訊的一第一控制器與一第二控制器,該第一控制器中配置有一 第一內存模塊與一第一閃存,該第二控制器中配置有一第二內存模塊與一第二閃存,其特 征在于,該備份方法包括以下步驟當一服務器發生斷電時,發送一硬件中斷信號至一電池單元,用以提供給該第一 內存模塊與該第二內存模塊的運作電力;對該第一內存模塊的一索引頁與該第二內存模塊的該索引頁進行同步;以及將更新后的該索引頁分別記錄至該第一閃存與該第二閃存。本發明提供了 一種結合電池備份與遠程遙控直接內存存取的備份方法,用以對具 有多控制器的服務器進行數據的備份與同步。本發明除了可以定時的對各控制器所屬的配 置文件進行備份外,更提供了在斷電的同時對上述的配置文件進行備份與同步。如此一來, 可以有效地提高服務器的對等環境的效能。
以下結合附圖和具體實施例對本發明進行詳細描述,但不作為對本發明的限定。
圖1為本發明的架構示意圖;圖2為本發明的運作流程示意圖;圖3為本發明的索引頁檢查程序運作流程示意圖;圖4為本發明的定時備份程序運作流程示意圖;圖5為數據寫入流程圖。
其中,附圖標記110 第一控制模塊111 第一內存模塊112 第一閃存120 第二控制模塊121 第二內存模塊122 第二閃存130 電池單元140 基本輸入/輸出系統150 備份程序
具體實施例方式下面結合附圖和具體實施方式
對本發明的技術方案作進一步更詳細的描述。請參考圖1所示,其為本發明的架構示意圖。在本發明的儲存系統中包括有第 一控制模塊110、第二控制模塊120、電池單元130、基本輸入/輸出系統140 (Basic Input/ Output System,BIOS)與備份程序150。第一控制模塊110中還包括有第一內存模塊111與 第一閃存112。第一控制模塊110中包括有索引頁,索引頁用以記錄虛擬設備在儲存設備中 的存取地址。第二控制模塊120電性連接于第一控制模塊110。第一控制模塊110與第二 控制模塊120可以通過串行小型計算機接口(Serial-Attached SCSI, SAS)或以太網絡進 行連接。第二控制模塊120還包括有第二內存模塊121與第二閃存122,第二控制模塊120 儲存另一個索引頁。電池單元130電性連結于第一內存模塊111與第二內存模塊121 ;基 本輸入/輸出系統140電性連結于電池單元130、第一控制模塊110與第二控制模塊120。 基本輸入/輸出系統140中還包括備份程序150。為提高具有多控制器儲存系統的數據保存可靠性,在此利用遠程遙控直接內存存 取(Remote Direct Memory Access,RDMA)與電池備份(Battery Back)。遠程遙控直接內 存存取是一種遠程內存的映像手段,可以通過因特網或其它連接方式將多控制器所屬的內 存進行同步映像。當有一個控制器的所屬檔案文件被修改時,其它控制器的檔案文件也可 以被更新。而電池備份是一種保證儲存系統在斷電的時候也可以保存控制器的檔案文件。當儲存服務裝置發生斷電時,基本輸入/輸出系統140會執行備份程序150,用以 對各控制器的配置文件與登入文件進行同步與備份。請參考圖2所示,其為本發明的運作 流程示意圖。
步驟S210 在儲存服務裝置啟動后,執行索引頁檢查程序;步驟S220 執行定時備份程序,用以定時的同步與備份各控制器的索引頁;步驟S230 當服務器發生斷電時,執行發備份程序送硬件中斷信號至電池單元, 用以提供給第一內存模塊與第二內存模塊的運作電力;步驟S240 對第一內存模塊的索引頁與第二內存模塊的索引頁進行同步;以及步驟S250 將更新后的索引頁分別記錄至第一閃存與第二閃存。在啟動服務器后,每一個控制器會開始執行索引頁檢查程序。請參考圖3所示,其 為本發明的索引頁檢查程序運作流程示意圖。索引頁檢查程序包括以下步驟步驟S211 當儲存服務裝置啟動后,分別檢查第一內存模塊的索引頁與第二內存 模塊的索引頁是否存在;步驟S212 若第一內存模塊的索引頁與第二內存模塊的索引頁均不存在時,則重 新建立第一內存模塊的索引頁與第二內存模塊的索引頁;以及步驟S213 若第一內存模塊的索引頁與第二內存模塊的索引頁僅有一個存在時, 則將存在的索引頁同步至另一內存模塊中。在本發明中建立索引頁的方式可以依據不同的操作系統作適應性的調整。以 Linux操作系統來說,建立索引頁通過Linux的內核(kernel),在內存的低端位置保留索引 頁的地址。這樣可以保證每次服務器啟動時都會在相同的物理地址上建立索引頁。索引頁 中包括有配置文件、登入文件、虛擬設備所使用的內存頁的地址、內存頁的鎖(lock)與內 存頁的更新時間。在完成上述步驟后,服務器會定時的執行備份程序150。備份程序150會同步的更 新控制器所屬的配置文件。請參考圖4所示,其為本發明的定時備份程序運作流程示意圖。 定時備份程序150包括以下步驟步驟S221 于到達預定時間時,將第一內存模塊的索引頁與第二內存模塊的索引 頁進行同步;以及步驟S222 將更新后的索引頁分別記錄至第一閃存與第二閃存。在本發明中,第一控制模塊110與第二控制模塊120通過串行小型計算機接口 (Serial-Attached SCSI, SAS)或以太網絡進行連接。在進行定時備份程序150的過程中, 另外會實時的監控每一控制器是否存活。若僅有一個控制器存活時,服務器會使用時間較 新的同步時間較舊的配置文件作為更新之用。在對多控制器的配置文件進行更新過程中還包括以下步驟,還請同時配合圖5所 示步驟S223 選擇一個控制器,并根據內存頁的寫入地址,獲取欲寫入地址的內存 頁的鎖;步驟S224 若無法取得上述內存頁的鎖,則延遲寫入的時間;步驟S225 若取得上述內存頁的鎖,則對另一控制器上鎖;步驟S226 對所選擇的控制器的內存頁寫入相關數據與更新時間;步驟S227 將所選擇的控制器的內存頁同步至另一控制器;以及步驟S228 重復對其他控制器進行同步,直至所有的控制器完成后將所有的控制器解鎖。
本發明提供了一種結合電池備份與遠程遙控直接內存存取的備份方法,用以對具 有多控制器的服務器進行數據的備份與同步。本發明除了可以定時的對各控制器所屬的配 置文件進行備份外,更提供了在斷電的同時對上述的配置文件進行備份與同步。如此一來, 可以有效地提高服務器的對等環境的效能。
當然,本發明還可有其他多種實施例,在不背離本發明精神及其實質的情況下,熟 悉本領域的技術人員當可根據本發明作出各種相應的改變和變形,但這些相應的改變和變 形都應屬于本發明所附的權利要求的保護范圍。
權利要求
一種具有雙控制器的儲存服務裝置,用以對一服務器的一事件登入日志與一配置文件提供對等環境服務,其特征在于,該儲存服務裝置包括有一第一控制模塊,其還包括有一第一內存模塊與一第一閃存,其儲存一索引頁,其用以記錄一虛擬設備在該儲存服務裝置中的存取地址;一第二控制模塊,其電性連接于該第一控制模塊,該第二控制模塊還包括有一第二內存模塊與一第二閃存,其儲存另一該索引頁;一電池單元,其電性連結于該第一內存模塊與該第二內存模塊;以及一基本輸入/輸出系統,電性連結于該電池單元、該第一控制模塊與該第二控制模塊,該基本輸入/輸出系統中還包括一備份程序,當該服務器發生斷電時,該基本輸入/輸出系統執行該備份程序發送一硬件中斷信號至該電池單元,用以提供給該第一內存模塊與該第二內存模塊的運作電力;對該第一內存模塊的該索引頁與該第二內存模塊的該索引頁進行同步;以及將更新后的該索引頁分別記錄至該第一閃存與該第二閃存。
2.根據權利要求1所述的具有雙控制器的儲存服務裝置,其特征在于,該索引頁包括 配置文件、登入文件、內存頁的地址、內存頁的鎖與內存頁的更新時間。
3.根據權利要求1所述的具有雙控制器的儲存服務裝置,其特征在于,還包括一索引 頁檢查程序,其包括以下步驟當該儲存服務裝置啟動后,分別檢查該第一內存模塊的該索引頁與該第二內存模塊的 該索引頁是否存在;若該第一內存模塊的該索引頁與該第二內存模塊的該索引頁均不存在時,則重新建立 該第一內存模塊的該索引頁與該第二內存模塊的該索引頁;以及若該第一內存模塊的該索引頁與該第二內存模塊的該索引頁僅有一個存在時,則將存 在的該索引頁同步至另一內存模塊中。
4.根據權利要求1所述的具有雙控制器的儲存服務裝置,其特征在于,該第一控制模 塊與該第二控制模塊通過串行小型計算機接口或以太網絡進行連接。
5.根據權利要求1所述的具有雙控制器的儲存服務裝置,其特征在于,還包括有一定 時備份程序,其包括以下步驟于到達一預定時間時,將該第一內存模塊的該索引頁與該第二內存模塊的該索引頁進 行同步;以及將更新后的該索引頁分別記錄至該第一閃存與該第二閃存。
6.一種對雙控制器的儲存服務裝置的備份方法,該雙控制器具有彼此建立通訊的一第 一控制器與一第二控制器,該第一控制器中配置有一第一內存模塊與一第一閃存,該第二 控制器中配置有一第二內存模塊與一第二閃存,其特征在于,該備份方法包括以下步驟當一服務器發生斷電時,發送一硬件中斷信號至一電池單元,用以提供給該第一內存 模塊與該第二內存模塊的運作電力;對該第一內存模塊的一索引頁與該第二內存模塊的該索引頁進行同步;以及 將更新后的該索引頁分別記錄至該第一閃存與該第二閃存。
全文摘要
本發明公開了一種具有雙控制器的儲存服務裝置及其備份方法,用以對服務器的事件登入日志與配置文件提供對等環境服務。儲存服務裝置中包括第一控制模塊、第二控制模塊、電池單元、基本輸入/輸出系統與備份程序。當服務器發生斷電時,執行以下備份程序發送硬件中斷信號至電池單元,用以提供給第一內存模塊與第二內存模塊的運作電力;對第一內存模塊的索引頁與第二內存模塊的索引頁進行同步;將更新后的索引頁分別記錄至第一閃存與第二閃存。除了定時的對各控制器的配置文件進行備份,更提供在斷電時對配置文件進行備份與同步。
文檔編號G06F11/14GK101799777SQ200910006280
公開日2010年8月11日 申請日期2009年2月10日 優先權日2009年2月10日
發明者張旭明, 陳玄同 申請人:英業達股份有限公司