Scale-HDInsightClusterNodes is a simple PowerShell workflow runbook that will help you automate the process of scaling in or out your HDInsight clusters depending on your needs.

The script receives 4 parameters:

ResourceGroupName: The name of the resource group where the cluster resides

ClusterName: The name of your HDInsight cluster

Nodes: The number of nodes you want for the cluster

ConnectionName: The name of your automation connection account

This Workflow requires the following powershell modules: AzureRM.Profile, AzureRM.HDInsight


PowerShell Workflow
Editar script|Remove
        Scale-HDInsightClusterNodes is a simple PowerShell workflow runbook that will help you automate the process of scaling in or out your HDInsight clusters depending on your needs. 
        Scale-HDInsightClusterNodes is a simple PowerShell workflow runbook that will help you automate the process of scaling in or out your HDInsight clusters depending on your needs. 
    .PARAMETER ResourceGroupName 
        The name of the resource group where the cluster resides 
    .PARAMETER ClusterName 
        The name of your HDInsight cluster 
    .PARAMETER Nodes 
        The number of nodes you want for the cluster 
    .PARAMETER ConnectionName 
        The name of your automation connection account 
        AUTHOR: Carlos Mendible  
        LASTEDIT: June 13, 2017  
workflow Scale-HDInsightClusterNodes { 
        [Parameter(Mandatory = $true)] 
        [Parameter(Mandatory = $true)] 
        [Parameter(Mandatory = $true)] 
        [Parameter(Mandatory = $false)] 
    # This Workflow requieres the following powershell modules: AzureRM.Profile, AzureRM.HDInsight 
    $automationConnectionName = $ConnectionName 
    if (!$ConnectionName) { 
        $automationConnectionName = "AzureRunAsConnection" 
    # Get the connection by name (i.e. AzureRunAsConnection) 
    $servicePrincipalConnection = Get-AutomationConnection -Name $automationConnectionName          
    Write-Output "Logging in to Azure..." 
    Add-AzureRmAccount ` 
        -ServicePrincipal ` 
        -TenantId $servicePrincipalConnection.TenantId ` 
        -ApplicationId $servicePrincipalConnection.ApplicationId ` 
        -CertificateThumbprint $servicePrincipalConnection.CertificateThumbprint 
    Write-Output "Scaling cluster $ClusterName to $Nodes nodes..." 
    Set-AzureRmHDInsightClusterSize ` 
        -ResourceGroupName $ResourceGroupName ` 
        -ClusterName $ClusterName ` 
        -TargetInstanceCount $Nodes