分享方式:


建立叢集期間的指令碼動作

注意

AKS 上的 Azure HDInsight 將於 2025 年 1 月 31 日退場。 請於 2025 年 1 月 31 日之前,將工作負載移轉至 Microsoft Fabric 或對等的 Azure 產品,以免工作負載突然終止。 訂用帳戶中剩餘的叢集將會停止,並會從主機移除。

在淘汰日期之前,只有基本支援可用。

重要

此功能目前為預覽功能。 Microsoft Azure 預覽版增補使用規定包含適用於 Azure 功能 (搶鮮版 (Beta)、預覽版,或尚未正式發行的版本) 的更多法律條款。 若需此特定預覽版的相關資訊,請參閱 Azure HDInsight on AKS 預覽版資訊。 如有問題或功能建議,請在 AskHDInsight 上提交要求並附上詳細資料,並且在 Azure HDInsight 社群上追蹤我們以獲得更多更新資訊。

Azure HDInsight on AKS 提供名為指令碼動作的機制,其會叫用自訂指令碼來自訂叢集。 這些指令碼可用來安裝其他元件和變更組態設定。 指令碼動作目前只能在叢集建立期間佈建。 叢集建立之後,指令碼動作會是藍圖的一部分。 本文說明如何在建立 HDInsight on AKS 叢集時佈建指令碼動作。

在使用 Azure 入口網站的叢集建立期間使用指令碼動作

  1. ADLS/WASB 儲存體中上傳指令碼動作 (不一定是主要叢集儲存體)。 在此範例中,考慮 ADLS 儲存體。 若要將指令碼上傳至您的儲存體,請瀏覽至您想要上傳其所在的目標儲存體和容器。

    此螢幕擷取畫面顯示如何選取容器。

  2. 若要將指令碼上傳至您的儲存體,請瀏覽至目標儲存體和容器。 按一下上傳按鈕,然後從本機磁碟機選取指令碼。 上傳指令碼之後,您應該能夠在容器中看到該指令碼 (如下圖所示)。

    此螢幕擷取畫面顯示如何上傳指令碼。

  3. 建立新的叢集,如這裡所述。

  4. 從 [設定] 索引標籤,選取 [+ 新增指令碼動作]

    此螢幕擷取畫面顯示 Azure 入口網站中含有 [新增指令碼動作] 按鈕的 [新增叢集] 頁面。

    此動作會開啟 [指令碼動作] 視窗。 提供下列詳細資料:

    此螢幕擷取畫面顯示如何在 Azure 入口網站中開啟 [新增指令碼動作] 視窗。

    屬性 說明
    指令碼動作名稱 指令碼動作的唯一名稱。
    Bash 指令碼 URL 儲存指令碼的位置。 例如 - abfs://<CONTAINER>@<DATALAKESTOREACCOUNTNAME>.dfs.core.windows.net/<file_path>,更新 Data Lake Storage 名稱和檔案路徑。
    服務 選取指令碼動作需要執行所在的特定服務元件。
    參數 視需要指定指令碼的參數。
    TimeOutInMinutes 選擇每個指令碼的逾時

    此螢幕擷取畫面顯示要套用指令碼動作的服務清單。

    注意

    • 保存所有指令碼動作。
    • 指令碼動作僅適用 Apache Spark 叢集類型。
  5. 選取 [確定] 來儲存指令碼。

  6. 然後,您可以再次使用 [+ 新增指令碼動作],視需要新增另一個指令碼。

    此螢幕擷取畫面顯示 [整合] 索引標籤中的 [檢視指令碼] 區段。

  7. 完成其餘的叢集建立步驟以建立叢集。

    重要

    • 沒有任何自動方式可復原指令碼動作所做的變更。
    • 指令碼動作必須在 40 分鐘內完成,否則會導致叢集建立失敗。
    • 在叢集佈建期間,同時執行指令碼與其他安裝和組態程序。
    • 爭用 CPU 時間和網路頻寬等資源可能會導致指令碼需要較長的時間才能完成。
    • 若要讓執行指令碼所花費的時間縮到最短,請避免進行從來源下載和編譯應用程式之類的工作。 預先編譯應用程式,並將二進位檔儲存在 Azure Data Lake Store Gen2 中。

檢視指令碼動作的清單

  1. 您可以在 [設定] 索引標籤中檢視指令碼動作的清單。

    顯示 [建立以儲存指令碼動作] 頁面的螢幕擷取畫面。