適用於 Slurm 的 Azure CycleCloud 工作區是免費的 Marketplace 應用程式,可提供簡單、安全且可調整的方式來管理 HPC 和 AI 工作負載的計算和記憶體資源。 在本快速入門中,您會使用 Azure Marketplace 應用程式安裝 CycleCloud Workspace for Slurm。
部署及設定 Slurm CycleCloud 工作區的主要步驟包括 Open OnDemand:
- 開始之前,請先檢閱這些指示: 規劃您的 CycleCloud 工作區以進行 Slurm 部署。
- 使用 Azure Marketplace 部署適用於 Slurm 環境的 CycleCloud 工作區(本快速入門)。
- 註冊 Open OnDemand 驗證的Microsoft Entra ID 應用程式: 註冊 Open OnDemand 的 Microsoft Entra ID 應用程式。
- 設定 Open OnDemand 以使用 Microsoft Entra ID 應用程式: 使用 CycleCloud 設定 Open OnDemand
- 在 CycleCloud 中新增使用者: 新增 Open OnDemand 的使用者
先決條件
在本快速入門中,您需要:
- 具有有效訂用帳戶的 Azure 帳戶
- 訂用帳戶層級的 參與者 和 使用者存取系統管理員 角色
- 如果您需要部署 Open OnDemand,請直接連線到叢集所使用的虛擬網路(也就是不使用 Azure Bastion)
- 註冊 Microsoft Entra ID 應用程式的許可權——如果您需要部署 Open OnDemand
如何部署
- 登入 Azure 入口網站。
- 選取 [+ 建立資源]。
- 在 [ 搜尋服務和市集 ] 方塊中,輸入 Slurm ,然後選取 [適用於 Slurm 的 Azure CycleCloud 工作區]。
- 在 [ 適用於 Slurm 的 Azure CycleCloud 工作區] 頁面上,選取 [ 建立]。
基礎知識
- 在 [ 適用於 Slurm 的新增 Azure CycleCloud 工作區] 帳戶 頁面上,輸入或選取下列詳細數據。
- 訂用帳戶:如果尚未選取訂用帳戶,請選取要使用的訂用帳戶。
- 區域:選取您想要為 Slurm 環境部署 CycleCloud 工作區的 Azure 區域。
- 資源群組:選取適用於 Slurm 帳戶的 Azure CycleCloud 工作區資源群組,或建立新的資源群組。
- CycleCloud VM 大小:選擇新的 VM 大小或保留預設 VM 大小。
- 系統管理員使用者:輸入 CycleCloud 系統管理員帳戶的名稱和密碼。
- 管理員 SSH 公鑰:直接選取系統管理員帳戶的公用 SSH 金鑰,或儲存在 Azure 中的 SSH 金鑰資源中。
檔案系統
使用者的主目錄 - 新建
指定要放置使用者主目錄的位置。
Builtin NFS - 使用排程器 VM 作為具有連結資料磁碟的 NFS 伺服器。
Azure NetApp Files - 建立具有指定容量和服務等級的 ANF 帳戶、集區和磁碟區。
使用者的主目錄 - 使用現有目錄
如果您有現有的 NFS 裝入點,請選取 [ 使用現有] 選項,並指定要掛接的設定。
增補檔案系統掛接 - 建立新的
如果您需要為項目資料掛接另一個檔案系統,您可以建立新的檔案系統或指定現有的檔案系統。 您可以建立新的 Azure NetApp Files 磁碟區或 Azure 受控 Lustre 文件系統。
增補檔案系統掛接 - 使用現有的
如果您有現有的外部 NFS 裝入點或 Azure Managed Lustre 檔案系統,您可以指定掛接選項。
網路
指定是否要建立新的虛擬網路和子網,或使用現有的虛擬網路。
建立新的虛擬網路
- 選取對應至您要設定目標的計算節點數目的 CIDR,並指定基底 IP 位址。
- 如果您的公司 IT 不提供直接連線,請建立 Bastion。
- 建立 NAT 閘道以提供因特網的輸出連線。
- 如果您已經有可以提供 Bastion 和 VPN 閘道等服務的中樞,請將其與現有虛擬網路進行對等互連。 請確定您選取與對等互連虛擬網路相容的基底IP位址。 如果對等互連的虛擬網路有閘道,請檢查 [允許 閘道傳輸] 選項。
使用現有虛擬網路
使用現有的虛擬網路之前,請先檢查 規劃 CycleCloud 工作區以進行 Slurm 部署的必要條件。
指定如何管理用於記憶體帳戶的私人端點註冊,以使用私人 DNS 區域儲存 CycleCloud 專案。 您可以選擇建立新的私人 DNS 區域、使用現有的 DNS 區域,或不要註冊它。
Slurm 設定
指定排程器和驗證節點的虛擬機大小和映像。 這些映像是 Azure Marketplace 中具有下列 URI 的 HPC 映像:
| 圖片名稱 | URI |
|---|---|
| Alma Linux 8.10 | almalinux:almalinux-hpc:8_10-hpc-gen2:latest |
| Ubuntu 20.04 | microsoft-dsvm:ubuntu-hpc:2004:latest |
| Ubuntu 22.04 | microsoft-dsvm:ubuntu-hpc:2204:latest |
| 自訂映像 | 您必須指定映像 URN 或映像識別碼 |
如果您選擇 Custom Image,請為現有的市集映像指定映像 URN,或為 Azure 計算資源庫中的映像指定映像識別碼。
若要針對排程器、驗證節點和計算節點使用相同的映像,請選取 [在所有節點上使用映射]。
指定您想要一開始布建的驗證節點數目,以及允許的最大數目。 當您啟用健康情況檢查時,解決方案會自動執行 HPC 和 GPU 磁碟分區的節點健康情況檢查,並移除任何狀況不良的節點。 如果您需要透過 CycleCloud 入口網站設定更多設定,您可以延遲叢集的啟動。
若要啟用 Slurm 作業會計,請勾選以顯示連線選項的方塊。 確保您擁有先前已部署的「適用於 MySQL 的 Azure 資料庫 - 彈性伺服器」資源。
如果您提供自己的虛擬網路,則可以使用 FQDN 或私人 IP 進行連線。 在部署過程中建立新的虛擬網路時,您也可以使用虛擬網路對等互連。 如果您選擇建立新的虛擬網路,您也可以透過私人端點進行連線。
分區設定
適用於 Slurm 的 Azure CycleCloud 工作區包含三個定義的 Slurm 分割區:
- HTC:針對易於平行且非 MPI 的作業。
- HPC:針對緊密結合的 MPI 作業,主要使用的 VM 類型可以具備 InfiniBand 支援,也可以不具備。
- GPU:針對使用 VM 類型的 MPI 和非 MPI GPU 作業,無論是否支援 InfiniBand。
您可以為 CycleCloud 動態建立的每個分割區設定映像和節點數目上限。 只有HTC 磁碟分區可讓您使用現成實例,因為現成實例不適用於 HPC 和 GPU 作業。
開啟 OnDemand
若要使用 Open OnDemand,請選取複選框並輸入下列資訊:
- 映像名稱、
- 系統用於取得使用者名稱 (
user@contoso.com) 並將其與 CycleCloud 用於驗證所管理的本機 Linux 帳戶 (user) 進行比對的網域名稱 (contoso.com)、 - Open OnDemand 網頁伺服器的完整網域名稱(FQDN)(如果您想使用私有 IP,請留空),
- 不論您打算使用現有的Microsoft Entra ID 應用程式,還是稍後手動註冊一個。
Automatically register Entra ID application是只有在您使用 CLI 部署時才會出現的額外選項。
備註
用戶驗證需要Microsoft Entra ID 應用程式。 如果我們的腳本未建立應用程式,請手動建立一個。 如需詳細資訊,請參閱 如何註冊 Open OnDemand Microsoft Entra ID 應用程式。
進階
您可以啟用叢集計算節點和新檔案系統資源的可用性區域。 將計算節點和記憶體放在相同的可用性區域中,可確保兩者之間的延遲降到最低。
Tags
將適當的標籤指派給必要資源。 CycleCloud 會動態布建虛擬機,並將 Node Array 標籤套用至它們。
檢閱並建立
檢查您的選項。 此步驟也包含一些驗證。
驗證完成時,請選取 [建立] 以初始化部署。
請遵循部署狀態和步驟。
檢查您的部署
使用 Bastion 與部署期間您所指定的使用者名稱和 SSH 金鑰連線到 ccw-cyclecloud-vm。
聯機之後,請檢查 Cloud-init 日誌,以確認一切正確無誤。
$tail -f -n 25 /var/log/cloud-init-output.log
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Starting cluster ccws....
----------------------------
ccws : allocation -> started
----------------------------
Resource group:
Cluster nodes:
scheduler: Off -- --
Total nodes: 1
CC start_cluster successful
/
exiting after install
Cloud-init v. 23.4-7.el8_10.alma.1 running 'modules:final' at Wed, 12 Jun 2024 10:15:53 +0000. Up 11.84 seconds.
Cloud-init v. 23.4-7.el8_10.alma.1 finished at Wed, 12 Jun 2024 10:28:15 +0000. Datasource DataSourceAzure [seed=/dev/sr0]. Up 754.29 seconds
接下來,設定用戶端電腦與 CycleCloud VM 之間的連線。 如果您的公司允許,公司 IT 部門可能需要協助您透過 VPN、Bastion 通道或連結的公用 IP 來設定連線。 流覽至 https://<cyclecloud_ip>以存取 Web 介面。 使用您在部署期間提供的使用者名稱和密碼登入。 確認排程器和登入節點都正在執行。