在 Oracle Database@Azure 上使用多區域待命資料庫導入災難復原

設計應用程式時,確保不中斷的業務連續性對成功至關重要。若要達成此目標,必須制定健全的災害復原策略,以在發生中斷時快速回復功能。

多年來,組織一直依靠 Oracle Exadata Database Service ,這是 Oracle 的首要災難復原技術,可支援內部部署或 Oracle Cloud Infrastructure (OCI) 內的關鍵任務應用程式。Oracle Database@Azure 上的 Oracle Exadata Database Service on Dedicated Infrastructure 提供與 OCI 上 Exadata 相同的業界頂尖效能、功能集和價格同等性。它運用 Microsoft Azure 的可用性區域 (AZ) 和區域,在無與倫比的高可用性和災害復原功能上,為 Azure 的應用程式提供低延遲,確保在維護期間和發生中斷時順暢運作。

架構

此架構使用兩個遠端待命資料庫,在多區域災害復原拓樸中顯示 Oracle Database@Azure 上的 Oracle Exadata Database Service on Dedicated Infrastructure 。

下圖說明此參考架構。



多區域待命 -dr-db-azure-arch-oracle.zip

Oracle Database 在主要區域的 Exadata 虛擬機器 (VM) 叢集中執行。對於資料保護和災害復原,Oracle Active Data Guard 會將資料複製到兩個在 Exadata VM 叢集上執行的兩個待命資料庫 (位於兩個不同的待命區域)。遠端待命資料庫設定可確保資料保護免於區域性故障,也可用於卸載唯讀查詢處理。跨區域複寫應用程式,以避免切換至待命資料庫後發生較高的延遲。

您可以透過 Azure 網路遞送 Active Data Guard 流量。不過,此架構著重於透過 OCI 網路的 Active Data Guard 網路流量,以最佳化網路傳輸量和延遲。

Oracle Database@Azure 網路上的 Oracle Exadata Database Service on Dedicated Infrastructure 使用由 Oracle 管理的動態路由閘道 (DRG) 連線至 Exadata 從屬端子網路。此外,還需要 DRG,才能在不同區域的虛擬雲端網路 (VCN) 之間建立對等連線。由於 OCI 中的每個 VCN 只允許一個 DRG,因此需要第二個以 Hub VCN 作為 DRG 的 VCN,才能連線每個區域中的主要和待命 VCN。在此架構中:

  • 主要 Exadata VM 叢集部署在 VCN1 的 Region 1 中,並搭配 CIDR 10.10.0.0/16。
  • 主要 Region 1 中的中樞 VCN 為 HubVCN1 且 CIDR 10.11.0.0/16。
  • 第一個待命 Exadata VM 叢集部署於 VCN2 中的 Region 2 和 CIDR 10.20.0.0/16。
  • 第一個待命區域中的中樞 VCN 為 HubVCN2 且 CIDR 10.22.0.0/16。
  • 第二個待命 Exadata VM 叢集部署於 VCN3 中的 Region 3 和 CIDR 10.30.0.0/16。
  • 第二個待命區域中的中樞 VCN 為 HubVCN3 與 CIDR 10.33.0.0/16。

Hub VCN 不需要任何子網路才能啟用傳輸路由,因此這些 VCN 可以使用非常小的 IP CIDR 範圍。在為主要和待命資料庫建立 Oracle Database@Azure 上的 Oracle Exadata Database Service on Dedicated Infrastructure VM 叢集之後,就會建立 OCI 子網站上的 VCN。

Microsoft Azure 提供下列元件:

  • Azure 區域

    Azure 區域是一個地理區域,其中一或多個實體 Azure 資料中心 (稱為可用性區域) 位於此區域。區域獨立於其他區域,而廣大的距離可以將其分開 (跨國家或大陸)。

    Azure 和 OCI 區域都是本地化的地理區域。對於 Oracle Database@Azure ,Azure 區域會連線至 OCI 區域,而 Azure 中的可用性區域 (AZ) 則會連線至 OCI 中的可用性網域 (AD)。選取 Azure 和 OCI 區域配對可將距離和延遲降到最低。

  • Azure 可用性區域

    Azure 可用性區域是 Azure 區域內的實體獨立位置,透過提供獨立的電源、冷卻和網路,確保高可用性和彈性。

  • Azure 虛擬網路 (VNet)

    Azure 虛擬網路 (VNet) 是您在 Azure 中專用網路的基礎構建區塊。VNet 可讓許多類型的 Azure 資源 (例如 Azure 虛擬機器 (VM)) 安全地相互通訊、網際網路和內部部署網路。

  • Azure 委派子網路

    委派子網路可讓您將受管理的服務 (特別是平台即服務 (PaaS) 服務) 直接插入您的虛擬網路中作為資源。您可以在虛擬網路中完整整合外部 PaaS 服務。

  • Azure 虛擬網路介面卡 (VNIC)

    Azure 資料中心內的服務具有實體網路介面卡 (NIC)。虛擬機器執行處理使用與實體 NIC 關聯的虛擬 NIC (VNIC) 進行通訊。每個執行處理都有一個主要 VNIC,可在啟動時自動建立並連附,而且在執行處理的存留時間可供使用。

OCI 提供下列元件:

  • 地區

    Oracle Cloud Infrastructure 區域是一個本地化地理區域,其中包含一或多個代管可用性網域的資料中心。區域獨立於其他區域,而廣大的距離可以將其分開 (跨國家或大陸)。

  • 可用性網域

    可用性網域是區域內的獨立獨立資料中心。每個可用性網域中的實體資源會與其他可用性網域中的資源隔離,以提供容錯能力。可用性網域不會共用基礎架構,例如電源或冷卻系統,也不會共用內部可用性網域網路。因此,一個可用性網域的故障不應影響該區域中的其他可用性網域。

  • 虛擬雲端網路 (VCN) 和子網路

    VCN 是您在 Oracle Cloud Infrastructure 區域中設定的可自訂軟體定義網路。與傳統的資料中心網路一樣,VCN 可讓您控制網路環境。VCN 可以有多個非重疊的 CIDR 區塊,您可以在建立 VCN 之後變更。您可以將 VCN 區隔成子網路,此子網路可以設定區域範圍或可用性網域。每個子網路都是由連續的位址範圍組成,這些位址不會與 VCN 中的其他子網路重疊。您可以在建立子網路後變更其大小。子網路可以是公用或專用。

  • 路由表

    虛擬路由表包含將流量從子網路路由到 VCN 外部目的地 (通常是透過閘道) 的規則。

  • 本地對等互連

    本機對等互連可讓您對一個 VCN 與同一個區域中的另一個 VCN 對等互連。對等互連表示 VCN 使用私有 IP 位址進行通訊,而無需流量會周遊網際網路或透過內部部署網路進行路由。

  • 動態路由閘道 (DRG)

    DRG 是一個虛擬路由器,提供相同區域中 VCN 之間、VCN 與區域外網路 (例如其他 Oracle Cloud Infrastructure 區域中的 VCN、內部部署網路或其他雲端提供者中的網路) 之間的專用網路流量路徑。

  • 物件儲存

    OCI Object Storage 可讓您存取任何內容類型的大量結構化和非結構化資料,包括資料庫備份、分析資料,以及影像和影片等豐富內容。您可以直接從網際網路或雲端平台內安全地儲存資料。您可以擴展儲存體,而不會發生任何效能或服務可靠性的降低問題。

    針對您需要快速、立即和經常存取的「熱」儲存,使用標準儲存。針對長時間保留且極少或極少存取的「冷」儲存,使用封存儲存。

  • 資料保全

    Oracle Data Guard 和 Oracle Active Data Guard 提供一組全方位服務,可建立、維護、管理及監控一或多個待命資料庫,讓生產環境 Oracle 資料庫維持可用狀態,無須中斷。Oracle Data Guard 會使用記憶體內複製,將這些待命資料庫當作生產資料庫的複本來維護。如果生產資料庫因計畫性或非計畫性停機而無法使用,Oracle Data Guard 可以將任何待命資料庫切換至生產環境角色,將停機時間降到最低。Oracle Active Data Guard 提供額外功能,可將讀取幾乎工作負載卸載至待命資料庫,同時提供進階資料保護功能。

  • Oracle Database 自治式復原服務

    Oracle Database Autonomous Recovery Service 是保護 Oracle 資料庫的 Oracle Cloud 服務。OCI 資料庫的備份自動化和增強型資料保護功能可讓您將所有備份處理和儲存需求卸載至 Oracle Database Autonomous Recovery Service ,以降低備份基礎架構成本和手動管理負荷。

  • 專用基礎架構上的 Exadata 資料庫服務

    Oracle Exadata Database Service on Dedicated Infrastructure 可讓您在雲端中運用 Exadata 的強大功能。Oracle Exadata Database Service 在公有雲中針對特定用途建立的最佳化 Oracle Exadata 基礎架構,提供經實證的 Oracle Database 功能。針對所有 Oracle Database 工作負載,內建雲端自動化、彈性資源擴展、安全性和快速效能,可協助您簡化管理並降低成本。

  • Oracle Database@Azure

    Oracle Database@Azure 是在 Oracle Cloud Infrastructure (OCI) 上執行的 Oracle Database 服務 (Oracle Exadata Database Service on Dedicated Infrastructure 和 Oracle Autonomous Database Serverless),部署在 Microsoft Azure 資料中心。此服務提供 OCI 的功能和價格同等性。在 Azure Marketplace 購買此服務。

    Oracle Database@Azure 將 Oracle Exadata Database Service 、Oracle Real Application Clusters (Oracle RAC) 和 Oracle Data Guard 技術整合至 Azure 平台。使用者可以在 Azure 主控台和 Azure 自動化工具管理服務。此服務部署在 Azure Virtual Network (VNet) 中,並與 Azure 識別和存取管理系統整合。Azure 原生提供 OCI 和 Oracle Database 一般指標和稽核日誌。此服務需要使用者擁有 Azure 訂閱和 OCI 租用戶。

    Autonomous Database 建置在 Oracle Exadata 基礎架構上,具備自我管理、自我保護及自我修復等功能,有助於免除手動資料庫管理和人為錯誤。Autonomous Database 可使用您選擇的大型語言模型 (LLM) 和部署位置,使用內建 AI 功能,開發具備任何資料的可擴充 AI 應用程式。

    Oracle Exadata Database Service 和 Oracle Autonomous Database Serverless 皆透過原生 Azure 入口網站輕鬆佈建,能夠存取更廣泛的 Azure 生態系統。

建議

對 Oracle Database@Azure 上的 Oracle Exadata Database Service on Dedicated Infrastructure 執行災難復原時,請使用下列建議作為起點。您的需求可能與此處所述的架構不同。
  • 使用 Active Data Guard 可透過自動區塊修復、線上升級和遷移,以及將工作負載卸載至待命資料庫,以進行全面的資料損毀預防。
  • 啟用應用程式連續性,以遮蔽來自一般使用者之計畫性和非計畫性事件期間的資料庫中斷,並確保應用程式不中斷。
  • 設定 Oracle Database Autonomous Recovery Service (在 Azure 或 OCI 中) 的自動備份,即使資料受到 Oracle Data Guard 的保護,也能透過實行永久增量備份策略來減少資料庫上的備份工作負載。或者,客戶可以使用 OCI Object Storage 進行自動備份。
  • 啟用待命備份,以跨區域進行備份複寫。
  • 使用 OCI Full Stack DR 協調資料庫切換和容錯移轉作業。
  • 使用 OCI Vault 可使用客戶管理的金鑰儲存資料庫的通透資料加密 (TDE) 金鑰。

注意事項

執行 Oracle Database@Azure 上 Oracle Exadata Database Service on Dedicated Infrastructure 的多區域災害復原時,請考慮下列事項:

  • 在 Oracle Database@Azure 子項網站中建立 Exadata VM 叢集時,每個 VM 叢集都會建立在自己的 OCI VCN 內。Oracle Data Guard 需要資料庫相互通訊才能傳送 redo 資料。對等 VCN 啟用此通訊。因此,Exadata VM 叢集 VCN 不能共用重疊的 IP CIDR 範圍。
  • 準備災難案例需要全方位的方法來考量不同的業務需求和可用性架構,並將這些考量納入可行的高可用性和災難復原計畫中。此處所述的案例提供指導方針,針對 OCI 和 Microsoft Azure 環境中的災害復原組態使用簡單但有效的容錯移轉,協助選取最適合您應用程式部署的方法。
  • OCI 是獲得更佳效能的首選網路,以延遲和輸送量來衡量,並實現更低的成本,包括免費的前 10 TB/ 每月輸出。
  • 您可以透過 Cloud Tooling 為主要資料庫建立最多六個待命資料庫。
  • 使用雲端工具時,不支援建立與其他待命資料庫 (連鎖待命) 關聯的待命資料庫。

部署

請依照下列步驟設定架構圖中顯示的區域之間的網路通訊:

請依照下列步驟設定「主要」區域:

  1. 將下列輸入規則新增至 VCN1 從屬端子網路的安全清單,以允許來自 VCN2 和 VCN3 的內送流量。
    無狀態 來源 IP 協定 來源連接埠範圍 目的地連接埠範圍 Allows - 允許 描述
    編號 10.20.0.0/16 TCP 1521 1521 以下連接埠的 TCP 流量:1521 允許從 VCN2 傳入
    編號 10.30.0.0/16 TCP 1521 1521 以下連接埠的 TCP 流量:1521 允許從 VCN3 傳入
  2. 使用 CIDR 10.11.0.0/16 建立虛擬雲端網路 HubVCN1。
  3. 在虛擬雲端網路 HubVCN1 中建立本機對等互連閘道 HubLPG1。
  4. 在虛擬雲端網路 VCN1 中建立本機對等互連閘道 LPG1R。
  5. 建立 LPG1R 與 HubLPG1 之間的本機對等互連連線。
  6. 將路由規則新增至 VCN1 從屬端子網路的路由表,以將目標為 VCN2 和 VCN3 的流量轉送至 LPG1R。
    目的地 目標類型 Target 路由類型 描述
    10.20.0.0/16 本地對等互連閘道 LPG1R 靜態 交通至 VCN2
    10.30.0.0/16 本地對等互連閘道 LPG1R 靜態 交通至 VCN3
  7. 在 HubVCN1 中建立路由表 HubLPG1rt。
  8. 建立路由表 HubLPG1rt 與本機對等互連閘道 HubLPG1 的關聯。
  9. 建立動態路由閘道 DRG1。
  10. 在 HubVCN1 中建立路由表 DRG1rt。
  11. 新增路由規則至路由表 DRG1rt,以將目標為 VCN1 的流量轉送至 HubLPG1。
    目的地 目標類型 Target 路由類型 描述
    10.10.0.0/16 本地對等互連閘道 HubLPG1 靜態 交通至 VCN1
  12. 若要將 DRG1 附加至 HubVCN1,請執行下列動作:
    1. 選取自動產生的 VCN 連附項 Drg 路由表。
    2. 選取現有的路由表 DRG1rt。
    3. 選取 VCN CIDR 區塊。
  13. 在 DRG1 中建立兩個遠端對等互連連線,名稱為 RPC1a 和 RPC1b。
  14. 新增兩個路由規則至 HubLPG1rt,以將目標為 VCN2 和 VCN3 的流量轉送至 DRG1。
    目的地 目標類型 Target 路由類型 描述
    10.20.0.0/16 動態路由閘道 DRG1 靜態 交通至 VCN2
    10.30.0.0/16 動態路由閘道 DRG1 靜態 交通至 VCN3

依照這些步驟建立第一個「待命」區域 (區域 2):

  1. 將下列輸入規則新增至 VCN2 從屬端子網路的安全清單,以允許來自 VCN1 和 VCN3 的內送流量。
    無狀態 來源 IP 協定 來源連接埠範圍 目的地連接埠範圍 Allows - 允許 描述
    編號 10.10.0.0/16 TCP 1521 1521 以下連接埠的 TCP 流量:1521 允許從 VCN1 傳入
    編號 10.30.0.0/16 TCP 1521 1521 以下連接埠的 TCP 流量:1521 允許從 VCN3 傳入
  2. 建立 CIDR 為 10.22.0.0/16 的虛擬雲端網路 HubVCN2。
  3. 在虛擬雲端網路 HubVCN2 中建立本機對等互連閘道 HubLPG2。
  4. 在虛擬雲端網路 VCN2 中建立本機對等互連閘道 LPG2R。
  5. 建立 LPG2R 與 HubLPG2 之間的本機對等互連連線。
  6. 將路由規則新增至 VCN2 從屬端子網路的路由表,以將目標為 VCN1 和 VCN3 的流量轉送至 LPG2R。
    目的地 目標類型 Target 路由類型 描述
    10.10.0.0/16 本地對等互連閘道 LPG2R 靜態 交通至 VCN1
    10.30.0.0/16 本地對等互連閘道 LPG2R 靜態 交通至 VCN3
  7. 在 HubVCN2 中建立路由表 HubLPG2rt。
  8. 建立路由表 HubLPG2rt 與本機對等互連閘道 HubLPG2 的關聯。
  9. 建立動態路由閘道 DRG2。
  10. 在 HubVCN2 中建立路由表 DRG2rt。
  11. 將路由規則新增至 DRG2rt,以將目標為 VCN2 的流量轉送至 HubLPG2。
    目的地 目標類型 Target 路由類型 描述
    10.20.0.0/16 本地對等互連閘道 HubLPG2 靜態 交通至 VCN2
  12. 若要將 DRG1 附加至 HubVCN2,請執行下列動作:
    1. 選取自動產生的 VCN 連附項 Drg 路由表。
    2. 選取現有的路由表 DRG2rt。
    3. 選取 VCN CIDR 區塊。
  13. 在 DRG2 中建立兩個遠端對等互連連線,名稱為 RPC2a 和 RPC2c。
  14. 在 RPC1a (區域 1) 和 RPC2a (區域 2) 之間建立遠端對等互連連線。
  15. 新增兩個路由規則至 HubLPG2rt,以將目標為 VCN1 和 VCN3 的流量轉送至 DRG2。
    目的地 目標類型 Target 路由類型 描述
    10.10.0.0/16 動態路由閘道 DRG2 靜態 交通至 VCN1
    10.30.0.0/16 動態路由閘道 DRG2 靜態 交通至 VCN3

依照這些步驟建立第二個「待命」區域 (區域 3):

  1. 將下列輸入規則新增至 VCN3 從屬端子網路的安全清單,以允許來自 VCN1 和 VCN2 的內送流量。
    無狀態 來源 IP 協定 來源連接埠範圍 目的地連接埠範圍 Allows - 允許 描述
    編號 10.10.0.0/16 TCP 1521 1521 以下連接埠的 TCP 流量:1521 允許從 VCN1 傳入
    編號 10.20.0.0/16 TCP 1521 1521 以下連接埠的 TCP 流量:1521 允許從 VCN2 傳入
  2. 使用 CIDR 10.33.0.0/16 建立虛擬雲端網路 HubVCN3。
  3. 在虛擬雲端網路 HubVCN3 中建立本機對等互連閘道 HubLPG3。
  4. 在虛擬雲端網路 VCN3 中建立本機對等互連閘道 LPG3R。
  5. 建立 LPG3R 與 HubLPG3 之間的本機對等互連連線。
  6. 將路由規則新增至 VCN3 從屬端子網路的路由表,以將目標為 VCN1 和 VCN2 的流量轉送至 LPG3R。
    目的地 目標類型 Target 路由類型 描述
    10.10.0.0/16 本地對等互連閘道 LPG3R 靜態 交通至 VCN1
    10.20.0.0/16 本地對等互連閘道 LPG3R 靜態 交通至 VCN2
  7. 在 HubVCN3 中建立路由表 HubLPG3rt。
  8. 建立路由表 HubLPG3rt 與本機對等互連閘道 HubLPG3 的關聯。
  9. 建立動態路由閘道 DRG3。
  10. 在 HubVCN3 中建立路由表 DRG3rt。
  11. 將路由規則新增至 DRG3rt,以將目標為 VCN3 的流量轉送至 HubLPG3。
    目的地 目標類型 Target 路由類型 描述
    10.30.0.0/16 本地對等互連閘道 HubLPG3 靜態 交通至 VCN3
  12. 若要將 DRG1 附加至 HubVCN3,請執行下列動作:
    1. 選取自動產生的 VCN 連附項 Drg 路由表。
    2. 選取現有的路由表 DRG3rt。
    3. 選取 VCN CIDR 區塊。
  13. 在 DRG3 中建立兩個遠端對等互連連線,名稱為 RPC3b 和 RPC3c。
  14. 在 RPC1b (區域 1) 和 RPC3b (區域 3) 之間建立遠端對等互連連線。
  15. 在 RPC2c (區域 2) 和 RPC3c (區域 3) 之間建立遠端對等互連連線。
  16. 新增兩個路由規則至 HubLPG3rt,以將目標為 VCN1 和 VCN2 的流量轉送至 DRG3。
    目的地 目標類型 Target 路由類型 描述
    10.10.0.0/16 動態路由閘道 DRG3 靜態 交通至 VCN1
    10.20.0.0/16 動態路由閘道 DRG3 靜態 交通至 VCN2

確認

  • 授權者:Sinan Petrus Toma, Sebastian Solbach, Julien Silverston
  • 提供者:Sreya Dutta