Udostępnij za pośrednictwem


Tworzenie klastrów usługi HDInsight przy użyciu interfejsu wiersza polecenia platformy Azure

Kroki opisane w tym dokumencie obejmują tworzenie klastra usługi HDInsight 4.0 przy użyciu interfejsu wiersza polecenia platformy Azure.

Ostrzeżenie

Rozliczenia dla klastrów usługi HDInsight są naliczane proporcjonalnie na minutę, niezależnie od tego, czy są używane. Pamiętaj, aby usunąć klaster po zakończeniu korzystania z niego. Zobacz , jak usunąć klaster usługi HDInsight.

Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto platformy Azure.

Wymagania wstępne

Tworzenie klastra

  1. Zaloguj się do subskrypcji platformy Azure. Jeśli planujesz używać usługi Azure Cloud Shell, wybierz pozycję Wypróbuj w prawym górnym rogu bloku kodu. W przeciwnym razie wprowadź następujące polecenie:

    az login
    
    # If you have multiple subscriptions, set the one to use
    # az account set --subscription "SUBSCRIPTIONID"
    
  2. Ustaw zmienne środowiskowe. Użycie zmiennych w tym artykule jest oparte na powłoce Bash. W innych środowiskach potrzebne są niewielkie różnice. Aby uzyskać pełną listę możliwych parametrów tworzenia klastra, zobacz az-hdinsight-create .

    Parametr Opis
    --workernode-count Liczba węzłów procesu roboczego w klastrze. W tym artykule użyto zmiennej clusterSizeInNodes jako wartości przekazanej do --workernode-countelementu .
    --version Wersja klastra usługi HDInsight. W tym artykule użyto zmiennej clusterVersion jako wartości przekazanej do --versionelementu . Zobacz również: Obsługiwane wersje usługi HDInsight.
    --type Typ klastra usługi HDInsight, na przykład: hadoop, interactive hive, hbase, kafka, spark, rserver, mlservices. W tym artykule użyto zmiennej clusterType jako wartości przekazanej do --typeelementu . Zobacz również: Typy klastrów i konfiguracja.
    --component-version Wersje różnych składników usługi Hadoop w wersjach rozdzielonych spacjami w formacie "component=version". W tym artykule użyto zmiennej componentVersion jako wartości przekazanej do --component-versionelementu . Zobacz również: Składniki usługi Hadoop.

    Zastąp RESOURCEGROUPNAMEwartości , , LOCATIONCLUSTERNAME, STORAGEACCOUNTNAMEi PASSWORD żądanymi wartościami. Zmień wartości innych zmiennych zgodnie z potrzebami. Następnie wprowadź polecenia interfejsu wiersza polecenia.

    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
    
  3. Utwórz grupę zasobów, wprowadzając następujące polecenie:

    az group create \
        --location $location \
        --name $resourceGroupName
    

    Aby uzyskać listę prawidłowych lokalizacji, użyj az account list-locations polecenia , a następnie użyj jednej z lokalizacji z name wartości .

  4. Utwórz konto usługi Azure Storage, wprowadzając następujące polecenie:

    # 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
    
  5. Wyodrębnij klucz podstawowy z konta usługi Azure Storage i zapisz go w zmiennej, wprowadzając następujące polecenie:

    export AZURE_STORAGE_KEY=$(az storage account keys list \
        --account-name $AZURE_STORAGE_ACCOUNT \
        --resource-group $resourceGroupName \
        --query [0].value -o tsv)
    
  6. Utwórz kontener usługi Azure Storage, wprowadzając następujące polecenie:

    az storage container create \
        --name $AZURE_STORAGE_CONTAINER \
        --account-key $AZURE_STORAGE_KEY \
        --account-name $AZURE_STORAGE_ACCOUNT
    
  7. Utwórz klaster usługi HDInsight, wprowadzając następujące polecenie:

    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
    

    Ważne

    Klastry usługi HDInsight są dostępne w różnych typach, które odpowiadają obciążeniu lub technologii, dla której klaster jest dostrojony. Nie ma obsługiwanej metody tworzenia klastra, który łączy wiele typów, takich jak HBase w jednym klastrze.

    Ukończenie procesu tworzenia klastra może potrwać kilka minut. Zwykle około 15.

Czyszczenie zasobów

Po ukończeniu korzystania z artykułu warto usunąć klaster. W usłudze HDInsight dane są przechowywane w usłudze Azure Storage, dzięki czemu można bezpiecznie usunąć klaster, gdy nie jest używany. Opłaty są również naliczane za klaster usługi HDInsight, nawet jeśli nie jest używany. Ponieważ opłaty za klaster są wielokrotnie większe niż opłaty za magazyn, warto usunąć klastry, gdy nie są używane.

Wprowadź wszystkie lub niektóre z następujących poleceń, aby usunąć zasoby:

# 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

Rozwiązywanie problemów

W razie problemów podczas tworzenia klastrów usługi HDInsight zapoznaj się z wymaganiami dotyczącymi kontroli dostępu.

Następne kroki

Po pomyślnym utworzeniu klastra usługi HDInsight przy użyciu interfejsu wiersza polecenia platformy Azure skorzystaj z następującego polecenia, aby dowiedzieć się, jak pracować z klastrem:

Klastry Apache Hadoop

Klastry Apache HBase