Azure HDInsight Storm Cluster
This page shows how to write Terraform and Azure Resource Manager for HDInsight Storm Cluster and write them securely.
azurerm_hdinsight_storm_cluster (Terraform)
The Storm Cluster in HDInsight can be configured in Terraform with the resource name azurerm_hdinsight_storm_cluster. The following sections describe 1 example of how to use the resource and its parameters.
Example Usage from GitHub
resource "azurerm_hdinsight_storm_cluster" "this" {
cluster_version = var.cluster_version
location = var.location
name = var.name
resource_group_name = var.resource_group_name
tags = var.tags
Parameters
-
cluster_versionrequired - string -
https_endpointoptional computed - string -
idoptional computed - string -
locationrequired - string -
namerequired - string -
resource_group_namerequired - string -
ssh_endpointoptional computed - string -
tagsoptional - map from string to string -
tierrequired - string -
tls_min_versionoptional - string -
component_versionlist block-
stormrequired - string
-
-
gatewaylist block -
metastoreslist block-
ambarilist block-
database_namerequired - string -
passwordrequired - string -
serverrequired - string -
usernamerequired - string
-
-
hivelist block-
database_namerequired - string -
passwordrequired - string -
serverrequired - string -
usernamerequired - string
-
-
oozielist block-
database_namerequired - string -
passwordrequired - string -
serverrequired - string -
usernamerequired - string
-
-
-
monitorlist block-
log_analytics_workspace_idrequired - string -
primary_keyrequired - string
-
-
roleslist block-
head_nodelist block -
worker_nodelist block-
min_instance_countoptional computed - number -
passwordoptional - string -
ssh_keysoptional - set of string -
subnet_idoptional - string -
target_instance_countrequired - number -
usernamerequired - string -
virtual_network_idoptional - string -
vm_sizerequired - string
-
-
zookeeper_nodelist block
-
-
storage_accountlist block-
is_defaultrequired - bool -
storage_account_keyrequired - string -
storage_container_idrequired - string
-
-
timeoutssingle block
Explanation in Terraform Registry
Manages a HDInsight Storm Cluster. !> Note: HDInsight 3.6 is deprecated and will be retired on 2020-12-31 - HDInsight 4.0 no longer supports Storm Clusters - as such this Terraform resource is deprecated and will be removed in the next major version of the AzureRM Terraform Provider.
Microsoft.HDInsight/clusters (Azure Resource Manager)
The clusters in Microsoft.HDInsight can be configured in Azure Resource Manager with the resource name Microsoft.HDInsight/clusters. The following sections describe how to use the resource and its parameters.
Example Usage from GitHub
"type": "Microsoft.HDInsight/clusters",
"location": "West US",
"etag": "f0212a39-b827-45e0-9ffa-4f5232e58851",
"tags": { "key1": "val1" },
"properties": {
"clusterVersion": "3.5.1000.0",
"type": "Microsoft.HDInsight/clusters",
"location": "West US",
"etag": "f0212a39-b827-45e0-9ffa-4f5232e58851",
"tags": { "key1": "val1" },
"properties": {
"clusterVersion": "3.5.1000.0",
"type": "Microsoft.HDInsight/clusters",
"location": "West US",
"etag": "f0212a39-b827-45e0-9ffa-4f5232e58851",
"tags": { "key1": "val1" },
"properties": {
"clusterVersion": "3.5.1000.0",
"type": "Microsoft.HDInsight/clusters",
"location": "West US",
"etag": "f0212a39-b827-45e0-9ffa-4f5232e58851",
"tags": { "key1": "val1" },
"properties": {
"clusterVersion": "3.5.1000.0",
"type": "Microsoft.HDInsight/clusters",
"location": "West US",
"etag": "f0212a39-b827-45e0-9ffa-4f5232e58851",
"tags": { "key1": "val1" },
"properties": {
"clusterVersion": "3.5.1000.0",
"type": "Microsoft.HDInsight/clusters",
"location": "West US",
"etag": "f0212a39-b827-45e0-9ffa-4f5232e58851",
"tags": { "key1": "val1" },
"properties": {
"clusterVersion": "3.5.1000.0",
"type": "Microsoft.HDInsight/clusters",
"location": "West US",
"etag": "f0212a39-b827-45e0-9ffa-4f5232e58851",
"tags": { "key1": "val1" },
"properties": {
"clusterVersion": "3.5.1000.0",
"type": "Microsoft.HDInsight/clusters",
"location": "West US",
"etag": "f0212a39-b827-45e0-9ffa-4f5232e58851",
"tags": { "key1": "val1" },
"properties": {
"clusterVersion": "3.5.1000.0",
{
"$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"clusterName": {
"type": "Microsoft.HDInsight/clusters",
"location": "West US",
"etag": "f0212a39-b827-45e0-9ffa-4f5232e58851",
"tags": {
"key1": "val1"
},
Parameters
apiVersionrequired - stringidentityoptionaltypeoptional - stringThe type of identity used for the cluster. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities.
userAssignedIdentitiesoptional - undefinedThe 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}'.
locationoptional - stringThe location of the cluster.
namerequired - stringThe name of the cluster.
propertiesrequiredclusterDefinitionoptionalblueprintoptional - stringThe link to the blueprint.
componentVersionoptional - stringThe versions of different services in the cluster.
configurationsoptional - objectThe cluster configurations.
kindoptional - stringThe type of cluster.
clusterVersionoptional - stringThe version of the cluster.
computeIsolationPropertiesoptionalenableComputeIsolationoptional - booleanThe flag indicates whether enable compute isolation or not.
hostSkuoptional - stringThe host sku.
computeProfileoptionalrolesoptional arrayautoscaleoptionalcapacityoptionalmaxInstanceCountoptional - integerThe maximum instance count of the cluster
minInstanceCountoptional - integerThe minimum instance count of the cluster
recurrenceoptionalscheduleoptional arraydaysoptional - arrayDays of the week for a schedule-based autoscale rule
timeAndCapacityoptionalmaxInstanceCountoptional - integerThe maximum instance count of the cluster
minInstanceCountoptional - integerThe minimum instance count of the cluster
timeoptional - string24-hour time in the form xx:xx
timeZoneoptional - stringThe time zone for the autoscale schedule times
dataDisksGroupsoptional arraydisksPerNodeoptional - integerThe number of disks per node.
encryptDataDisksoptional - booleanIndicates whether encrypt the data disks.
hardwareProfileoptionalvmSizeoptional - stringThe size of the VM
minInstanceCountoptional - integerThe minimum instance count of the cluster.
nameoptional - stringThe name of the role.
osProfileoptionallinuxOperatingSystemProfileoptionalpasswordoptional - stringThe password.
sshProfileoptionalpublicKeysoptional arraycertificateDataoptional - stringThe certificate for SSH.
usernameoptional - stringThe username.
scriptActionsoptional arraynamerequired - stringThe name of the script action.
parametersrequired - stringThe parameters for the script provided.
urirequired - stringThe URI to the script.
targetInstanceCountoptional - integerThe instance count of the cluster.
virtualNetworkProfileoptionalidoptional - stringThe ID of the virtual network.
subnetoptional - stringThe name of the subnet.
VMGroupNameoptional - stringThe name of the virtual machine group.
diskEncryptionPropertiesoptionalencryptionAlgorithmoptional - stringAlgorithm identifier for encryption, default RSA-OAEP.
encryptionAtHostoptional - booleanIndicates whether or not resource disk encryption is enabled.
keyNameoptional - stringKey name that is used for enabling disk encryption.
keyVersionoptional - stringSpecific key version that is used for enabling disk encryption.
msiResourceIdoptional - stringResource ID of Managed Identity that is used to access the key vault.
vaultUrioptional - stringBase key vault URI where the customers key is located eg. https://myvault.vault.azure.net
encryptionInTransitPropertiesoptionalisEncryptionInTransitEnabledoptional - booleanIndicates whether or not inter cluster node communication is encrypted in transit.
kafkaRestPropertiesoptionalclientGroupInfooptionalgroupIdoptional - stringThe AAD security group id.
groupNameoptional - stringThe AAD security group name.
configurationOverrideoptional - stringThe configurations that need to be overriden.
minSupportedTlsVersionoptional - stringThe minimal supported tls version.
networkPropertiesoptionalprivateLinkoptional - stringIndicates whether or not private link is enabled.
resourceProviderConnectionoptional - stringThe direction for the resource provider connection.
osTypeoptional - stringThe type of operating system.
privateLinkConfigurationsoptional arraynamerequired - stringThe name of private link configuration.
propertiesrequiredgroupIdrequired - stringThe HDInsight private linkable sub-resource name to apply the private link configuration to. For example, 'headnode', 'gateway', 'edgenode'.
ipConfigurationsrequired arraynamerequired - stringThe name of private link IP configuration.
propertiesoptionalprimaryoptional - booleanIndicates whether this IP configuration is primary for the corresponding NIC.
privateIPAddressoptional - stringThe IP address.
privateIPAllocationMethodoptional - stringThe method that private IP address is allocated.
subnetoptionalidoptional - stringThe azure resource id.
securityProfileoptionalaaddsResourceIdoptional - stringThe resource ID of the user's Azure Active Directory Domain Service.
clusterUsersGroupDNsoptional - arrayOptional. The Distinguished Names for cluster user groups
directoryTypeoptional - stringThe directory type.
domainoptional - stringThe organization's active directory domain.
domainUsernameoptional - stringThe domain user account that will have admin privileges on the cluster.
domainUserPasswordoptional - stringThe domain admin password.
ldapsUrlsoptional - arrayThe LDAPS protocol URLs to communicate with the Active Directory.
msiResourceIdoptional - stringUser assigned identity that has permissions to read and create cluster-related artifacts in the user's AADDS.
organizationalUnitDNoptional - stringThe organizational unit within the Active Directory to place the cluster and service accounts.
storageProfileoptionalstorageaccountsoptional arraycontaineroptional - stringThe container in the storage account, only to be specified for WASB storage accounts.
fileshareoptional - stringThe file share name.
fileSystemoptional - stringThe filesystem, only to be specified for Azure Data Lake Storage Gen 2.
isDefaultoptional - booleanWhether or not the storage account is the default storage account.
keyoptional - stringThe storage account access key.
msiResourceIdoptional - stringThe managed identity (MSI) that is allowed to access the storage account, only to be specified for Azure Data Lake Storage Gen 2.
nameoptional - stringThe name of the storage account.
resourceIdoptional - stringThe resource ID of storage account, only to be specified for Azure Data Lake Storage Gen 2.
saskeyoptional - stringThe shared access signature key.
tieroptional - stringThe cluster tier.
tagsoptional - stringThe resource tags.
typerequired - stringzonesoptional - arrayThe availability zones.
Frequently asked questions
What is Azure HDInsight Storm Cluster?
Azure HDInsight Storm Cluster is a resource for HDInsight of Microsoft Azure. Settings can be wrote in Terraform.
Where can I find the example code for the Azure HDInsight Storm Cluster?
For Terraform, the niveklabs/azurerm source code example is useful. See the Terraform Example section for further details.
For Azure Resource Manager, the assing/alerts-extension, assing/alerts-extension and assing/alerts-extension source code examples are useful. See the Azure Resource Manager Example section for further details.