共用方式為


Oracle Database@Azure的商務持續性和災害復原考慮

本文將探討 Azure 登陸區域設計區域中所述的商務持續性和災害復原 (BCDR) 考慮和建議。 它會使用 Oracle Exadata 資料庫服務,納入 Oracle Database@Azure Oracle 最大可用性架構 (MAA) 原則。

為在 Oracle Database@Azure 上執行的 Oracle 資料庫建置復原架構的第一個步驟,就是識別解決方案的可用性需求。 設定不同層級失敗(包括計劃性和非計劃性事件)的復原時間目標(RTO)和恢復點目標(RPO)是非常重要的。 RTO 會定義應用程式或商務在中斷后可以容許的最大停機時間。 RPO 會指定應用程式或商務可以容忍的數據遺失持續時間上限。 您應該在開始 BCDR 設計之前處理此必要條件。 建立解決方案的需求之後,您可以設計 Oracle Database@Azure 環境,以符合 RTO 和 RPO。

如需詳細資訊,請參閱Microsoft Azure Well-Architected Framework 關於如何 設計DR策略的指導方針

設計考量

  • Oracle Exadata Database@Azure服務可在區域內的兩個不同的可用性區域中使用。 此可用性有助於確保服務可靠性和DR。 若要確認 Oracle Exadata Database@Azure的部署位置,請在 Azure 入口網站中檢查虛擬機 (VM) 叢集。

  • Oracle Exadata Database@Azure及其核心元件僅限於您建立實例的可用性區域。 此服務未涵蓋多個區域或跨越多個區域。 若要達到多個區域或多區域復原能力,您可以將新的 Oracle Exadata Database@Azure 實例部署到目標可用性區域或區域。

  • Oracle Exadata Database@Azure提供原生 Oracle 技術,例如適用於高可用性的 Oracle Real Application Clusters 和適用於 DR 的 Oracle Data Guard。 DR 架構支援 Data Guard 和 Active Data Guard。

  • Oracle Exadata Database@Azure預設會針對資料庫實例和硬體層級失敗提供HA。 此架構會與 MAA 銀級 一致。 計劃性維護作業可以滾動方式進行。 不過,預設的單一區域架構對於站點或區域故障具有零容錯。

  • 此解決方案提供DR的自動化 Data Guard 設定。 此設定透過要求在不同可用性區域或地區中部署另一個 Oracle Exadata Database@Azure,來協助防止網站故障。

  • 主要和待命 Oracle Exadata Database@Azure實例之間的網路連線,可以透過 Azure 網路和 Oracle 雲端基礎結構 (OCI) 網路來建立。 根據預設,此連線的主要路由是透過 Azure。

  • Oracle Exadata Database@Azure可用的三個備份選項如下:

    • OCI 管理的備份: 此選項包含兩個整合式解決方案,包括 Oracle 資料庫自發復原服務和 Oracle 雲端基礎結構物件記憶體。 這些解決方案是透過 OCI 控制台進行管理。

      自發復原服務是針對具有嚴格 RTO 和 RPO 需求的企業級任務關鍵性工作負載所設計。 它透過服務等級協定提供可用性。 如需詳細資訊,請參閱 Oracle 平臺即服務和基礎結構即服務公用雲端服務支柱檔

      OCI 物件記憶體是一般用途的備份解決方案,適用於具有較不嚴格 RTO 或 RPO 需求的工作負載。

      這些解決方案可讓您使用預先定義的保留期間自動排程和管理資料庫備份。 如需詳細資訊,請參閱 在 Oracle 專用基礎結構上管理 Exadata Database Service 上的資料庫備份和復原

    • 自我管理備份: 您可以設定 Oracle Exadata Database@Azure,將資料庫備份串流至 Azure 記憶體服務,包括 Azure Blob 記憶體、Azure 檔案記憶體(透過私人端點),以及 Azure NetApp Files。

      此選項需要手動設定和進行中的維護。

      使用私有端點與 Oracle Database@Azure 搭配時,需要經由路由設備進行中介點,例如網路虛擬設備 (NVA)。 此設備可以是中樞 NVA,例如 Azure 防火牆或非Microsoft NVA。 針對非生產環境,它可以是專用的 VM,用於 IP 位址轉送,例如在 部署本機 NVA。 如需詳細資訊,請參閱 Oracle Database@Azure的網路規劃。

    • 非Microsoft備份解決方案: 您可以使用 Azure Marketplace 中可用的非Microsoft備份解決方案,例如 Commvault來管理及儲存資料庫備份。

設計建議

若要建置專為特定需求量身打造的復原架構,請考慮下列 Oracle Exadata Database@Azure的 BCDR 建議。

您應該透過使用 Data Guard 設定至少兩個 Oracle Exadata Database@Azure 實例,以協助防範單一站點故障。 此設定與 MAA 金標準一致。

多區域BCDR

針對需要零或接近零 RPO 且具有多重區域備援,同時符合單一區域數據落地需求的客戶,建議使用多重區域 BCDR 架構。

此解決方案包括在相同區域內的不同可用性區域中進行的次要 Oracle Exadata Database@Azure 部署。 若要確保針對資料庫、叢集或可用性區域失敗的復原能力,請實作位於次要實例中的待命資料庫。 此設定提供網站層級故障保護。  

圖表,顯示 Oracle Exadata Database@Azure Azure 登陸區域加速器的多區域 BCDR 架構。

  • Data Guard 重做傳輸模式: 根據您的應用程式服務和 RPO 需求設定 Data Guard 重做傳輸模式:

    • 數據完整性和零數據遺失: 當數據完整性和零數據遺失是最高優先順序時,請使用最大可用性模式 (SYNC)。 此模式會同步將數據復寫至待命資料庫,以確保不會遺失任何數據。

    • 系統效能: 當系統效能至關重要且可接受少量數據遺失時,請使用最大效能模式(ASYNC)。 此模式會使用異步復寫,這會導致 RPO 稍微大於零(或接近零)。

  • 維護對稱待命實例: 您應該維護對稱待命實例,其資源相當於主資料庫,以確保切換和故障轉移作業期間的一致效能。 或者,您可以使用最少的資源設定待命資料庫,並在切換或故障轉移之後視需要動態擴大 VM 叢集。 不過,此方法可能會為調整作業及其在資料庫層級的反映增加額外的時間。

  • 自動故障轉移作業: 使用 Oracle Data Guard Fast-Start 故障轉移 來自動化故障轉移作業,以將 RTO 降到最低並減少錯誤。

    注意

    Fast-Start 故障轉移不是受控服務,而且需要手動設定。

    為了此設置,需要額外的虛擬機(VM)來執行 Oracle Data Guard 觀察者,以啟用 Data Guard Fast-Start 的故障切換。 這些監控 VM 負責監視資料庫和複寫狀態,以自動化故障轉移流程。

    Oracle Database@Azure Azure 登陸區域加速器 Fast-Start 故障轉移架構的圖表。

    如需對稱DR架構以應對故障轉移,您應該將觀察者實例部署在已配置備援Oracle Exadata Database@Azure的所在地。

多區域BCDR

  • 針對多區域 BCDR 策略,請實作次要 Oracle Exadata Database@Azure部署,並將待命資料庫放在服務可用的不同區域中。 此設定可針對完整的區域性中斷提供保護。

  • 設定 Data Guard 以異步方式複寫區域DR,此DR會根據您的應用程式需求和主要和次要區域之間的網路等待時間。 如需詳細資訊,請參閱 Azure 網路來回延遲統計數據

    注意

    跨區域部署,自動化 Data Guard 僅允許使用最大化效能模式(ASYNC)配置。

Oracle Exadata Database@Azure Azure 登陸區域加速器的多區域 BCDR 架構圖表。

  • 多區與多區域 BCDR 建議著重於資料庫服務的韌性。 為了協助確保整體工作負載復原能力,請考慮使用 Azure 虛擬機擴展集、Azure Site Recovery 和 Azure Front Door 等 Azure 服務和功能,跨可用性區域或區域設計健全的架構。

擴充的BCDR案例

本機和遠端待命資料庫

若要解決針對區域中斷的強固服務可用性和復原能力的需求,建議您針對任務關鍵性工作負載實作多個待命資料庫。

Oracle Exadata Database@Azure部署上的本機待命資料庫位於相同區域內的不同可用性區域。 此設定透過SYNC Data Guard 複寫來解決零資料遺失故障轉移需求,為延遲敏感性應用程式提供可行的解決方案。 此策略可協助確保服務可用性,而不會影響應用程式輸送量或整體回應時間。

位於不同區域的 Oracle Exadata Database@Azure 實例上的遠端待命資料庫,可解決區域 DR 需求。

本地及遠端待命的 Oracle Exadata Database@Azure Azure 登陸區加速器的 BCDR 架構圖。

此架構適用於任務關鍵性工作負載,且至少需要三個 Oracle Exadata Database@Azure部署。

注意

如果由於故障轉移情境需要對稱配置,請將額外的備用資料庫放置在次要區域的 Oracle Exadata Database@Azure 中,但要位於不同的可用性區域內。

Data Guard Far Sync 架構

您可以使用 Data Guard Far Sync 設定,滿足在任何距離實作零數據遺失複寫的需求。 此方法包括將 遠同步實例放置在靠近主要 Oracle Exadata Database@Azure 部署 的位置,基本上是位於同一地區的另一個可用性區域,以同步方式傳送重做日誌。 然後,遠同步實例會將這些記錄異步傳送至在另一個區域中的次要 Oracle Exadata Database@Azure部署中執行的待命資料庫。 此設定實際上會導致區域之間的零數據遺失複寫。

Azure 登陸區域加速器的 Oracle Exadata Database@Azure Far Sync BCDR 架構圖表。

如果您想在故障轉移時使用對稱的DR架構,請將遠距同步實例放置在次要Oracle Exadata Database@Azure部署的單獨可用性區域中。

注意

Far Sync 架構需要 Active Data Guard 授權,而且必須手動設定。

備份建議

如果您打算使用備份作為 BCDR 需求的唯一解決方案,請記住,相較於複寫案例,RTO 較高,因為它是以資料庫大小和您使用的備份方法為基礎。

  • Azure 內備份數據: 若要符合規定數據和備份保留在 Azure 中的組織需求,請考慮下列解決方案:

    • 在 Azure 中使用自發復原服務 (ARS): 在備份原則設定期間,選擇 將備份數據儲存在與資料庫相同的雲端提供者中, 在 Azure 中使用 ARS。

    • 使用記憶體服務: 使用 Blob 記憶體、Azure 檔案記憶體和 Azure NetApp Files 等記憶體服務,將記憶體掛接為資料庫伺服器上的網路文件系統 (NFS) 點,並將 Oracle Recovery Manager (RMAN) 備份串流至記憶體。

  • 長期備份保留: 如果您的組織需要長期備份保留,您可以設定自我管理的 RMAN 備份至 Azure 記憶體。

  • 記憶體備份組態: 當備份設定為記憶體服務時,請考慮下列建議:

    • 使用cron作業來排程: 在資料庫節點層級使用cron作業,根據備份策略於特定時間安排備份。

    • 復寫備份: 使用來自 Azure 的基礎記憶體複寫功能,例如區域備援記憶體和異地備援記憶體來復寫備份。

  • 備份和還原作業:如果發生意外刪除或損毀, 手動備份 Oracle Exadata Database@Azure VM 以還原重要檔案。 如需詳細資訊,請參閱 Oracle Exadata Cloud Compute 節點備份和還原作業 (文件識別元 2809393.1)

其他建議

  • 在 Azure 中保留數據: 如果需要在 Azure 中獨佔保留數據,請透過 Azure 網路路由傳送 Data Guard 流量,並設定備份以留在 Azure 中。

  • 測試DR: 測試故障轉移和切換作業,以協助確保它們在真實災害情境中能夠運作良好。

  • 即時數據和複寫: 針對主動-主動環境,請考慮使用 Oracle GoldenGate 進行即時數據整合和複寫功能。 它需要應用層級的感知,才能有效地處理衝突解決。

    注意

    GoldenGate 未包含在此解決方案中,而且可能會產生額外的授權成本。

  • 最小化中斷: 若要將工作負載的中斷降到最低,請在離峰時段排程計劃性維護。 當您方便時,請使用滾動方式更新以確保流程順暢。

  • 使用基礎結構即程序代碼 (IaC): 如需更可靠的基礎結構自動化,請使用 IaC 部署初始 Oracle Exadata Database@Azure 實例和 VM 叢集。 如需 Oracle Database@Azure自動化的詳細資訊,請參閱 使用 Terraform 或 OpenTofu 模組的快速入門 Oracle Database@Azure