Azure HDInsight: exemplos de CLI do Azure
Este artigo fornece scripts de exemplo para tarefas comuns. Para cada exemplo, atualize as variáveis com os valores apropriados e execute o comando.
Pré-requisitos
CLI do Azure. Consulte Instalar a CLI do Azure para conhecer as etapas.
Opcional: Bash. Os exemplos neste artigo usam o shell Bash no Windows 10. Consulte o Guia de Instalação do Subsistema Windows para Linux para Windows 10 para obter as etapas de instalação. Os exemplos funcionam a partir de um prompt de comando do Windows com algumas pequenas modificações.
az login
az login
# If you have multiple subscriptions, set the one to use
# az account set --subscription "SUBSCRIPTIONID"
az hdinsight create
Criar um cluster com uma conta de armazenamento existente
# set variables
export clusterName=CLUSTERNAME
export resourceGroupName=RESOURCEGROUPNAME
export clusterType=hadoop
export httpCredential='PASSWORD'
export AZURE_STORAGE_ACCOUNT=STORAGEACCOUNTNAME
az hdinsight create \
--name $clusterName \
--resource-group $resourceGroupName \
--type $clusterType \
--http-password $httpCredential \
--storage-account $AZURE_STORAGE_ACCOUNT
Criar um cluster com o Enterprise Security Package (ESP)
export clusterName=CLUSTERNAME
export resourceGroupName=RESOURCEGROUPNAME
export clusterType=spark
export httpCredential='PASSWORD'
export AZURE_STORAGE_ACCOUNT=STORAGEACCOUNTNAME
export subnet="/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/MyRG/providers/Microsoft.Network/virtualNetworks/MyVnet/subnets/subnet1"
export domain="/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/MyRG/providers/Microsoft.AAD/domainServices/MyDomain.onmicrosoft.com"
export userAssignedIdentity="/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/MyMsiRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/MyMSI"
export domainAccount=MyAdminAccount@MyDomain.onmicrosoft.com
export groupDNS=MyGroup
az hdinsight create \
--esp \
--name $clusterName \
--resource-group $resourceGroupName \
--type $clusterType \
--http-password $httpCredential \
--storage-account $AZURE_STORAGE_ACCOUNT \
--subnet $subnet \
--domain $domain \
--assign-identity $userAssignedIdentity \
--cluster-admin-account $domainAccount \
--cluster-users-group-dns $groupDNS
Criar um cluster Kafka com criptografia de disco
export clusterName=CLUSTERNAME
export resourceGroupName=RESOURCEGROUPNAME
export clusterType=kafka
export httpCredential='PASSWORD'
export AZURE_STORAGE_ACCOUNT=STORAGEACCOUNTNAME
export encryptionKeyName=kafkaClusterKey
export encryptionKeyVersion=00000000000000000000000000000000
export encryptionVaultUri=https://MyKeyVault.vault.azure.net
export userAssignedIdentity="/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/MyMsiRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/MyMSI"
az hdinsight create \
--name $clusterName \
--resource-group $resourceGroupName \
--type $clusterType \
--http-password $httpCredential \
--storage-account $AZURE_STORAGE_ACCOUNT \
--workernode-data-disks-per-node 2 \
--encryption-key-name $encryptionKeyName \
--encryption-key-version $encryptionKeyVersion \
--encryption-vault-uri $encryptionVaultUri \
--assign-identity $userAssignedIdentity
Criar um cluster com o Azure Data Lake Storage Gen2
export clusterName=CLUSTERNAME
export resourceGroupName=RESOURCEGROUPNAME
export clusterType=spark
export httpCredential='PASSWORD'
export adlgen2=MyStorageAccount
export sami=MyMSI
az hdinsight create \
--name $clusterName \
--resource-group $resourceGroupName \
--type $clusterType \
--http-password $httpCredential \
--storage-account $adlgen2 \
--storage-account-managed-identity $sami
Criar um cluster com configuração a partir da cadeia de caracteres JSON
export clusterName=CLUSTERNAME
export resourceGroupName=RESOURCEGROUPNAME
export clusterType=spark
export httpCredential='PASSWORD'
export AZURE_STORAGE_ACCOUNT=STORAGEACCOUNTNAME
export clusterConfiguration="{'gateway':{'restAuthCredential.username':'admin'}}"
az hdinsight create \
--name $clusterName \
--resource-group $resourceGroupName \
--type $clusterType \
--http-password $httpCredential \
--storage-account $AZURE_STORAGE_ACCOUNT \
--cluster-configuration $clusterConfiguration
Criar um cluster com configuração a partir de um arquivo local
export clusterName=CLUSTERNAME
export resourceGroupName=RESOURCEGROUPNAME
export clusterType=spark
export httpCredential='PASSWORD'
export AZURE_STORAGE_ACCOUNT=STORAGEACCOUNTNAME
export clusterConfiguration=@/mnt/c/HDI/config.json
az hdinsight create \
--name $clusterName \
--resource-group $resourceGroupName \
--type $clusterType \
--http-password $httpCredential \
--storage-account $AZURE_STORAGE_ACCOUNT \
--cluster-configuration $clusterConfiguration
az hdinsight application create
Crie um aplicativo para um cluster HDInsight.
Criar um aplicativo com um URI de script
export resourceGroupName=RESOURCEGROUPNAME
export applicationName=MyApplication
export clusterName=CLUSTERNAME
export scriptURI=https://hdiconfigactions.blob.core.windows.net/linuxhueconfigactionv02/install-hue-uber-v02.sh
export scriptActionName=MyScriptAction
export scriptParameters='"-version latest -port 20000"'
az hdinsight application create \
--resource-group $resourceGroupName \
--name $applicationName \
--cluster-name $clusterName \
--script-uri $scriptURI \
--script-action-name $scriptActionName \
--script-parameters "$scriptParameters"
Criar um aplicativo com um URI de script e tamanho de nó de borda especificado
export resourceGroupName=RESOURCEGROUPNAME
export applicationName=MyApplication
export clusterName=CLUSTERNAME
export scriptURI=https://hdiconfigactions.blob.core.windows.net/linuxhueconfigactionv02/install-hue-uber-v02.sh
export scriptActionName=MyScriptAction
export scriptParameters='"-version latest -port 20000"'
export edgenodeSize=Standard_D4_v2
az hdinsight application create \
--resource-group $resourceGroupName \
--name $applicationName \
--cluster-name $clusterName \
--script-uri $scriptURI \
--script-action-name $scriptActionName \
--script-parameters "$scriptParameters" \
--edgenode-size $edgenodeSize
Criar um aplicativo com HTTPS Endpoint
export resourceGroupName=RESOURCEGROUPNAME
export applicationName=MyApplication
export clusterName=CLUSTERNAME
export scriptURI=https://hdiconfigactions.blob.core.windows.net/linuxhueconfigactionv02/install-hue-uber-v02.sh
export scriptActionName=MyScriptAction
export scriptParameters='"-version latest -port 20000"'
export destinationPort=8888
export subDomainSuffix=was
az hdinsight application create \
--resource-group $resourceGroupName \
--name $applicationName \
--cluster-name $clusterName \
--script-uri $scriptURI \
--script-action-name $scriptActionName \
--script-parameters "$scriptParameters" \
--destination-port $destinationPort \
--sub-domain-suffix $subDomainSuffix
az hdinsight script-action execute
Execute ações de script no cluster HDInsight especificado.
Executar uma ação de script e persistir no sucesso
export resourceGroupName=RESOURCEGROUPNAME
export clusterName=CLUSTERNAME
export scriptActionName=MyScriptAction
export scriptURI=https://hdiconfigactions.blob.core.windows.net/linuxgiraphconfigactionv01/giraph-installer-v01.sh
export roles="headnode workernode"
az hdinsight script-action execute \
--resource-group $resourceGroupName \
--cluster-name $clusterName \
--name $scriptActionName \
--script-uri $scriptURI \
--roles $roles \
--persist-on-success