如何使用ARM模板在Azure上的现有HDI群集中安装脚本

时间:2017-03-31 10:15:15

标签: shell azure hdinsight arm-template

我使用ARM模板创建了HDI集群。现在HDI集群正在运行。现在我想在现有的HDI集群上安装我的shell脚本。

我看到大多数示例都在同一个模板中安装了HDIcluster + ScriptAction。请参阅https://github.com/Azure/azure-quickstart-templates/blob/master/hdinsight-linux-run-script-action/azuredeploy.json

如何使用ARM模板在现有HDI群集上安装自定义脚本?

2 个答案:

答案 0 :(得分:2)

ARM模板用于创建群集或向群集添加新节点。

您希望使用PowerShell,AzureCLI或门户网站运行脚本操作。以下是在PowerShell中执行此操作的方法:

    # LOGIN TO ZURE
 Login-AzureRmAccount

 # PROVIDE VALUES FOR THESE VARIABLES
 $clusterName = "<HDInsightClusterName>"            # HDInsight cluster name
 $saName = "<ScriptActionName>"                  # Name of the script action
 $saURI = "<URI to the script>"                  # The URI where the script is located

$nodeTypes = "headnode", "workernode"

Submit-AzureRmHDInsightScriptAction -ClusterName $clusterName -Name $saName -Uri $saURI -NodeTypes $nodeTypes -PersistOnSucces

资源: https://docs.microsoft.com/en-us/azure/hdinsight/hdinsight-hadoop-customize-cluster-linux

答案 1 :(得分:1)

正如您所提到的,我们可以在群集创建期间应用脚本操作。但目前不支持从Azure资源管理器模板在正在运行的集群上应用脚本操作。我们可以从document获取有关脚本操作的更多详细信息。

enter image description here

正如Andrew Moll所说,我们可以使用Powershell在正在运行的集群上添加脚本操作。

我们也可以使用REST API(linux cluster only)轻松完成。 如果我们对此有任何了解,我们可以将我们的feedback提供给Azure团队。