Microsoft.HDInsight clusters template reference

Template format

To create a Microsoft.HDInsight/clusters resource, add the following JSON to the resources section of your template.

{
  "name": "string",
  "type": "Microsoft.HDInsight/clusters",
  "apiVersion": "2018-06-01-preview",
  "location": "string",
  "tags": {},
  "properties": {
    "clusterVersion": "string",
    "osType": "string",
    "tier": "string",
    "clusterDefinition": {
      "kind": "string",
      "componentVersion": {},
      "configurations": {}
    },
    "securityProfile": {
      "directoryType": "ActiveDirectory",
      "domain": "string",
      "organizationalUnitDN": "string",
      "ldapsUrls": [
        "string"
      ],
      "domainUsername": "string",
      "domainUserPassword": "string",
      "clusterUsersGroupDNs": [
        "string"
      ],
      "aaddsResourceId": "string",
      "msiResourceId": "string"
    },
    "computeProfile": {
      "roles": [
        {
          "name": "string",
          "minInstanceCount": "integer",
          "targetInstanceCount": "integer",
          "hardwareProfile": {
            "vmSize": "string"
          },
          "osProfile": {
            "linuxOperatingSystemProfile": {
              "username": "string",
              "password": "string",
              "sshProfile": {
                "publicKeys": [
                  {
                    "certificateData": "string"
                  }
                ]
              }
            }
          },
          "virtualNetworkProfile": {
            "id": "string",
            "subnet": "string"
          },
          "dataDisksGroups": [
            {
              "disksPerNode": "integer"
            }
          ],
          "scriptActions": [
            {
              "name": "string",
              "uri": "string",
              "parameters": "string"
            }
          ]
        }
      ]
    },
    "storageProfile": {
      "storageaccounts": [
        {
          "name": "string",
          "isDefault": boolean,
          "container": "string",
          "fileSystem": "string",
          "key": "string",
          "resourceId": "string",
          "msiResourceId": "string"
        }
      ]
    },
    "diskEncryptionProperties": {
      "vaultUri": "string",
      "keyName": "string",
      "keyVersion": "string",
      "encryptionAlgorithm": "string",
      "msiResourceId": "string"
    }
  },
  "identity": {
    "type": "string",
    "userAssignedIdentities": {}
  }
}

Property values

The following tables describe the values you need to set in the schema.

Microsoft.HDInsight/clusters object

Name Type Required Value
name string Yes The name of the cluster.
type enum Yes Microsoft.HDInsight/clusters
apiVersion enum Yes 2018-06-01-preview
location string No The location of the cluster.
tags object No The resource tags.
properties object Yes The cluster create parameters. - ClusterCreateProperties object
identity object No The identity of the cluster, if configured. - ClusterIdentity object

ClusterCreateProperties object

Name Type Required Value
clusterVersion string No The version of the cluster.
osType enum No The type of operating system. - Windows or Linux
tier enum No The cluster tier. - Standard or Premium
clusterDefinition object No The cluster definition. - ClusterDefinition object
securityProfile object No The security profile. - SecurityProfile object
computeProfile object No The compute profile. - ComputeProfile object
storageProfile object No The storage profile. - StorageProfile object
diskEncryptionProperties object No The disk encryption properties. - DiskEncryptionProperties object

ClusterIdentity object

Name Type Required Value
type enum No The type of identity used for the cluster. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. - SystemAssigned, UserAssigned, SystemAssigned, UserAssigned, None
userAssignedIdentities object No The list of user identities associated with the cluster. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.

ClusterDefinition object

Name Type Required Value
kind string No The type of cluster.
componentVersion object No The versions of different services in the cluster.
configurations object No The cluster configurations.

SecurityProfile object

Name Type Required Value
directoryType enum No The directory type. - ActiveDirectory
domain string No The organization's active directory domain.
organizationalUnitDN string No The organizational unit within the Active Directory to place the cluster and service accounts.
ldapsUrls array No The LDAPS protocol URLs to communicate with the Active Directory. - string
domainUsername string No The domain user account that will have admin privileges on the cluster.
domainUserPassword string No The domain admin password.
clusterUsersGroupDNs array No Optional. The Distinguished Names for cluster user groups - string
aaddsResourceId string No The resource ID of the user's Azure Active Directory Domain Service.
msiResourceId string No User assigned identity that has permissions to read and create cluster-related artifacts in the user's AADDS.

ComputeProfile object

Name Type Required Value
roles array No The list of roles in the cluster. - Role object

StorageProfile object

Name Type Required Value
storageaccounts array No The list of storage accounts in the cluster. - StorageAccount object

DiskEncryptionProperties object

Name Type Required Value
vaultUri string No Base key vault URI where the customers key is located eg. https://myvault.vault.azure.net
keyName string No Key name that is used for enabling disk encryption.
keyVersion string No Specific key version that is used for enabling disk encryption.
encryptionAlgorithm enum No Algorithm identifier for encryption, default RSA-OAEP. - RSA-OAEP, RSA-OAEP-256, RSA1_5
msiResourceId string No Resource ID of Managed Identity that is used to access the key vault.

Role object

Name Type Required Value
name string No The name of the role.
minInstanceCount integer No The minimum instance count of the cluster.
targetInstanceCount integer No The instance count of the cluster.
hardwareProfile object No The hardware profile. - HardwareProfile object
osProfile object No The operating system profile. - OsProfile object
virtualNetworkProfile object No The virtual network profile. - VirtualNetworkProfile object
dataDisksGroups array No The data disks groups for the role. - DataDisksGroups object
scriptActions array No The list of script actions on the role. - ScriptAction object

StorageAccount object

Name Type Required Value
name string No The name of the storage account.
isDefault boolean No Whether or not the storage account is the default storage account.
container string No The container in the storage account, only to be specified for WASB storage accounts.
fileSystem string No The filesystem, only to be specified for Azure Data Lake Storage type Gen 2.
key string No The storage account access key.
resourceId string No The resource ID of storage account, only to be specified for Azure Data Lake Storage Gen 2.
msiResourceId string No The managed identity (MSI) that is allowed to access the storage account, only to be specified for Azure Data Lake Storage Gen 2.

HardwareProfile object

Name Type Required Value
vmSize string No The size of the VM

OsProfile object

Name Type Required Value
linuxOperatingSystemProfile object No The Linux OS profile. - LinuxOperatingSystemProfile object

VirtualNetworkProfile object

Name Type Required Value
id string No The ID of the virtual network.
subnet string No The name of the subnet.

DataDisksGroups object

Name Type Required Value
disksPerNode integer No The number of disks per node.

ScriptAction object

Name Type Required Value
name string Yes The name of the script action.
uri string Yes The URI to the script.
parameters string Yes The parameters for the script provided.

LinuxOperatingSystemProfile object

Name Type Required Value
username string No The username.
password string No The password.
sshProfile object No The SSH profile. - SshProfile object

SshProfile object

Name Type Required Value
publicKeys array No The list of SSH public keys. - SshPublicKey object

SshPublicKey object

Name Type Required Value
certificateData string No The certificate for SSH.

Quickstart templates

See all Microsoft.Hdinsight templates in Azure Quickstart templates.