HDInsight with custom Ambari + Hive Metastore DB in VNET

Last updated: 9/13/2019

This template allows you to create an HDInsight cluster in an existing virtual network with a new SQL DB that serves as both a custom Ambari DB and Hive Metastore. You must have an exising SQL Sever, storage account, and VNET.

This Azure Resource Manager template was created by a member of the community and not by Microsoft. Each Resource Manager template is licensed to you under a license agreement by its owner, not Microsoft. Microsoft is not responsible for Resource Manager templates provided and licensed by community members and does not screen for security, compatibility, or performance. Community Resource Manager templates are not supported under any Microsoft support program or service, and are made available AS IS without warranty of any kind.

Parameters

Parameter Name Description
clusterName The name of the cluster to create.
clusterVersion The HDInsight version to deploy.
headNodeSize The VM size of the head nodes.
workerNodeSize The VM size of the worker nodes.
workerNodeCount The number of worker nodes in the cluster.
clusterLoginUserName These credentials can be used to submit jobs to the cluster and to log into cluster dashboards.
clusterLoginPassword The password must be at least 10 characters in length and must contain at least one digit, one non-alphanumeric character, and one upper or lower case letter.
sshUserName These credentials can be used to remotely access the cluster.
sshPassword The password must be at least 10 characters in length and must contain at least one digit, one non-alphanumeric character, and one upper or lower case letter.
existingClusterStorageResourceGroup The resource group name of the storage account to use as the cluster's default storage.
existingClusterStorageAccountName The name of the storage account to use as the cluster's default storage.
newOrExistingClusterStorageContainerName The name of the storage container to use.
existingSQLServerResourceGroup The name of the resource group where the existing SQL server is to use for the new external metastore SQL db.
existingSQLServerName The name of the existing SQL server to use for the new external metastore SQL db.
existingSQLServerUsername The external Hive metastore's existing SQL server admin username.
existingSQLServerPassword The external Hive metastore's existing SQL server admin password.
newMetastoreDBName The name of the new SQL db to create to serve as the external metastores.
existingVirtualNetworkResourceGroup The existing virtual network resource group name.
existingVirtualNetworkName The existing virtual network name.
existingVirtualNetworkSubnetName The existing virtual network subnet name.
location Location for all resources.

Use the template

PowerShell

New-AzResourceGroup -Name <resource-group-name> -Location <resource-group-location> #use this command when you need to create a new resource group for your deployment
New-AzResourceGroupDeployment -ResourceGroupName <resource-group-name> -TemplateUri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-hdinsight-custom-ambari-db/azuredeploy.json
Install and configure Azure PowerShell

Command line

az group create --name <resource-group-name> --location <resource-group-location> #use this command when you need to create a new resource group for your deployment
az group deployment create --resource-group <my-resource-group> --template-uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-hdinsight-custom-ambari-db/azuredeploy.json
Install and Configure the Azure Cross-Platform Command-Line Interface