第四章 高可用性的故障轉移策略 第四章 高可用性的故障轉移策略 IRIS 鏡像 將分佈式緩存與故障轉移策略結合使用

第四章 高可用性的故障轉移策略

IRIS 鏡像

具有自動故障轉移功能的 IRIS 數據庫鏡像爲計劃內和計劃外停機提供了一種有效且經濟的高可用性解決方案。鏡像依賴於數據複製而不是共享存儲,避免了由於存儲故障導致的重大服務中斷。

IRIS 鏡像由兩個物理上獨立的 IRIS 系統組成,稱爲故障轉移成員。每個故障轉移成員在鏡像中維護每個鏡像數據庫的副本;應用程序更新在主要故障轉移成員上進行,而備份故障轉移成員的數據庫通過應用來自主要的日誌文件與主要保持同步。

鏡像自動將主要角色分配給兩個故障轉移成員之一,而另一個故障轉移成員自動成爲備份系統。當主要的 IRIS 實例出現故障或不可用時,備份會自動快速接管併成爲主要實例。

第三個系統稱爲仲裁器,它與故障轉移成員保持持續聯繫,爲他們提供在無法直接通信時安全地做出故障轉移決策所需的上下文。在每個故障轉移系統主機上運行的代理進程,稱爲 ISCAgents,也有助於自動故障轉移邏輯。備份無法接管,除非它可以確認主服務器確實已關閉或不可用,並且不會嘗試作爲主服務器運行。在仲裁器和 ISCAgent 之間,這幾乎可以在所有中斷情況下完成。

或者,當使用混合虛擬化和鏡像 HA 方法(如本節稍後討論的那樣)時,虛擬化平臺可以重新啓動發生故障的主機系統,從而允許鏡像確定以前的主實例的狀態並根據需要繼續進行。

當鏡像配置爲使用虛擬 IP 地址 (VIP) 時,將應用程序連接重定向到新的主服務器是透明的。如果連接是通過 ECP 進行的,它們將自動重置爲新的主服務器。應用程序連接重定向的其他機制是可用的。

當主實例恢復運行時,它會自動成爲備份實例。操作員啓動的故障轉移也可用於在計劃停機期間維護可用性以進行維護或升級。

在虛擬化環境中使用鏡像創建了一個結合了兩者優點的混合高可用性解決方案。雖然鏡像通過自動故障轉移對計劃內或計劃外中斷提供即時響應,但虛擬化 HA 軟件會在機器或操作系統意外中斷後自動重啓託管鏡像成員的虛擬機。這允許失敗的成員快速重新加入鏡像以充當備份(或在必要時接管爲主)。

將分佈式緩存與故障轉移策略結合使用

無論採用何種方法實現 HA,都可以使用企業緩存協議 (ECP) 支持的分佈式緩存集羣在用戶和數據庫服務器之間提供一層隔離。分佈式緩存集羣中的應用程序服務器旨在在數據服務器發生故障轉移時保留正在運行的應用程序的狀態。當數據服務器發生故障時,用戶仍保持與應用程序服務器的連接,並且在中斷期間主動訪問數據庫的用戶會話會暫停,直到數據服務器通過故障轉移的任一完成再次可用。根據應用程序活動的性質和故障轉移機制,一些用戶可能會在故障轉移完成之前遇到暫停,但隨後可以繼續操作而不會中斷他們的工作流程。

分佈式緩存集羣中的數據服務器可以像獨立的 IRIS 實例一樣進行鏡像以實現高可用性,並且應用服務器可以設置爲在發生故障轉移時自動將連接重定向到備份。

本章詳述的其他故障轉移策略也可用於分佈式緩存集羣。無論數據服務器採用何種故障轉移策略,應用服務器都會在故障轉移後重新連接並恢復其狀態,從而允許應用程序處理從故障前停止的地方繼續進行。

但是請記住,分佈式緩存的主要目的是水平擴展。將集羣簡單地部署爲 HA 策略的一個組成部分會增加成本,例如增加的複雜性和額外的故障點,以及好處。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章