共用方式為


在 Azure 中建置高可用性 HPC Pack 叢集

在本文中,我們將提供在 Azure 中建置高可用性 HPC Pack 叢集的步驟和考慮。

關於叢集高可用性的考慮

典型的 HPC Pack 叢集是由 SQL Server,以及儲存 HPC 作業的資料庫所組成;執行排程器服務 SDM 服務等重要服務的 前端節點 伺服器;一組 計算節點,連線到前端節點上的服務會執行使用者的 HPC 工作負載。 此外,我們也需要 域控制器 來提供客戶端驗證。 所有這些元件都是透過 網路相互連線。

在 Azure 雲端環境中,上述任何元件都可能會失敗,例如,針對 Windows Update 重新啟動前端節點,某些計算節點可能會重新啟動,因為您使用的是低優先順序的 VM。 因此,如何設定符合下列條件的高可用 HPC Pack 叢集:

  1. 上述任何元件都失敗,使用者工作負載仍然可以執行,而不會取消或失敗

  2. 在失敗的計算節點上執行的工作應重新排程至其他計算節點

  3. 叢集仍可提供服務,包括叢集管理、作業管理

因此,讓我們討論每個元件失敗狀況及其高可用性解決方案。

處理資料庫失敗

您可以選擇在雲端上取得高可用性 SQL 資料庫:

  • 使用 Azure SQL Database

  • 使用 ARM 範本來部署 SQL AlwaysOn 叢集,您可以參考此部落格

處理前端節點失敗

至少設定 3 個前端節點叢集。 使用此設定時,任何前端節點失敗都會使作用中的 HPC 服務從此前端節點移至其他節點。

處理 AD 失敗

當 HPC 無法連線到域控制器時,系統管理員和使用者將無法連線到 HPC 服務,因此無法管理和提交作業至叢集。 而且,當 NodeManager 服務無法驗證作業的認證時,新作業將無法在已加入網域的電腦節點上啟動。 因此,您需要考慮下列選項:

  1. 在 Azure 中使用 HPC Pack 叢集部署高可用性域控制器

  2. 使用 Azure AD 網域服務。 在叢集部署期間,您可以只將所有叢集節點加入此網域,並從 Azure 取得高可用的網域服務。

  3. 使用 HPC Pack Azure AD 整合解決方案,而不需要將叢集節點加入任何網域。 因此,只要 HPC Service 能夠連線到 Azure AD 服務。

處理網路失敗

Azure 資料中心的網路本身是高可用性的,因此我們不需要有備份網路。

建置高可用性 HPC Pack 叢集

我們有 ARM 範本 在這裡,請選取能夠部署具有下列選項的高可用 HPC 叢集:

  1. 建立 Azure SQL Database

  2. 聯機到現有的Active Directory網域

  3. 建立 3 前端節點 HPC Pack 叢集

範本:具有 Azure SQL 資料庫的高可用性叢集,適用於具有現有 Active Directory 網域的 Windows 工作負載

此範本會針對現有 Active Directory 網域樹系中的 Windows HPC 工作負載部署高可用性的 HPC Pack 叢集。 叢集包含 三個 前端節點、SQL Azure 資料庫,以及可設定數目的 Windows 計算節點。

HPC Pack 叢集共用

目前在所有 HPC Pack ARM 範本中,我們會在其中一個前端節點上建立叢集共用,因為該前端節點已關閉,其他前端節點上執行的 HPC 服務將無法存取共用。 基本上,這不會影響執行中的作業和管理節點。

透過 Azure 檔案記憶體,這些檔案共用可以移至具有 SMB 許可權的 Azure 檔案共用,使其具有高可用性。 請參閱此檔

共用名稱 使用狀況 預設位置 關閉時的影響 讓高可用性的方式
遠端安裝共用 叢集設定之後,我們會將此共享資料夾中的 HPC Pack 安裝程式二進位檔放在此資料夾中,讓用戶端電腦和計算機器可以從此共用執行安裝目錄。 \\<HN3>\REMINST 當此共用關閉或無法存取時,它不會影響 HPC 叢集的任何現有功能。 叢集管理員也可以在其他兩個前端節點上建立相同的共用,並在該處複製設定的二進位檔,讓任何前端節點關閉,共用仍可供使用
HPC SOA 註冊共用 此共用會儲存SOA服務註冊檔案 \\<HN3>\HpcServiceRegistration 依賴此共用中註冊檔案的SOA服務作業將無法執行 註冊新的 SOA 服務組態檔時,請勿將註冊檔案放在共用中,但使用 匯入高可用性組態檔... 從叢集管理員將 SOA 服務註冊檔案匯入 HPC Cluster 可靠存放區,讓註冊檔案即使在共用關閉時仍可供使用
HPC SOA 執行時間共用 此共用會儲存SOA作業的一般數據 \\<HN3>\Runtime$ 具有一般數據的 SOA 作業將會失敗 SOA 用戶端需要將一般數據放入 Azure 記憶體,以便即使運行時間共用已關閉,仍可使用通用數據
HPC SOA TraceRepository Soa 診斷追蹤存放庫。 \\<HN3>\TraceRepository 如果開啟SOA診斷追蹤,追蹤將無法收集。 使用 Azure 檔案記憶體共用。
HPC 診斷共用 此共用會儲存診斷測試結果 \\<HN3>\Diagnostics 當此共享關閉時,HPC Diagnostics 作業將會失敗,因為它沒有寫入測試結果的位置。 叢集管理員可以在想要執行 diag 測試時切換至新的 diag 共用。 若要變更為新的 diag 共用,請執行 HPC powershell Cmd
set-HpcClusterRegistry -PropertyName DiagnosticsShare -PropertyValue "\\<HN2>\diagnostics"
CcpSpoolDir 計算節點的輸出多任務緩衝共用。 \\<HN3>\CcpSpoolDir 如果用於工作輸出,工作將無法寫入輸出數據。 使用 Azure 檔案記憶體共用。