分享方式:


Azure Kubernetes Service 上的 Azure HDInsight 可靠性

本文說明 Azure Kubernetes Service (AKS) 上的 Azure HDInsight 可靠性支援,並涵蓋特定的可靠性建議和災害復原和商務持續性。 如需更多關於 Azure 可靠性準則的詳細概觀,請參閱 Azure 可靠性

可靠性建議

本節內含成功復原和可用性的建議。 每個建議都屬以下其中一類 (共兩類):

  • 健康情況項目涵蓋的領域包括設定項目,以及構成 Azure 工作負載 (例如 Azure 資源組態設定、與其他服務的相依性等) 的主要元件的正確函式。

  • 風險項目涵蓋的領域包括可用性和復原需求、測試、監視、部署等其他項目,若不解決,環境將經常出現問題。

可靠性建議優先順序矩陣

每個建議都根據以下優先順序矩陣標記:

映像 優先順序 描述
需要立即修正。
在 3-6 個月內修正。
需要檢閱。

可靠性建議摘要

類別 優先順序 建議
可用性 默認和最小虛擬機大小建議
AKS 叢集上的自動調整 HDInsight
監視 如何與 Log Analytics 整合
使用 Azure 受控 Prometheus 和 Grafana 進行監視
安全性 使用 NSG 限制 AKS 上 HDInsight 的流量

可用性區域支援

Azure 可用性區域是每個 Azure 區域內至少三個實體獨立的資料中心群組。 每個區域內的資料中心都配備了獨立的電源、冷卻系統和網路基礎結構。 在本機區域失敗的案例中,可用性區域的設計在於,當一個區域受影響時,讓其餘兩個區域支援區域服務、容量和高可用性。

這類失敗的範圍可從軟體和硬體故障,擴及到如地震、淹水和火災的事件。 透過 Azure 服務的備援和邏輯隔離,實現對失敗的容錯。 如需深入了解 Azure 的可用性區域,請參閱區域和可用性區域

已啟用 Azure 可用性區域的服務旨在提供正確程度的可靠性和彈性。 您可以透過兩種方式加以設定。 它們可以是區域備援,具有跨區域自動複寫功能,或者是區域性的,將執行個體釘選在特定區域。 兩種方法可以結合使用。 如需深入了解區域和區域備援結構,請參閱使用可用性區域和區域的建議

AKS 上的 Azure HDInsight 利用 Azure Kubernetes Service 建立區域備援節點集區的能力,支援可用性區域。 您可以在建立叢集集區和叢集期間選取要部署的可用性區域。 建立叢集集區或叢集之後,就無法變更可用性區域。

必要條件

  • 可用性區域只支援叢集集區版本 >= 1.2 和叢集版本 >= 1.2.1

  • AKS 上的 Azure HDInsight 只有一個預設 SKU,只要 Azure 區域有 AZ 支援,就支援 AZ。

    下列區域不支援 AZ:

    美洲 歐洲 中東 非洲 亞太地區
    美國西部 德國北部
  • 某些 VM SKU 可能不支援區域中的所有可用性區域。 如果您選取這些 SKU,AKS 叢集集區或叢集上的 HDInsight 也不支援對應的可用性區域。

SLA 改善項目

在已啟用可用性區域的 AKS 叢集上,Azure HDInsight 不會增加 SLA。

建立已啟用可用性區域的資源

  • 叢集集區 選取區域之後,您可以在叢集集區建立期間選取一或多個可用性區域。

  • 叢集 您可以在叢集建立期間選取一或多個可用性區域。

容錯

若要準備可用性區域失敗,建議過度布建服務的容量,以確保叢集可以容忍一個可用性區域中斷的容量遺失,並在全區域中斷期間繼續運作,而不會降低效能。 例如,如果您啟用 3 個可用性區域,您的叢集應該容許 1/3 的節點向下捨入(四捨五入為最接近的整數)。

分區關閉體驗

AKS 服務上的 Azure HDInsight 是區域備援。 在全區域中斷期間,客戶應該預期效能會因為容量下降而降低效能。 客戶仍然可以在不影響的可用性區域中建立新的叢集集區和叢集。 現有的叢集可以隨著容量降低而運作。 檔提供個別 開放原始碼 工作負載建議和最佳做法。

災害復原和商務持續性

災害復原 (DR) 是指從重大影響事件中復原,例如自然災害或不成功的部署 (導致停機和資料遺失)。 無論原因為何,解決災害的最佳辦法是定義完善且經過測試的 DR 方案,以及主動支援 DR 的應用程式設計。 開始思考建立災害復原方案之前,請參閱設計災害復原策略的建議

Microsoft 在災害復原方面採取共同責任模型。 在共同責任模型中,Microsoft 確保基準基礎結構和平台服務可供使用。 此時,許多 Azure 服務不會自動複寫資料,或從失敗區域回復為交叉複寫到另一個已啟用的區域。 您需要為這些服務制定適合工作負載的災害復原方案。 大多數在 Azure 平台即服務 (PaaS) 供應項目執行的服務,皆提供支援災害復原的功能和指導,您可以使用支援快速復原的特定服務功能來開發災害復原方案。

AKS 控制平面服務和資料庫的 Azure HDInsight 會部署在 Azure 的區域。 在這些區域中,AKS 實例和資料庫實例上的 Azure HDInsight 會隔離。 發生區域層級中斷時,一個區域會關閉。 此區域的所有資源,包括 AKS 控制平面上 Azure HDInsight 的 RP(資源提供者)、AKS 控制平面上的 Azure HDInsight 資料庫,以及該區域中的所有客戶叢集。 在此情況下,我們只能等候區域中斷結束。 當區域中斷完全復原時,AKS 服務上的 Azure HDInsight 會回復,且所有客戶叢集都會恢復正常。 您可能會在中斷后因數據不一致而遇到一些問題,而且可能需要根據您的應用程式工作負載手動修正。

多地區災害復原

AKS 上的 Azure HDInsight 目前不支援跨區域故障轉移。 使用跨區域高可用性災害復原來改善商務持續性,需要較高複雜度和較高成本的架構設計。 客戶可以選擇設計自己的解決方案,以跨不同區域備份重要數據和作業狀態。

中斷偵測、通知及管理

  • 使用 AKS 上的 HDInsight 上的 Azure 監視工具來偵測叢集中的異常行為,並設定對應的警示通知。 您可以透過各種方式啟用Log Analytics,並使用受控 Prometheus 服務搭配 Azure Grafana 儀錶板進行監視。 如需詳細資訊,請參閱 Azure 監視器整合

  • 訂閱 Azure 健康情況警示,以通知訂用帳戶、服務或區域的服務問題、計劃性維護、健康情況和安全性諮詢。 包含問題原因和解析 ETA 的健康情況通知可協助您更妥善地執行容錯移轉和容錯回復。 如需詳細資訊,請參閱 管理服務健康情況Azure 服務健康狀態檔

單一區域災害復原

目前,AKS 上的 Azure HDInsight 只有一個標準服務供應專案,而且叢集會在單一區域地理位置中建立。 客戶會根據應用程式需求負責診斷復原設定。

容量和主動式災害復原能力

AKS 上的 Azure HDInsight 及其客戶會以共用責任模型運作,這表示客戶必須解決其部署和控制服務的災害復原需求。 為了確保復原是主動式的,客戶應該一律預先部署次要,因為對於尚未預先配置的人員,在影響時無法保證容量。

不同於 HDInsight,AKS 叢集上 HDInsight 中使用的 虛擬機器 需要與 Azure VM 相同的配額。 如需詳細資訊,請參閱 容量規劃

若要深入了解本文中討論的項目,請參閱: