威聯通科技股份有限公司(QNAP Systems, Inc.) - 網路儲存設備(NAS)

Language

Support

使用 QNAP Snapshot Agent 與 VSS H/W Provider,建立 Microsoft Hyper- V 的一致性快照與備份

1.技術概觀

1-1. 備份大型環境,資料一致性的挑戰

在大型環境中擔任關鍵任務的儲存系統,持續提供不間斷服務,資料無時無刻都在變動。當管理者想要建構一個災難備援環境,必須針對這些資料建立複本,如果按照純複製的傳統方式備份這些動態資料,備份當然沒問題,但是還原後就會面對資料不一致的狀況。

使用傳統方式執行一次備份工作,視資料大小可能需時幾小時、甚至數天之久,而且無法備份正在操作中,暫存在記憶體內的原始資料。在這段時間內因為服務不停止,導致I/O操作持續進行,有可能會備份到已刪除資料,或是最新檔案沒進到備份複本內。當這份有問題的複本被還原後,輕則遺失資料,重則影響儲存連結與運作邏輯,進而導致系統崩潰。

為了避免發生這類情況,我們必須採取更進階、更聰明的備份方式,確保複本所有地方都擁有原始資料一致性。因此,QNAP提供「QNAP Snapshot Agent」與「VSS Hardware Provider」兩種技術解決方案,再搭配NAS內建無數量上限的Snapshot功能,在不同使用情境中,都能找到最佳方案,滿足複本資料一致性的應用目標。

1-2. 關鍵技術機制:磁區陰影複製服務(VSS)

VSS(Volume Shadow Copy Service)是Microsoft提出的磁碟快照技術,最早被用於Windows Server 2003,能夠建立磁碟區在各個時間的不同版本快照,並具備「檢視」、「複製」與「還原」三種用法。萬一使用者誤刪檔案,只需還原至較早版本的快照即可,使用至今已經是一項成熟技術,而且能夠達成前面提到的「資料一致性」備份要求。在VSS技術架構中,有4個角色分別負責不同工作,協助整體備份工作進行,以下是這些角色的簡介:

  • Requestor(請求者):發起備份工作,請求VSS服務的任何程式。有可能是內含VSS請求者API的第三方備份軟體,或Windows VSS管理程式。
  • VSS Service(VSS服務):VSS技術架構核心,主掌整體VSS流程進行。不但要處理請求者要求,還要聯繫寫入者,與呼叫提供者執行工作。
  • Writer(寫入者):當儲存設備或備份軟體正在建立VSS複本或Snapshot快照時,需要寫入者請應用程式暫時停止I/O,並凍結資料不再變動,確保備份資料一致性。具備此機制的應用程式,則稱為VSS感知(VSS-aware)應用程式,例如Exchange、SQL 等等。
  • Provider(提供者):管理資料磁區並實作VSS快照,可依屬性不同再細分為硬體(Hardware)、軟體(Software)、系統(System)提供者。

1-3. VSS Hardware Provider運作原理

  1. 備份軟體(Requestor)發動備份要求,請求VSS服務。
  2. VSS服務告知VSS Writer即將製作VSS複本,請應用程式暫停I/O活動。
  3. 應用程式將所有未儲存資料與操作中快取,全部回寫至儲存裝置上。
  4. VSS服務告知VSS提供者可以開始製作Snapshot。
  5. VSS提供者開始製作目標磁區的Snapshot。
  6. Snapshot建立完成。
  7. VSS服務告知VSS Writer已完成Snapshot製作,請應用程式繼續I/O活動。

1-4. QNAP Snapshot Agent運作原理

  1. NAS發動備份要求,告知Snapshot Agent即將製作Snapshot。
  2. Snapshot Agent請求VSS服務。
  3. VSS服務告知VSS Writer即將製作Snapshot,請應用程式暫停I/O活動。
  4. 應用程式將所有未儲存資料與操作中快取,全部回存至儲存裝置上。
  5. Snapshot Agent回報NAS,已經可以開始製作Snapshot。
  6. Snapshot建立完成。
  7. VSS服務告知VSS Writer已完成Snapshot製作,請應用程式繼續I/O活動。

1-5. 支援VSS機制備份軟體一覽

廠商 名稱 授權 價格($USD) 備註
Microsoft DiskShadow.exe 隨作業系統 -- --
QNAP NetBak Replicator 免費軟體 -- 隨QNAP NAS 使用
Acronis Acronis Backup 付費軟體 $999 30天免費試用版
Altaro Hyper-V Backup 付費軟體 $395/$585 另有使用條件受限之免費版
ARCserve CA ARCserve Backup 付費軟體 電洽廠商 30天免費試用版
Commvault Simpana 10 付費軟體 $1,270起 30天免費試用版
DataCore SANsymphony-V 付費軟體 電洽廠商 30天免費試用版
FastNeuron BackupChain 付費軟體 $249.99/$499.99/
$999.99
--
NAKIVO Backup & Replication 付費軟體 電洽廠商 --
StorageCraft ShadowProtect Virtual 付費軟體 $276.50起 30天免費試用版
Symantec Backup Exec 付費軟體 電洽廠商 60天免費試用版
Symantec NetBackup 付費軟體 電洽廠商 --
Unitrends Enterprise Backup 付費軟體 電洽廠商 30天免費試用版
Veeam Backup Free Edition 免費軟體 -- --
Veeam Backup & Replication 付費軟體 $955/$1742/ $2,709 30天免費試用版

2. 準備安裝

2-1. 系統軟硬體需求

從前章節中的運作原理圖可以得知,如欲建構QNAP Snapshot Agent與VSS Hardware Provider運作環境,所需的軟硬體與網路架構相對簡單。包括VSS Service、Requestor、Provider、以及QNAP Snapshot Agent,都可以跟VSS-Aware應用程式佈署在同一台伺服器上。因此,在硬體方面,我們最少只要準備一台QNAP ES NAS,以及一台伺服器即可運作。至於網路部分,也只需佈署伺服器能與QNAP ES NAS正確連接的架構即可。

  • 儲存裝置:QNAP ES Series NAS,系統版本為QES 1.1.1或更新。
  • 伺服器:安裝Windows Server 2008 (R2)、Server 2012 (R2)作業系統,不支援Windows 7、8、8.1、10等一般客戶端作業系統。
  • IP設定:因為QNAP Snapshot Agent與NAS之間是以IP位置連線與溝通,建議儲存裝置與伺服器雙方都設定為固定IP,以保持連線穩固性。

2-2. 伺服器角色與網路設定清單

Server Network Settings
Role IP Server Name Description
Application Server A 172.17.23.133 HV01 Hyper-V Host and
Snapshot Agent Server
Data Network A1 8.8.1.50 HV01 Data port 1 of HV01
Data Network A2 8.8.2.50 HV01 Data port 2 of HV01

Storage Network Settings
Setting Value Description
SCA Management IP 172.17.22.96 Management IP of controller A
SCA Ethernet1 IP 8.8.1.105 Data port 1 IP of controller A
SCA Ethernet2 IP 8.8.2.105 Data port 2 IP of controller A
SCB Management IP 172.17.22.87 Management IP of controller B
SCB Ethernet1 IP 8.8.1.106 Data port 1 IP of controller B
SCB Ethernet2 IP 8.8.2.106 Data port 2 IP of controller B
Pool at SCA Pool1 RAID60 pool at controller A
iSCSI LUN   iSCSI LUN on Pool1

2-3. 安裝前的確認

  • 使用Windows Server作業系統。
  • 作業系統有安裝.NET Framework 3.5功能。
  • 欲建立備份的虛擬機或應用程式,包括其設定、虛擬硬碟、與儲存點預設存放位置等,都必須放在相同的iSCSI LUN當中。
  • Snapshot Agent不能與SMI-S Provider角色佈署在同一台伺服器。
  • Snapshot Agent不支援iSCSI的MPIO連線方式。
  • Snapshot Agent不支援iSCSI連線的CHAP認證方式。
  • 建議一個iSCSI LUN下不要安裝太多VM,不然VSS運作時,VSS writer需要做太多事,可能會timeout。

3. 設定Snapshot Agent服務

3-1. 安裝QNAP Snapshot Agent

Step 1:開啟Snapshot Agent安裝程式,確認資訊無誤後,點選「Next >」鍵。

Step 2:檢視使用者合約條款,確認後點選「I Agree」鍵。

Step 3:程式將自動解壓縮並安裝元件。

Step 4:按下「Finish」即可結束安裝。

3-2. 讓Snapshot Agent連線到NAS

Step 1:開啟Snapshot Agent後,在主畫面中點選「Scan NAS」,程式將發送Broadcast封包自動尋找您的機器,只要Broadcast封包能到達之處,都能尋找(一般來說在同一switch下)。

Step 2:將自動列出所有找到的QNAP NAS,點選您想要設定的機器。

TIPS:如果Snapshot Agent無法自動找到您的NAS…

當Snapshot Agent尋找NAS時,有時候可能顯示「無法使用連接埠8097或9500」訊息,導致程式無法自動找到您的NAS。如果您的作業系統也有安裝Qfinder程式,很可能是這兩組連接埠正被Qfinder佔用,請先關閉Qfinder。

如果您的系統沒有安裝Qfinder,或是Qfinder已關閉卻仍然出現此問題,請先在命令提示字元或Windows PowerShell輸入「netstat –ano」指令,確認佔用連接埠程式的PID(Process ID),再到工作管理員中,依據這個PID找出相對應程式,再強制關閉。

若您已經確定NAS的IP位置,也可直接到Snapshot Agent主畫面左上角空格輸入IP,再點選「Add」按鈕,即可跳過搜尋步驟,直接連線您的NAS。

Step 3:輸入NAS帳號密碼以認證權限,並點選「Snapshot Agent For Windows」以安裝需要的元件。

Step 4:Snapshot Agent將會把相關元件登錄到作業系統。

Step 5:回到主畫面後,如果在清單中看到您剛剛加入的NAS,而且元件都已安裝成功,代表已經完成這一步。

TIPS:如果系統無法註冊Snapshot Agent元件…

如果您的Snapshot Agent已經順利連接NAS,但是無法把「Snapshot Agent for Windows」元件註冊到系統,並出現「Register SnapAgent for Windows on NAS <NASName> fails」錯誤訊息,請到防火牆設定中,把連接埠11169列為允許名單,即可解決這個問題。

這是因為Snapshot Agent元件與NAS之間需要互相通訊,包括第一次註冊Snapshot Agent到作業系統時,NAS會主動與電腦聯繫,取得一些必要資訊。往後NAS發動快照前,也要先通知電腦上的VSS服務,請應用程式暫時凍結I/O活動,這些通訊都是透過連接埠11169傳輸,請放心開啟。

Step 6:在Windows PowerShell輸入「vssadmin list providers」指令,如果能看到「QNAP VSS HW Provider」項目,代表已經成功註冊到Windows系統。

Step 7:進到NAS管理介面,在「Storage Manager」>「iSCSI Storage」>點選想要備份的LUN>「Snapshot」>進入「SnapAgent」資訊視窗。

Step 8:如果能看到伺服器端IP、作業系統、連接哪些LUN等資訊,代表在伺服器上面的Snapshot Agent元件已經連線到NAS,隨時可以進行備份與快照工作。

4. 使用QNAP QES與Snapshot Agent建立iSCSI LUN快照

接下來將示範QNAP QES內建的Snapshot功能,再搭配Snapshot Agent與VSS服務通知Hyper-V,可以在所有運作都無需停機的狀態下,順利擷取虛擬機儲存快照,並成功在Hyper-V Manager內顯示檢查點資訊。

在本範例中,已經先在NAS上建立一個iSCSI LUN,伺服器透過連接到這個iSCSI LUN並建立磁碟,並利用Windows Hyper-V Manager建立6台虛擬機器,這些虛擬機器所有檔案都儲存在這個iSCSI LUN當中。

4-1. 建立iSCSI LUN快照

Step 1:在NAS管理介面中,進入「Storage Manager」>「iSCSI Storage」>點選想要備份的LUN>「Snapshot」>點選「Take a Snapshot」。

Step 2:輸入快照命名,並在「Snapshot Type」欄位選擇「Application consistent」選項,點選「OK」以開始製作快照。

Step 3:把畫面切回Hyper-V Manager,可以看見虛擬機器狀態都顯示「Backing up…」,而「Checkpoints」欄位也能看到正在產生檢查點,代表NAS已經透過Snapshot Agent元件,讓Hyper-V Manager得知iSCSI LUN正在製作快照,暫時凍結虛擬機器I/O。

Step 4:若Hyper-V上虛擬機器數量不多,整體過程大約需時兩分鐘。待工作結束後,NAS管理介面會顯示快照製作完成訊息,可以到「Snapshot」>「Snapshot Manager」當中,找到更多快照細節。


TIPS:Crash consistent與Application consistent的不同
  Crash consistent (損毀一致) Application consistent (應用程式一致)
快照內容 僅快照當下的磁碟資料 磁碟+快取+記憶體資料
外部需求 否(NAS內部可直接執行) 是(需要Snapshot Agent配合)
通知 不會通知應用程式 會通知應用程式
前置作業 有(需將記憶體快取回寫到磁碟)
備註 不適用於資料庫備份 適用於資料庫備份

4-2. 從iSCSI LUN快照還原

製作應用程式一致快照後,萬一您的虛擬機與資料遭遇意外,便能選擇這些快照,還原特定時間點所有資料。不過在還原前,必須至少將伺服器端iSCSI initiator與NAS端iSCSI target中斷連線,才能執行還原工作,因此建議在還原前,將線上虛擬機器關閉或暫停運作,以免這些虛擬機器突然連接不到磁碟,而出現錯誤。以下示範除了中斷iSCSI target連線以外,還多了卸載iSCSI LUN步驟(選擇性)。

Step 1:在NAS管理介面中,進入「Storage Manager」>「iSCSI Storage」>點選想要還原的LUN>「Action」>點選「Disabled」,以停用這個iSCSI LUN。

Step 2:NAS提示這個iSCSI LUN將會中斷連線,點選「OK」以繼續進行。

Step 3:接著再點選「Action」>「Un-map」以卸載iSCSI LUN。

Step 4:iSCSI LUN卸載後,將跑到下方「Un-Mapped iSCSI LUN List」清單中,點選「Snapshot」>「Snapshot Manager」列出所有快照清單後,再選擇想要還原的快照,點選「Revert」。

Step 5:如果還有比這份更新的快照版本,這些新版快照會在還原舊版後消失,確認後點選「OK」以繼續進行。

Step 6:還原快照成功後,點選「OK」確定。

Step 7:點選「Action」>「Map」,將iSCSI LUN重新掛載到iSCSI target上。

Step 8:顯示將掛載到哪一個iSCSI target上,確認後點選「Apply」以完成工作。

5. 使用QNAP Netbak Replicator與VSS H/W Provider建立備份

QNAP Netbak Replicator是一個簡單易用,且支援VSS機制的備份軟體,只要搭配QNAP NAS,使用者不需再採購昂貴複雜的大型商業軟體,也能在資料庫與虛擬機這些需要應用程式一致性的環境,實作備份工作。

在此章節中,將採用QNAP Netbak Replicator備份軟體,搭配VSS機制建立一個「應用程式一致性」的完整檔案備份。由於QNAP有提供VSS Hardware Provider,從建立快照與快照存放地點,到根據這個快照產生一份完整備份檔,這些工作都是由NAS直接負責。如果該iSCSI LUN在拍完快照後仍承受大量I/O寫入,造成許多寫入時複製(Copy-On-Write,COW)工作發生,VSS Hardware Provider將能發揮作用,讓後續I/O的效率,會比Software或System Provider更佳。

5-1. 建立備份實作

Step 1:開啟程式後在左下角選擇「Advance Mode」,點選「Options」>「Advanced Settings」。

Step 2:點選「Backup Settings for Opened Files」按鈕。

Step 3:確認都有勾選「Enable VSS」與「Enable VSS Writer」兩組選項。

Step 4:在「Instant Backup」標籤中,左側選擇來源磁碟(Hyper-V虛擬機的存放處),右側選擇備份目的地,點選「Start Backup」按鈕開始執行。

Step 5:把畫面切到NAS上的「Snapshot Manager」,可以看到NAS已經成功收到備份軟體發出的要求,自動建立一份「vss_snap_1」快照。

Step 6:快照建立完畢後,應可在「iSCSI Target List」內見到新增 一個「vss_clone1」的iSCSI LUN。

Step 7:畫面切到Hyper-V Manager,可以發現Hyper-V Manager也收到備份軟體發出的要求,虛擬機器依序顯示「Backing Up….」訊息。

Step 8:畫面切回QNAP Netbak Replicator備份軟體,可以查看備份工作的最新進度。

Step 9:工作結束後,顯示備份完成訊息與經過時間。

Step 10:如日後想還原這些備份檔案,請點選「Instant Restore」標籤,在左側選擇備份檔案存放位置,在右側選擇檔案還原的目的地,確認其他細部選項無誤後,點選「Start Restore」即可開始還原。

6. 使用第三方軟體與VSS H/W Provider建立備份

6-1. 設定Acronis Backup 11.5

Step 1:開啟程式後點選「Manage this machine」。

Step 2:在上方工具列中,點選「Options」>「Default backup and recovery options」。

Step 3:點選「Default backup options」左方的三角形,展開整個選單。

Step 4:點選最下方「Volume Shadow Copy Service」項目,右側出現細部選項,請確認勾選「Use Volume Shadow Copy Service」,並在「Snapshot provider」項目中,選擇「Hardware」。

6-2. 設定Symantec Backup Exec

Step 1:開啟程式後在上方找到「Backup」按鈕,再選擇「Back Up to Disk」。

Step 2:點選右下角「Edit」按鈕。

Step 3:左方點選「Advanced Open File」項目,在右方勾選「Use snapshot technology」,並在「Snapshot provider」選單中,選擇「Hardware」。

6-3. 設定Veeam Backup & Replication

Step 1:開啟程式後在左下角選擇「Backup Infrastructure」,再選擇需要備份的目標伺服器,並點選上方的「Manage Volumes」。

Step 2:目標伺服器上已有安裝QNAP Snapshot Agent服務,因此使用iSCSI連接的兩個磁碟機,都能看到「QNAP VSS HW Provider」字樣,確認無誤後點選「OK」離開。

Step 3:回到主畫面後,在左下角選擇「Backup & Replication」,再於上方工具列點選「Backup Job」按鈕。

Step 4:開啟工作視窗後,先將這個備份工作命名,再點選「Next >」。

Step 5:點選右側「Add…」按鈕

Step 6:選擇想要備份的虛擬機器,按「Add」加入。

Step 7:確認加入的虛擬機器與備份容量後,點選「Next >」按鈕。

Step 8:選擇備份檔案的存放方式,確認後點選「Next >」按鈕。

Step 9:在此步驟,請務必勾選「Enable application-aware processing」,才能使用VSS機制進行備份。確認無誤後,請點選下方的「Credentials..」按鈕。

Step 10:選擇想進行備份的虛擬機器,再點選「Add…」,提供虛擬機器登入認證給Veeam。

Step 11:回到Guest Processing步驟畫面,可以按下右下方的「Test Now」,讓Veeam測試剛剛輸入的登入認證是否成功。

Step 12:Veeam將執行一連串測試,確認可連線到虛擬機器,並使用剛剛提供的認證方式成功登入。若沒有看到任何錯誤,請點選右上角的「X」離開。

Step 13:回到Guest Processing步驟畫面,因為我們已經完成所有必須工作,直接點選「Next >」按鈕跳至下一步即可。

Step 14:視需要可以設定排程工作,若只想進行單次備份,直接點選「Create」按鈕即可。

Step 15:確認所有資訊無誤後,即可點選「Finish」按鈕完成建立備份工作。

7. 技術支援與參考資料

發佈日期: 2016-06-02
覺得這篇文章對您有幫助?
謝謝您,我們已經收到您的意見。
謝謝您,我們已經收到您的意見。若有任何問題,歡迎來信 support@qnap.com