共用方式為


使用 Azure 節點的啟動腳本

您可以設定啟動文稿,以在啟動時自動在一組 Azure 節點上執行(已布建)。 使用啟動文稿,您可以確定已正確設定一組節點以執行特定作業。 此外,如果節點因為服務中斷而無法使用,且角色實例必須再次布建在 Azure 中,則會還原為已知狀態。 例如,使用啟動文稿,您可以安裝應用程式或驅動程式、設定共用資料夾,或開啟特定應用程式的防火牆埠。 您也可以使用啟動腳本,在一組使用特定節點範本部署的 Azure 節點內,以不同的方式設定節點的子集。

在本主題中:

注意

  • 從 HPC Pack 2008 R2 Service Pack 2 開始,支援 Azure 啟動腳本。
  • 如果啟動腳本需要超過 15 分鐘才能完成,Azure Fabric 控制器可能會導致角色實例的布建失敗。

設定和使用啟動腳本的一般步驟

以下是設定和使用 Azure 節點啟動文稿的一般步驟:

  1. 建立組態腳本(例如,startup.bat),其會使用環境變數來區分節點和設定不同的組態。 如需詳細資訊,請參閱本主題中的其餘章節。

  2. 使用 hpcpack 命令來封裝腳本,並將其上傳至用來部署 Azure 節點的 Azure 記憶體帳戶。

    重要

    封裝和上傳啟動腳本時,請勿指定 /relativePath 參數。 啟動文本只應該從 Azure 節點的根目錄執行。

  3. 建立或編輯 Azure 節點範本以指定啟動腳本。

  4. 啟動 (布建) Azure 節點。

    啟動文本會自動部署到 Azure 節點,並在節點上執行。 如果文稿執行時發生問題,您可以檢閱錯誤記錄檔。 如需詳細資訊,請參閱 使用 Microsoft HPC Pack針對 Azure 節點部署進行疑難解答。

文稿名稱

您必須確定您上傳至 Azure 的套件名稱,以及執行腳本的名稱(以及節點範本中指定的名稱)。 只允許下表中的命名慣例:

文稿名稱 套件名稱
file.extension (範例:startup.bat) file.extension.zip (範例:startup.bat.zip)

-或-

檔案.zip(範例:startup.zip)

環境變數

您可以使用下表中的環境變數,這些環境變數會在 Azure 節點上自動設定,以協助設定啟動文稿:

環境變數 描述
HPC_NODE_NAME Microsoft HPC Pack 自動設定的 Azure 節點名稱,例如,AZURECN-0014
HPC_NODE_GROUPS 節點所屬節點群組的逗號分隔清單。 允許腳本的行為針對節點的不同子集進行特製化。 注意:只有在第一次啟動 Azure 節點時,才會設定 HPC_NODE_GROUPS。 如果變數已更新,然後再次布建節點,則不會動態更新變數。

下列範例是批處理檔,會在節點群組 Port31337 Server Group所識別的節點子集上設定防火牆規則。 您可以調整此模式,以建立執行其他工作的啟動腳本。

@echo off  
echo %HPC_NODE_GROUPS% | findstr /C: "Port31337 Server Group"  
if %errorlevel% == 0 (  
echo Creating firewall exception  
netsh advfirewall firewall add rule name="MyRule" dir=in protocol=tcp localport=31337 action=allow enable=yes  
)  
  

記錄檔

如果啟動文稿執行時發生問題,請檢閱腳本的記錄檔。 啟動文稿的記錄會列在下表中。 記錄檔位於每個 Azure 背景工作節點上的 [%CCP_HOME%] 資料夾中。

日誌檔 描述
HpcStartupCommand.log 結束程式代碼和輸出數據流
HpcStartupCommand.err 錯誤數據流

另請參閱

設定適用於 Microsoft HPC Pack 的 Azure 節點範本