共用方式為


Add-AzureRmHDInsightScriptAction

將腳本動作新增至叢集組態物件。

警告

自 2024 年 2 月 29 日起,AzureRM PowerShell 模組已正式淘汰。 建議使用者從 AzureRM 遷移至 Az PowerShell 模組,以確保持續支援和更新。

雖然 AzureRM 模組可能仍可運作,但不再維護或支援它,但會根據用戶的判斷權和風險放置任何繼續使用。 如需轉換至 Az 模組的指引,請參閱我們的 移轉資源

語法

Add-AzureRmHDInsightScriptAction
   [-Config] <AzureHDInsightConfig>
   [-NodeType] <ClusterNodeType>
   [-Uri] <Uri>
   [-Name] <String>
   [[-Parameters] <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

Description

Add-AzureRmHDInsightScriptAction Cmdlet 會將腳本動作新增至 New-AzureRmHDInsightClusterConfig Cmdlet 所建立的 HDInsight 組態物件。 腳本動作提供用來安裝其他軟體的功能,或使用 Windows PowerShell 或 Bash 腳本來變更 Hadoop 叢集上執行的應用程式組態(分別適用於 Windows 或 Linux 叢集)。 部署 HDInsight 叢集時,腳本動作會在叢集節點上執行,並在叢集中的節點完成 HDInsight 設定之後執行。 腳本動作會以系統管理員帳戶許可權執行,並提供叢集節點的完整訪問許可權。 您可以為每個叢集提供一份腳本動作清單,以指定的順序執行。

範例

範例 1:將腳本動作新增至叢集組態物件

PS C:\># Primary storage account info
PS C:\> $storageAccountResourceGroupName = "Group"
PS C:\> $storageAccountName = "yourstorageacct001"
PS C:\> $storageAccountKey = (Get-AzureRmStorageAccountKey -ResourceGroupName $storageAccountResourceGroupName -Name $storageAccountName)[0].value


PS C:\> $storageContainer = "container001"

# Script action info
PS C:\> $scriptActionName = "<script action name>"
PS C:\> $scriptActionURI = "<script action URI>"
PS C:\> $scriptActionParameters = "<script action parameters>" 

# Cluster configuration info
PS C:\> $location = "East US 2"
PS C:\> $clusterResourceGroupName = "Group"
PS C:\> $clusterName = "your-hadoop-001"
PS C:\> $clusterCreds = Get-Credential

# If the cluster's resource group doesn't exist yet, run:
#   New-AzureRmResourceGroup -Name $clusterResourceGroupName -Location $location

# Create the cluster
PS C:\> New-AzureRmHDInsightClusterConfig  `
            | Add-AzureRmHDInsightScriptAction `
                -Name $scriptActionName `
                -Uri $scriptActionURI `
                -Parameters $scriptActionParameters `
                -NodeType Worker `
            | Add-AzureRmHDInsightScriptAction `
                -Name $scriptActionName `
                -Uri $scriptActionURI `
                -Parameters $scriptActionParameters `
                -NodeType Head `
            | New-AzureRmHDInsightCluster `
                -ClusterType Hadoop `
                -OSType Windows `
                -ClusterSizeInNodes 4 `
                -ResourceGroupName $clusterResourceGroupName `
                -ClusterName $clusterName `
                -HttpCredential $clusterCreds `
                -Location $location `
                -DefaultStorageAccountName "$storageAccountName.blob.core.contoso.net" `
                -DefaultStorageAccountKey $storageAccountKey `
                -DefaultStorageContainer $storageContainer

此命令會為your-hadoop-001 叢集的前端和背景工作節點新增腳本動作,以在叢集建立結束時執行。

參數

-Config

指定此 Cmdlet 修改的 HDInsight 叢集組態物件。 此物件是由 New-AzureRmHDInsightClusterConfig Cmdlet 所建立。

類型:AzureHDInsightConfig
Position:0
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-DefaultProfile

用於與 azure 通訊的認證、帳戶、租用戶和訂用帳戶

類型:IAzureContextContainer
別名:AzureRmContext, AzureCredential
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Name

指定文稿動作的名稱。

類型:String
Position:3
預設值:None
必要:True
接受管線輸入:False
接受萬用字元:False

-NodeType

指定要在其中執行文稿動作的節點類型。 此參數可接受的值為:

  • HeadNode
  • WorkerNode
  • ZookeeperNode
類型:ClusterNodeType
接受的值:HeadNode, WorkerNode, ZookeeperNode, EdgeNode
Position:1
預設值:None
必要:True
接受管線輸入:False
接受萬用字元:False

-Parameters

指定文稿動作的參數。

類型:String
Position:4
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Uri

指定腳本動作的公用 URI(PowerShell 或 Bash 腳本)。

類型:Uri
Position:2
預設值:None
必要:True
接受管線輸入:False
接受萬用字元:False

輸入

AzureHDInsightConfig

參數:設定(ByValue)

輸出

AzureHDInsightConfig