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 |
輸入
參數:設定(ByValue)