共用方式為


使用 ARM 範本執行 CycleCloud

Azure CycleCloud 可以使用儲存在 GitHub 上的 Azure Resource Manager (ARM) 範本,在 Azure 資源上安裝。 ARM 範本會處理大部分的 CycleCloud 設定。 ARM 範本:

  1. 部署具有三個不同子網的虛擬網路:
    • cycle:CycleCloud 伺服器啟動所在的子網
    • compute:HPC 叢集的 /22 子網
    • user:用來建立使用者登入的子網
  2. 迴圈 子網中布建 VM,並在其中安裝 Azure CycleCloud。

安裝 CycleCloud 的建議方法是透過 CycleCloud Marketplace 映射。 請遵循 CycleCloud Marketplace 安裝快速入門。 CycleCloud 也可以手動安裝,以更充分地控制安裝和設定程式。 如需詳細資訊,請參閱 手動 CycleCloud 安裝快速入門

先決條件

您將需要:

  1. 具有有效訂用帳戶的 Azure 帳戶。
  2. 終端機中的殼層會話。
    • 如果您使用 Windows 電腦,請使用 瀏覽器型 Bash 殼層
    • 針對非 Windows 電腦,請安裝和使用 Azure CLI v2.0.20 或更新版本。 執行 az --version 來尋找您目前的版本。 如果您需要安裝或升級,請參閱安裝 Azure CLI 2.0

開啟 Azure Cloud Shell

Azure Cloud Shell 是免費的互動式 Shell,可讓您用來執行本文中的步驟。 Cloud Shell 中已預先安裝和設定共用 Azure 工具,以便您搭配自己的帳戶使用。 只要選取 [複製]按鈕以複製程式碼、將其貼入Cloud Shell,然後按 Enter 鍵來執行程式碼。 以下有幾種開啟 Cloud Shell 的方式:

按一下程式碼區塊右上角的綠色 [試用] 按鈕。 本文中的 Cloud Shell
在您的瀏覽器中開啟 Cloud Shell。 啟動 Cloud Shell
選取Azure 入口網站右上角功能表中的[Cloud Shell]按鈕。 入口網站中的 Cloud Shell

服務主體

Azure CycleCloud 需要具有 Azure 訂用帳戶參與者存取權的服務主體。 如果您沒有可用的服務主體,您現在可以建立一個服務主體。 請注意,您的服務主體名稱必須是唯一的 - 在下列範例中, CycleCloudApp 可以取代為您喜歡的任何專案:

az ad sp create-for-rbac --name CycleCloudApp --years 1

輸出會顯示一些參數。 您必須儲存 appIdpasswordtenant

"appId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"displayName": "CycleCloudApp",
"name": "http://CycleCloudApp",
"password": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"tenant": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

SSH Keypair

需要 SSH 金鑰才能登入 CycleCloud VM 和叢集。 產生 SSH 金鑰提供者:

ssh-keygen -f ~/.ssh/id_rsa -m pem -t rsa -N "" -b 4096

注意

CycleCloud CLI 所使用的 Python 密碼編譯程式庫不支援較新的 OpenSSH 序列化格式。 其中一個必須使用 ssh-keygen -m pem 來產生具有較舊標準格式的金鑰。

使用下列專案擷取 SSH 公開金鑰:

cat ~/.ssh/id_rsa.pub

輸出會以 ssh-rsa 開頭,後面接著長字串字元。 立即複製並儲存此金鑰。

在 Linux 上,請遵循 GitHub 上的這些指示 來產生新的 SSH 金鑰提供者。

部署 Azure CycleCloud

按一下下方的按鈕,將 Azure CycleCloud 部署到您的訂用帳戶:

至 Azure 部署至 Azure

輸入必要資訊。

基本:

  • 用帳戶:如果您有多個作用中的 Azure 訂用帳戶,請選取此處要使用的訂用帳戶
  • 資源群組:輸入 (新) 資源群組的名稱,以保存本快速入門所產生的一切 (例如 MyQuickstart)
  • 位置:選取要在其中儲存實例的區域

設定:

  • 租使用者識別碼tenant 上述服務主體的
  • 應用程式識別碼appId 上述服務主體的
  • 應用程式秘密password 上述服務主體的
  • SSH 公開金鑰:用來登入 CycleCloud VM 的公開金鑰
  • 使用者名稱:CycleCloud VM 的使用者名稱。 在沒有網域的情況下使用 Azure 入口網站使用者名稱 (例如 johnsmith ,而不是 johnsmith@domain.com)

其餘欄位可以保持原樣。 同意條款及條件,然後按一下 [ 購買]。 請注意,CycleCloud 產品是免費的,但您仍需支付 Azure 中使用的核心時數。

部署程式會以自訂腳本延伸模組的形式執行安裝腳本,以安裝及設定 CycleCloud。 此程式需要 5 到 8 分鐘。

登入 CycleCloud 應用程式伺服器

若要連線到 CycleCloud Web 服務器,請從 Azure 入口網站或使用 CLI 擷取 CycleServer VM 的完整功能變數名稱 (FQDN) :

# Replace "MyQuickstart" with the resource group you created above.
export RESOURCE_GROUP="MyQuickstart"
az network public-ip show -g ${RESOURCE_GROUP?} -n cycle-ip --query dnsSettings.fqdn

瀏覽至 https://<FQDN>/。 安裝會使用自我簽署 SSL 憑證,這可能會在瀏覽器中顯示警告。

建立安裝 的網站名稱 。 您可以在這裡使用任何名稱:

CycleCloud 歡迎畫面

將會顯示 Azure CycleCloud 終端使用者授權合約 - 按一下以接受。 然後,您必須為應用程式伺服器建立 CycleCloud 系統管理員使用者。 建議您使用上述相同的使用者名稱。 請確定您輸入的密碼符合所列的需求。 按一下 [完成] 繼續。

CycleCloud 建立新使用者畫面

建立使用者之後,您可能會想要設定 SSH 金鑰,以便更輕鬆地存取 CycleCloud 所建立的任何 Linux VM。 若要新增 SSH 金鑰,請按一下畫面右上角的名稱來編輯您的設定檔。

您現在應該會有一個執行中的 CycleCloud 應用程式,可讓您建立和執行叢集。

注意

您可以使用 $CS_HOME/config/cycle_server.properties 檔案中的設定,針對特定環境自訂預設 CycleCloud 組態。

深入閱讀