共用方式為


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

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

關於叢集高可用性的考慮

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

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

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

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

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

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

處理資料庫失敗

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

處理前端節點失敗

在叢集中設定至少 2 個前端節點。 使用此設定時,任何前端節點失敗都會導致將作用中的 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. 建立高可用性 HPC Pack 叢集

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

此範本會針對現有 Active Directory 網域樹系中的 Windows HPC 工作負載部署高可用性的 HPC Pack 叢集。 叢集包含兩個前端節點:SQL Azure 資料庫,以及可設定的 Windows 計算節點數目。 如果您有已設定 Express Route 的虛擬網路,而且您想要將叢集加入內部部署 Active Directory 網域,您可以選擇不要為前端節點建立公用 IP 位址。

注意: 請確定您已在您要在其中建立叢集的子網上啟用 Azure SQL Database(Microsoft.Sql) 的服務端點。

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 檔案記憶體共用。