

QNAP High Availability(高可用性叢集,下稱 HA)是 QNAP 的即時備援方案,讓兩台 NAS 透過網路線連結,組成一個虛擬叢集。當任一台 NAS 服務中斷時,HA 能夠自動切換,恢復服務。以下我們會實作「Active-Passive HA」的運作和效果,一般來說,當單機故障時,可以在 90 秒內恢復服務,透過 SMB 正在傳輸的資料也能在暫停後自動續傳。
概要與設定

HA 對硬體規格有所要求,詳細可以參看這邊的步驟。這次示範使用了 QNAP TVS-h474,搭配 TOSHIBA N300 系列的 NAS 專用硬碟。N300 6TB 為 3.5″ 機械硬碟,以 7,200rpm 運作,並提供 512MB 的緩衝容量。透過 TVS-h474 的免工具磁碟托盤可以快速安裝,單台 NAS 中安裝了三顆 N300 6TB,並以 RAID 5 組成一個儲存池。

要建立 HA,兩台 NAS 的型號、硬體規格必須相同。HA 會讓兩台 NAS 的資料保持同步,以便主從節點切換。所以本文總共使用兩台 QNAP TVS-h474 和六顆 TOSHIBA N300 硬碟。其他 HA 支援的硬體列表,請參考。

由於 HA 的功能是透過 App 運作,因此需要到 App Center 下載「High Availability」。而前置條件,就是作業系統版本要在 QTS hero 5.3 公開測試版以上。

在此也實際呈現接線方式。為了方便進行及呈現,網路線以顏色區分。兩台 NAS 需要在同一個 Switch 下、處於同一網段,藍色是 NAS 連接到 Switch 的網路線。而兩台 NAS 之間的連接,透過一條黑色的網路線,建立 Heartbeat 連接。這個 Heartbeat 連線,會讓兩台 NAS 隨時保持資料同步。當其中一台出現問題時,另一台能盡快補上、恢復服務。

透過實際拔、插網路線、電源線,我們模擬當單機故障、網路線斷聯、跳電等情況。

設定完成後,在 High Availability App 首頁,可以看到兩台 NAS 建立起名稱為「C1」的叢集,名稱可以在設定時自訂。首頁宛如儀表板,同時列出主動節點和被動節點兩台 NAS 的現況,包括 CPU、DRAM 使用率,以及磁碟的讀取、寫入速度。還包括了各自的網路連線速度,以及兩台 NAS 互聯的傳輸速度和延遲。

從面板上,可以選擇對叢集做一些管理,例如更新韌體、更新 HA、切換主備、移除被動節點和移除叢集等。關機時,也可以一次將兩台 NAS 同時透過叢集來關機、重新啟動。

在這次設定中,主動節點 IP 是 192.168.0.114,被動節點 IP 是 192.168.0.2。透過 High Availability Manager 建立出 C1,C1 叢集 IP 是 192.168.0.99。這個 C1 就像是一台虛擬出來的 NAS,可以串流影音,也可以上、下傳檔案。

在「網路與虛擬交換器」的介面中,也可以看到網路連接的現況。包括虛擬出來的 HA 叢集在 192.168.0.99。

在左側欄「節點」中,可以看到兩台 NAS 的基本資訊,包括型號、CPU、記憶體、序號、BIOS 版本、作業系統版本、HA 版本等。也包括了個別的風扇轉速、關鍵溫度、網路情況。也可以由此控制個別 NAS 主機的關機或重新啟動。
主動節點斷聯情況

實測中,手動實體移除 NAS_A 到 Switch 的網路線,模擬斷線情況。

在 HA 的控制面板一會兒就會跳出警告,說明 NAS_A 已經脫離。系統自動將主動節點切換到了 NAS_B,以這次切換在 89 秒內完成。

發生問題後,我們也可以在左側選單的「事件紀錄」中,可以看到這套系統的警告紀錄。

重新連接上網路線後,可以看到畫面呈現藍底白字的「正在檢查系統的高可用性狀態」,從插上網路線到 HA 將主機節點切換、成功恢復運行,約 74 秒。
被動節點斷聯情況

手動實體移除 NAS_B 到 Switch 的網路線,模擬斷線情況。

當 NAS_B 的網路脫離後,在 82 秒左右恢復服務。

另外如果是在 HA 運作的情況下,進入被動節點的 QuTS hero 首頁,以此案來說就是透過 192.168.0.99 進入,會看到呈現「維護模式」。但依舊可以進入 High Availability 介面。
Heartbeat 斷聯情況

三條網路線,第三條 Heartbeat 也可能因為某些原因遇到故障,在此也模擬斷開這條連接的情況。

在畫面中同樣會看到警報,並且顯示兩台 NAS 之間的連線中斷,兩台機器的基本狀態也無法顯示資料。不過這個情況下,其實對於使用上的影響反而是最小的。又或是串流看影片來說,Heartbeat 連線中斷後,快速、任意拉到影片任一處,仍可以馬上顯示播放的內容,不受中斷影響。如果是還在上傳、下載的檔案,幾乎也不會受到影響,檔案會繼續運行。

如果斷掉的是藍色線的網路(NAS 連接到 Switch),而且斷開時間較短,只有 3、5s 左右就恢復連線,HA 還沒啟動切換,那麼檔案有可能會繼續完成傳輸任務。
HA 讓 SMB 服務暫停但不中斷

如果是以 SMB 協定傳輸,中途遇到主動節點離線,檔案雖然會暫時停止,但是在 90 秒內,會自動接續傳完檔案,不用從頭開始處理。圖中傳輸速度表中,可以看到下凹的波谷,就是停滯的時間。實際例子就如剪輯師正從 NAS 下載 200 個素材檔案,便放著電腦去做其他事了。如果 NAS 主機離線,且沒有使用 HA 服務,就要重新下載。但如果使用文中這套 HA 架構,被動節點會在 90 秒內自動恢復資料續傳。剪輯師回來後,可能完全不會察覺這個事件。

而如果離線的是被動節點或是 Heartbeat 連線,不僅服務不會中斷,在 SMB 傳輸中並不會明顯觀察到降速、中斷的情況,檔案會穩定按照原有速度傳完。

透過實測可以看出 QNAP High Availability 在實際運行時的表現與價值。無論是主動節點、被動節點,甚至是 Heartbeat 的斷聯情況,HA 都能在合理的時間內完成切換,維持服務不中斷或將影響降到最低。

Active-Passive HA 價格便宜,應用廣泛,適合中小企業或是稍具規模的工作室。當需要穩定、快速恢復的 NAS 服務,就可以選擇 QNAP High Availability。從實測中也可以看到,都能在 90 秒內完成切換,也能在 90 秒內就已經復原的硬體,恢復原本的運作叢集。如果是對於服務穩定性有更高需求的企業,則可以進一步考慮 Network HA,達到完全 0 時差的切換,保證服務隨時在運作。