本文示範如何在兩個月臺的高可用性架構中部署已啟用 Azure Arc 的 SQL 受控實例。 它是以 Azure Arc Jumpstart ArcBox for DataOps 實作為基礎。
架構
下載此架構的 PowerPoint 檔案。
工作流程
下列工作流程會對應至上圖:
- 部署兩個已啟用 Azure Arc 的 Kubernetes 叢集,每個虛擬網路中各一個代表兩個不同的月臺。
- 虛擬網路對等互連會在兩個虛擬網路之間建立,以便它們能夠通訊。
- 域控制器會部署在每個站台中。 Active Directory 複寫會在它們之間設定。
- 每個 Kubernetes 叢集中都會部署 Azure Arc 數據控制器。
- 已啟用 Azure Arc 的 SQL 受控實例會部署在主要叢集中,並部署在 業務關鍵 服務層級。
- 已啟用 Azure Arc 的 SQL 受控實例會部署在次要叢集中,業務關鍵 服務層級。 它已設定為災害復原實例。
- 如果主要月臺失敗,系統就會故障轉移至次要站台中的SQL受控實例。
元件
- Azure Arc。Azure Arc 是延伸 Azure 平台的橋樑,可協助您建置應用程式和服務。
- 已啟用 Azure Arc 的 Kubernetes。 您可以使用已啟用 Azure Arc 的 Kubernetes,在 Azure 內部或外部鏈接及設定 Kubernetes 叢集。 當 Kubernetes 叢集連結至 Azure Arc 時,您可以將 Azure Arc 數據服務部署到 Azure Arc,例如已啟用 Azure Arc 的服務 SQL 受管理執行個體。
- Azure Arc 數據控制器。 Azure Arc 資料控制器是已啟用 Azure Arc 的數據服務架構中的協調器。 其會管理服務,例如布建、彈性、復原能力、監視和高可用性。
- 已啟用 Azure Arc 的 SQL 受管理執行個體。 您可以部署已啟用 Azure Arc 的 SQL 受管理執行個體 來裝載您的資料工作負載。 它支援混合式和多重雲端基礎結構上的 Azure PaaS 數據服務。
- 域控制器。 域控制器會部署到此架構,以管理已啟用 Azure Arc 的 SQL 受控實例的驗證和授權。
案例詳細資料
此案例是以 Azure Arc Jumpstart ArcBox for DataOps 實作為基礎。 ArcBox 是一種解決方案,可為 Azure Arc 提供易於部署的沙盒。ArcBox for DataOps 是一種 ArcBox 版本,可協助您在沙盒環境中體驗已啟用 Azure Arc 的 SQL 受管理執行個體 功能。
潛在使用案例
此架構的一般使用案例包括:
- 在一個站臺上部署高可用性已啟用 Azure Arc 的 SQL 受控實例,以復原失敗。
- 在主要月臺和DR站台中部署已啟用 Azure Arc 的 SQL 受控實例,以從完整的月臺停機復原。
- 針對位於混合式或多重雲端基礎結構上的任務關鍵性應用程式,部署復原性數據後端。
建議
下列建議適用於大部分案例。 除非您有覆寫建議的特定需求,否則請遵循這些建議。
已啟用 Azure Arc 的 SQL 受管理執行個體 部署
您可以將任何 已驗證的 Kubernetes 散發套件 連線至 Azure Arc。聯機叢集之前,請務必完成 已啟用 Azure Arc 的 Kubernetes 必要條件。
聯機叢集之後,您必須部署 Azure Arc 數據控制器。 首先,完成 Azure Arc 數據控制器的必要條件。 然後,您可以部署 SQL 受管理執行個體。
有兩個服務層級可讓您部署已啟用 Azure Arc 的 SQL 受管理執行個體:
- 一般用途是成本較低的層,專為具有常見效能和可用性功能的大多數工作負載所設計。
- 業務關鍵 層是針對具有較高可用性功能的效能敏感工作負載所設計。
如需層級的更詳細比較,請參閱已啟用 Azure Arc 的 SQL 受管理執行個體 服務層級。
監視已啟用 Azure Arc 的 SQL 受管理執行個體
您可以使用 Azure 監視器中的 Log Analytics 來監視已啟用 Azure Arc 的 SQL 受管理執行個體,也可以使用如 Grafana 的開放原始碼解決方案。
設計和規劃 Log Analytics 工作區部署。 將它部署在收集、匯總及稍後分析數據的容器中。 Log Analytics 工作區提供數據的地理位置、數據隔離,以及數據保留之類的設定範圍。 使用單一 Log Analytics 工作區,如 Azure 雲端採用架構 中的管理和監視最佳做法中所述。
商務持續性和災害復原
在具有三個複本的 業務關鍵 服務層級中部署已啟用 Azure Arc 的 SQL 受管理執行個體,以達到接近零的數據遺失。
請確定已啟用 Arc 的實例 SQL 受管理執行個體 在主要和次要網站上有不同的名稱,而且網站的共享名稱值相同。
執行一般災害復原演練,以驗證故障轉移程式。
建立起始手動和強制故障轉移的程式。
使用 Azure 監視器容器深入解析來監視已啟用 Azure Arc 的 Kubernetes 叢集健康情況。
定義 DNS 伺服器中分散式可用性群組共享名稱的 DNS 記錄,以避免需要在故障轉移期間手動建立 DNS 記錄。
如需更多最佳做法和指引,請參閱已啟用 Azure Arc 的商務持續性和災害復原 SQL 受管理執行個體。
考量
這些考量能實作 Azure Well-Architected Framework 的支柱,其為一組指導原則,可以用來改善工作負載的品質。 如需更多資訊,請參閱 Microsoft Azure 結構完善的架構。
可靠性
可靠性可確保您的應用程式符合您對客戶的承諾。 如需詳細資訊,請參閱 可靠性的設計檢閱檢查清單。
- 定義恢復點目標 (RPO) 和復原時間目標 (RTO) 的目標。
- 設定 時間點還原 ,讓您可以將資料庫還原到先前的時間點。
- 決定在 業務關鍵 服務層級中部署的一到三個複本數目。
- 判斷要部署在 業務關鍵 服務層級中的次要複本數目。 當您在具有兩個或多個復本的 業務關鍵 服務層級中部署實例時,您可以將次要複本設定為可讀取。 如需變更號碼的資訊,請參閱 設定可讀取的次要複本。
- 決定如何監視主要實例的停機時間,以判斷何時執行故障轉移至次要實例。
- 請確定在異地主要和異地次要站台中 SQL 受管理執行個體 啟用 Azure Arc 的實例在計算和容量中都相同,且部署至相同的服務層級。
- 決定在建立災害復原組態時儲存鏡像憑證的位置。 裝載實例的這兩個叢集都必須能夠存取位置。
- 決定要使用的 Kubernetes 服務類型:
LoadBalancer
或NodePort
。 如果您使用LoadBalancer
,應用程式可以重新連線到相同的主要端點,而 Kubernetes 會將連線重新導向至新的主要端點。 如果您使用NodePort
,應用程式必須重新連線到新的IP位址。 - 檢閱 商務持續性和災害復原 指引,以判斷是否符合您的需求。
安全性
安全性可提供保證,以避免刻意攻擊和濫用您寶貴的資料和系統。 如需詳細資訊,請參閱 安全性的設計檢閱檢查清單。
- 決定要在其中部署已啟用 Azure Arc 的 SQL 受控實例和數據控制器的 Azure 區域。 考慮您的安全性和合規性需求,以及任何數據主權需求。 請注意 以直接連線模式和間接連線模式從資源 收集的數據類型,並根據組織的數據落地需求進行相應規劃。
- 已啟用 Azure Arc 的 SQL 受控實例可以位於混合式或多重雲端 Kubernetes 叢集中。 檢閱雲端提供者和 Kubernetes 散發的安全性與治理考慮。
- 考慮到貴組織的職責和最低許可權存取需求的區隔,請為您的組織定義叢集管理、作業、資料庫管理和開發人員角色。 每個小組與動作和責任的對應會根據您使用的連線模式,決定 Azure 角色型存取控制 (RBAC) 角色或 Kubernetes
ClusterRoleBinding
和RoleBinding
。 - 決定在已啟用 Azure Arc 的 SQL 受控實例中使用的驗證模型:Microsoft Entra 驗證或 SQL 驗證。 如需 可協助您選擇正確模型的考慮和建議,請檢閱身分識別和存取管理設計區域 。
- 檢閱已啟用 Azure Arc SQL 受管理執行個體 的數據工作負載中可用的安全性功能。
- 請考慮使用最新版本將已啟用 Azure Arc 的 SQL 受控實例保持在最新狀態的需求,無論是部署在直接連線模式還是間接連線模式中。 如需指引,請參閱 可升級性專業領域的重要設計區域。
- 檢閱已啟用 Azure Arc 的 Kubernetes 治理和安全性專業領域設計區域中的設計考慮。
- 如需已啟用 Azure Arc SQL 受管理執行個體 安全性功能的完整概觀,請參閱安全性和治理專業領域。
成本優化
成本優化是考慮如何減少不必要的費用,並提升營運效率。 如需詳細資訊,請參閱 成本優化的設計檢閱檢查清單。
- 定義您的商務需求,以判斷最適當的服務層級。 也請考慮支援商務持續性和災害復原所需的額外基礎結構。
- 請注意,使用方式和計費資訊傳送至 Azure 的方式會因您使用直接連線模式或間接連線模式而有所不同。 如果您使用間接連線模式,請考慮如何定期將使用量和計費資訊傳送至 Azure。
- 根據您預期使用已啟用 Azure Arc 的 SQL 受管理執行個體 時間長度,請考慮隨用隨付、一年期保留實例或三年期保留實例最符合成本效益。
- 請記住,Azure Hybrid Benefits 可節省已啟用 Azure Arc 的兩個服務層級 SQL 受管理執行個體。
- 如需更多成本優化指引,請參閱已啟用 Azure Arc 的成本控管 SQL 受管理執行個體。
- 使用 Azure 定價計算機來預估成本。
- 如果您為此架構部署 Jumpstart ArcBox for DataOps 參考實作,請記住 ArcBox 資源會從基礎 Azure 資源產生 Azure 耗用量費用。 這些資源包括核心計算、記憶體、網路和輔助服務。
卓越營運
卓越營運涵蓋部署應用程式的作業程式,並讓它在生產環境中執行。 如需詳細資訊,請參閱 Operational Excellence的設計檢閱檢查清單。
- 請檢閱已啟用 Azure Arc SQL 受管理執行個體 登陸區域加速器中的可升級性設計原則,以瞭解如何將實例保持在最新狀態的最佳做法。
- 檢閱 Azure Arc Jumpstart Unified Operations Use Cases,以瞭解已啟用 Azure Arc SQL 受管理執行個體 的更多營運卓越案例。
效能效率
效能效率是工作負載調整的能力,以符合使用者以有效率的方式滿足其需求。 如需詳細資訊,請參閱 效能效率的設計檢閱檢查清單。
- 使用 Azure 監視器從已啟用 Azure Arc 的 SQL 受控實例收集計量和記錄,以取得詳細的分析和相互關聯。 檢閱 部署選項。
- 您也可以使用 Grafana 和 Kibana 等開放原始碼工具來監視您的實例。
部署此案例
您可以在 Jumpstart ArcBox for DataOps 中找到此架構的參考實作,這是 Azure Arc Jumpstart 專案的一部分。 ArcBox 的設計目的是在單一 Azure 訂用帳戶和資源 群組中獨立。 ArcBox 可協助您取得 Azure Arc 的實作體驗。
若要開始使用,請移至 Jumpstart ArcBox for DataOps:
參與者
本文由 Microsoft 維護。 原始投稿人如下。
主要作者:
- Seif Bassem |資深雲端解決方案架構師
其他投稿人:
- Mick Alberts | 技術寫入員
若要查看非公開的 LinkedIn 設定檔,請登入 LinkedIn。
下一步
- Azure Arc 文件
- 已啟用 Azure Arc 的 SQL 受管理執行個體 概觀
- Azure Arc 學習路徑
- Azure Arc Jumpstart 案例
- 混合式和多重雲端的 Azure Arc 登陸區域加速器簡介