Skapa HDInsight-kluster med Hjälp av Azure CLI
Stegen i det här dokumentet går igenom hur du skapar ett HDInsight 4.0-kluster med hjälp av Azure CLI.
Varning
Faktureringen för HDInsight-kluster beräknas proportionellt per minut, oavsett om du använder dem eller inte. Se till att ta bort klustret när du har använt det. Se hur du tar bort ett HDInsight-kluster.
Om du inte har en Azure-prenumeration skapar du ett kostnadsfritt Azure-konto innan du börjar.
Förutsättningar
Använd Bash-miljön i Azure Cloud Shell. Mer information finns i Snabbstart för Bash i Azure Cloud Shell.
Om du föredrar att köra CLI-referenskommandon lokalt installerar du Azure CLI. Om du kör i Windows eller macOS kan du köra Azure CLI i en Docker-container. Mer information finns i Så här kör du Azure CLI i en Docker-container.
Om du använder en lokal installation loggar du in på Azure CLI med hjälp av kommandot az login. Slutför autentiseringsprocessen genom att följa stegen som visas i terminalen. Andra inloggningsalternativ finns i Logga in med Azure CLI.
När du uppmanas att installera Azure CLI-tillägget vid första användningen. Mer information om tillägg finns i Använda tillägg med Azure CLI.
Kör az version om du vill hitta versionen och de beroende bibliotek som är installerade. Om du vill uppgradera till den senaste versionen kör du az upgrade.
Skapa ett kluster
Logga in på din Azure-prenumeration. Om du planerar att använda Azure Cloud Shell väljer du Prova i det övre högra hörnet i kodblocket. Annars anger du följande kommando:
az login # If you have multiple subscriptions, set the one to use # az account set --subscription "SUBSCRIPTIONID"
Ange miljövariabler. Användningen av variabler i den här artikeln baseras på Bash. Det krävs små variationer för andra miljöer. Se az-hdinsight-create för en fullständig lista över möjliga parametrar för att skapa kluster.
Parameter Description --workernode-count
Antalet arbetsnoder i klustret. Den här artikeln använder variabeln clusterSizeInNodes
som det värde som skickas till--workernode-count
.--version
HDInsight-klusterversionen. Den här artikeln använder variabeln clusterVersion
som det värde som skickas till--version
. Se även HDInsight-versioner som stöds.--type
Typ av HDInsight-kluster, till exempel: hadoop, interaktiv hive, hbase, kafka, spark, rserver
,mlservices
. Den här artikeln använder variabelnclusterType
som det värde som skickas till--type
. Se även: Klustertyper och konfiguration.--component-version
Versioner av olika Hadoop-komponenter i utrymmesavgränsade versioner i formatet "component=version". Den här artikeln använder variabeln componentVersion
som det värde som skickas till--component-version
. Se även: Hadoop-komponenter.Ersätt
RESOURCEGROUPNAME
,LOCATION
,CLUSTERNAME
,STORAGEACCOUNTNAME
ochPASSWORD
med önskade värden. Ändra värden för de andra variablerna efter behov. Ange sedan CLI-kommandona.export resourceGroupName=RESOURCEGROUPNAME export location=LOCATION export clusterName=CLUSTERNAME export AZURE_STORAGE_ACCOUNT=STORAGEACCOUNTNAME export httpCredential='PASSWORD' export sshCredentials='PASSWORD' export AZURE_STORAGE_CONTAINER=$clusterName export clusterSizeInNodes=1 export clusterVersion=4.0 export clusterType=hadoop export componentVersion=Hadoop=3.1
Skapa resursgruppen genom att ange följande kommando:
az group create \ --location $location \ --name $resourceGroupName
Om du vill ha en lista över giltiga platser använder du
az account list-locations
kommandot och använder sedan någon av platserna frånname
värdet.Skapa ett Azure Storage-konto genom att ange följande kommando:
# Note: kind BlobStorage is not available as the default storage account. az storage account create \ --name $AZURE_STORAGE_ACCOUNT \ --resource-group $resourceGroupName \ --https-only true \ --kind StorageV2 \ --location $location \ --sku Standard_LRS
Extrahera primärnyckeln från Azure Storage-kontot och lagra den i en variabel genom att ange följande kommando:
export AZURE_STORAGE_KEY=$(az storage account keys list \ --account-name $AZURE_STORAGE_ACCOUNT \ --resource-group $resourceGroupName \ --query [0].value -o tsv)
Skapa en Azure Storage-container genom att ange följande kommando:
az storage container create \ --name $AZURE_STORAGE_CONTAINER \ --account-key $AZURE_STORAGE_KEY \ --account-name $AZURE_STORAGE_ACCOUNT
Skapa HDInsight-klustret genom att ange följande kommando:
az hdinsight create \ --name $clusterName \ --resource-group $resourceGroupName \ --type $clusterType \ --component-version $componentVersion \ --http-password $httpCredential \ --http-user admin \ --location $location \ --workernode-count $clusterSizeInNodes \ --ssh-password $sshCredentials \ --ssh-user sshuser \ --storage-account $AZURE_STORAGE_ACCOUNT \ --storage-account-key $AZURE_STORAGE_KEY \ --storage-container $AZURE_STORAGE_CONTAINER \ --version $clusterVersion
Viktigt!
HDInsight-kluster finns i olika typer, vilket motsvarar den arbetsbelastning eller teknik som klustret är justerat för. Det finns ingen metod som stöds för att skapa ett kluster som kombinerar flera typer, till exempel HBase i ett kluster.
Det kan ta flera minuter innan klustret skapas. Vanligtvis runt 15.
Rensa resurser
När du är klar med artikeln kanske du vill ta bort klustret. Med HDInsight lagras dina data i Azure Storage, så att du på ett säkert sätt kan ta bort ett kluster när de inte används. Du debiteras också för ett HDInsight-kluster, även om det inte används. Eftersom avgifterna för klustret är många gånger högre än avgifterna för lagring är det ekonomiskt klokt att ta bort kluster när de inte används.
Ange alla eller några av följande kommandon för att ta bort resurser:
# Remove cluster
az hdinsight delete \
--name $clusterName \
--resource-group $resourceGroupName
# Remove storage container
az storage container delete \
--account-name $AZURE_STORAGE_ACCOUNT \
--name $AZURE_STORAGE_CONTAINER
# Remove storage account
az storage account delete \
--name $AZURE_STORAGE_ACCOUNT \
--resource-group $resourceGroupName
# Remove resource group
az group delete \
--name $resourceGroupName
Felsöka
Om du får problem med att skapa HDInsight-kluster läser du åtkomstkontrollkrav.
Nästa steg
Nu när du har skapat ett HDInsight-kluster med hjälp av Azure CLI använder du följande för att lära dig hur du arbetar med klustret: