爱数之介质服务器及介质同步技术
愛數備份產品都包含了很多模塊,介質服務器就是其中之一,它擔負著及其重要的任務。下面從介質服務器的原理、虛擬介質池和介質同步這幾個方面來了解
---------------------------------------------------------
介質服務器簡介
介質服務器
是用于接受來自客戶端的備份數據或其他介質服務器的異地同步數據,并將這些數據進行有組織存放的服務器軟件模塊,同時為截至管理功能提供支持,一般把安裝了介質服務器模塊的機器叫做介質服務器
介質
是安裝了介質服務器模塊的機器上的一個存儲路徑,是存放數據的實際位置,這些存儲路徑必須通過軟件進行配置才能成為介質,才可以進行備份和同步,介質可以是本地磁盤、網絡硬盤等。它是介質服務中的可用存儲,它可根據實際需求設置空間大小,用以存放數據。介質依賴于介質服務器,介質是介質服務器的存在形式,他們的結合能保證備份數據的有效、安全可靠。
D2D2R是指數據從磁盤到磁盤再到遠程的一種容災模式,圖中給出的是一個D2D2R典型的部署。
圖中,介質服務器充當兩個角色,一個是作為備份數據目的地的普通介質服務器,一個是作為介質同步數據目的地的同步介質服務器。不管扮演何種角色,介質服務器的作用與扮演的角色綁定,不能互換的。這樣做的是為了保證數據的可靠性和一致性。
介質服務器的內部構造
介質服務器是以一個系統服務進程的形式進行運作的。它開放了9901和9902端口。其中9901是預留的端口,供其它控制信息使用。9902就是最關鍵的數據端口。
另外,介質服務器啟動的時候需要和控制臺內部的引擎服務器相連。
控制流和數據流走向
當通過Web界面的管理控制臺,點擊 添加介質 操作按鈕時,CGI控制模塊會捕捉到這一操作信息并將該操作請求發送到引擎服務器,引擎服務器再將請求轉發給介質服務器的管理模塊,介質服務器對請求做出相應將結果返回給引擎服務器,引擎服務器再轉發給CGI控制模塊,至此添加介質請求完成。
當要備份數據時,CGI控制模塊捕捉請求操作的信息并將其發送到引擎服務器,引擎服務器接收請求信息并進行分析識別,再將調度信息發送到對應的備份客戶端,客戶端接到調度信息會給予回應,說“:我準備好了,可以開始備份了。。。”引擎服務器收到該回應信息后通知CGI模塊,成功開始備份,隨后,備份數據將從指定的客戶端備份到介質服務器中,同時介質服務器會實時地將備份執行情況和空間信息反饋給引擎服務器。在上述過程中,引擎服務器充當了一個中轉站。
--------------------------------------------------------------
VMP(Virtual Media Pool)虛擬介質池
虛擬介質池,是個邏輯上的概念,它最大的意義就在于將所有的介質服務器和所有介質服務器上的數據統一管理,可以達到提高易用性、提高管理性的效果。
主要作用有以下幾點:
統一路徑訪問:為每個介質服務器上所有存儲介質提供統一入口,為介質服務器群組提供統一入口
可指定存儲介質
VMP的優勢
虛擬介質池的優勢在于它可以實現多個介質服務器在一個統一的界面下管理,非常方便快捷;當介質空間不足時,只要增加新的介質即可擴展總的空間。從最后的這個圖表,我們可以看出,虛擬介質池的性能會隨著客戶端數量的增加而不斷提升
VMP技術-介質服務器選擇算法
通過該算法,可以保證新的任務始終都在最空閑的介質服務器上。
該算法具體如下:首先取出所有介質的可用空間得到總的可用空間,乘以70%,加上所有已經綁定的任務數乘以30%,得出介質服務器的空閑指數,再將所有指數進行比較就能選出最空閑的介質服務器。
-----------------------------------------------------------------
介質同步技術
介質同步主要用于介質服務器上備份數據的同步,
將某個介質服務器上的介質中的備份數據復制到異地介質服務器上,從而達到數據容災的效果。
介質同步功能采用的是異步式技術
所謂異步,是監聽介質上所有文件的變化:創建、刪除、修改密碼、合成備份等。然后每隔一個固定的時段,層疊文件的變化,再將文件同步到目標介質上
介質同步-狀態機制
介質同步的任務有四種狀態,分別為初始化、運行、暫停、和終止,其中,運行狀態和暫停狀態可以相互轉換,而初始化狀態可以轉變成運行狀態和暫停狀態,豐富的狀態機制使得同步過程管理更加方便、高效。
1.初始化狀態
任務剛被創建或者介質剛啟動時的狀態,是任務的最初狀態
掃描文件和進行上一次未完成的動作
2.運行狀態
同步介質服務器上的備份數據到目標介質
3.暫停狀態
任務的暫停有正常暫停和異常暫停兩種,是在任務執行過程中將其置于暫時停止的狀態,可以恢復到運行狀態。
正常暫停
任務不會嘗試自行恢復,須手工才能啟動:任務被管理員暫停,任務在設置的暫停時段內,目的介質空間不足
異常暫停
任務會嘗試恢復同步:介質服務器無法正常連接誒
當服務啟動時,如果按計劃是在暫停狀態,但上次停止時存在斷點信息,會在繼續斷點續傳。
4.任務的終止
當同步任務出現災難性事故的時候任務會切換到終止狀態,終止狀態下,任何操作都不能繼續,文件日志也不會再增長。終止狀態代表了一個任務的結束,當該任務被中斷時將切換到終止狀態
介質同步-監聽器
介質同步的監聽器是實現介質同步技術的基石,它通過監聽源數據上的變化,通過對應合并規則將監聽到的文件處理,再進行同步,它能實時捕捉到數據的變化,保證了同步數據的一致性。
介質同步-內存映射
由于每天的讀寫備份文件數量巨大,介質上的文件將會產生變化,將會導致日志量劇增,內存占用過大。為了保證同步任務能高效地進行操作,并且盡可能少的占用系統資源,異地同步選件采用了分塊保存日志的方法,將日志保存在多個塊中。
同步任務處理日志時,只在一個塊中進行操作。當一個塊處理完成后再處理后面的塊,每個塊的結構如圖所示。 記錄日志時,一個文件塊記錄滿時,將記錄新的塊。
?
介質服務器意外斷電不會造成丟失數據,
因為介質服務器采用瞬時內存緩沖(Instant Memory Cache)將內存中的實時變化瞬時寫入磁盤,可以保證磁盤和內存的一致。采用這項技術,可以使服務器意外掉電后同步狀態自動恢復。同時也可以減少文件頻繁讀寫。在日志塊在內存中被創建的時候,使用內存映射的方法,將內存中的日志塊映射到磁盤中以文件的形式保存下來,內存和文件始終同步。
日志量龐大時不會導致內存占用過大呢。
因為內存中最多只放固定數額的日志塊,當塊數過多的時候,將前面已經處理過的內存塊寫入磁盤文件中。不會增加內存占用。
(一般日志塊的固定數額預設值為8個,這個數值可以根據用戶實際情況進行修改)
介質同步-灰色對象探測
灰色對象
灰色對象是在指同步過程中因為非網絡原因造成的某條無法正常處理的日志。
灰色對象探測算法
是對灰色對象的一種探測和處理模式,利用該算法可以快速檢測并處理灰色對象,保證介質同步的正常持續進行,保護備份數據。主要有以下特點:
1.處理某個日志,記錄開始處理時間
2.非網絡原因造成無法同步的,記錄為灰色對象
3.暫時忽略灰色對象,對后面的日志進行同步,最后處理灰色對象
4.灰色對象保存時間可以設置,在配置文件中指定
5.超過設置的保存時間后,灰色對象將被刪除
轉載于:https://blog.51cto.com/yuntaoliu/553235
總結
以上是生活随笔為你收集整理的爱数之介质服务器及介质同步技术的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [Android]文本框实现搜索和清空效
- 下一篇: 数据库三范式经典实例解析