Поделиться через


Быстрый старт: Создание кластера Apache Spark в Azure HDInsight с помощью Azure CLI

Из этого краткого руководства вы узнаете, как создать кластер Apache Spark в Azure HDInsight с помощью Azure CLI. Azure HDInsight — это управляемая комплексная служба аналитики с открытым кодом, предназначенная для предприятий. Платформа Apache Spark для HDInsight обеспечивает быструю аналитику данных и кластерные вычисления, используя обработку в памяти. Azure CLI — это кроссплатформенная интерфейс командной строки Майкрософт для управления ресурсами Azure.

Если вы используете несколько кластеров вместе, вы можете создать виртуальную сеть, и если вы используете кластер Spark, вы можете использовать соединитель хранилища Hive. См. сведения о планировании виртуальной сети для Azure HDInsight и интеграции Apache Spark и Apache Hive с Hive Warehouse Connector.

Если у вас нет аккаунта Azure, создайте бесплатную учетную запись перед началом.

Предпосылки

Создание кластера Apache Spark

  1. Войдите в свою подписку Azure. Если вы планируете использовать Azure Cloud Shell, выберите "Попробовать" в правом верхнем углу следующего блока кода. В противном случае введите следующую команду:

    az login
    
    # If you have multiple subscriptions, set the one to use
    # az account set --subscription "SUBSCRIPTIONID"
    
  2. Задайте переменные среды. Использование переменных в этом кратком руководстве основано на Bash. Для других сред требуются небольшие изменения. Замените RESOURCEGROUPNAME, LOCATION, CLUSTERNAME, STORAGEACCOUNTNAME и PASSWORD в следующем фрагменте кода требуемыми значениями. Затем введите команды CLI, чтобы задать переменные среды.

    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=spark
    export componentVersion=Spark=2.3
    
  3. Создайте группу ресурсов, введя следующую команду:

    az group create \
        --location $location \
        --name $resourceGroupName
    
  4. Создайте учетную запись хранения Azure, введя следующую команду:

    az storage account create \
        --name $AZURE_STORAGE_ACCOUNT \
        --resource-group $resourceGroupName \
        --https-only true \
        --kind StorageV2 \
        --location $location \
        --sku Standard_LRS
    
  5. Извлеките первичный ключ из учетной записи хранения Azure и сохраните его в переменной, введя следующую команду:

    export AZURE_STORAGE_KEY=$(az storage account keys list \
        --account-name $AZURE_STORAGE_ACCOUNT \
        --resource-group $resourceGroupName \
        --query [0].value -o tsv)
    
  6. Создайте контейнер хранилища Azure, введя следующую команду:

    az storage container create \
        --name $AZURE_STORAGE_CONTAINER \
        --account-key $AZURE_STORAGE_KEY \
        --account-name $AZURE_STORAGE_ACCOUNT
    
  7. Создайте кластер Apache Spark, введя следующую команду:

    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
    

Очистка ресурсов

После завершения быстрого запуска вы можете захотеть удалить кластер. В случае с HDInsight ваши данные хранятся в службе хранилища Azure, что позволяет безопасно удалить неиспользуемый кластер. Плата за кластеры HDInsight взимается, даже когда они не используются. Так как затраты на кластер во много раз превышают затраты на хранилище, экономически целесообразно удалять неиспользуемые кластеры.

Введите все следующие команды или некоторые из них, чтобы удалить ресурсы:

# 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

Дальнейшие действия

Из этого краткого руководства вы узнали, как создать кластер Apache Spark в Azure HDInsight с помощью Azure CLI. Из следующего руководства вы узнаете, как с помощью кластера HDInsight выполнять интерактивные запросы, используя для этого пример данных.