Partager via


Démarrage rapide : Créer un cluster Apache Spark dans Azure HDInsight à l’aide d’Azure CLI

Dans ce guide de démarrage rapide, vous allez apprendre à créer un cluster Apache Spark dans Azure HDInsight à l’aide d’Azure CLI. Azure HDInsight est un service d’analytique open source managé, complet et à spectre complet pour les entreprises. Le framework Apache Spark pour HDInsight permet une analytique données et des calculs sur cluster rapides à l’aide du traitement en mémoire. Azure CLI est l’expérience en ligne de commande multiplateforme de Microsoft pour la gestion des ressources Azure.

Si vous utilisez plusieurs clusters ensemble, vous pouvez créer un réseau virtuel et, s’il s’agit d’un cluster Spark, vous pouvez utiliser Hive Warehouse Connector. Pour plus d’informations, consultez Planifier un réseau virtuel pour Azure HDInsight et Intégrer Apache Spark et Apache Hive à Hive Warehouse Connector.

Si vous ne disposez pas d’un compte Azure, créez-en un gratuitement avant de commencer.

Conditions préalables

Créer un cluster Apache Spark

  1. Connectez-vous à votre abonnement Azure. Si vous envisagez d’utiliser Azure Cloud Shell, sélectionnez Essayer dans le coin supérieur droit du bloc de code suivant. Sinon, entrez la commande suivante :

    az login
    
    # If you have multiple subscriptions, set the one to use
    # az account set --subscription "SUBSCRIPTIONID"
    
  2. Définir des variables d’environnement L’utilisation de variables dans ce guide de démarrage rapide est basée sur Bash. De légères variations sont nécessaires pour d’autres environnements. Remplacez RESOURCEGROUPNAME, LOCATION, CLUSTERNAME, STORAGEACCOUNTNAME et PASSWORD dans l’extrait de code suivant par les valeurs souhaitées. Entrez ensuite les commandes CLI pour définir les variables d’environnement.

    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. Créez le groupe de ressources en entrant la commande suivante :

    az group create \
        --location $location \
        --name $resourceGroupName
    
  4. Créez un compte de stockage Azure en entrant la commande suivante :

    az storage account create \
        --name $AZURE_STORAGE_ACCOUNT \
        --resource-group $resourceGroupName \
        --https-only true \
        --kind StorageV2 \
        --location $location \
        --sku Standard_LRS
    
  5. Extrayez la clé primaire du compte de stockage Azure et stockez-la dans une variable en entrant la commande suivante :

    export AZURE_STORAGE_KEY=$(az storage account keys list \
        --account-name $AZURE_STORAGE_ACCOUNT \
        --resource-group $resourceGroupName \
        --query [0].value -o tsv)
    
  6. Créez un conteneur de stockage Azure en entrant la commande suivante :

    az storage container create \
        --name $AZURE_STORAGE_CONTAINER \
        --account-key $AZURE_STORAGE_KEY \
        --account-name $AZURE_STORAGE_ACCOUNT
    
  7. Créez le cluster Apache Spark en entrant la commande suivante :

    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
    

Nettoyer les ressources

Après avoir suivi ce guide de démarrage rapide, vous souhaiterez peut-être supprimer le cluster. Avec HDInsight, vos données sont stockées dans le stockage Azure. Vous pouvez ainsi supprimer un cluster en toute sécurité s’il n’est pas en cours d’utilisation. Vous devez également payer pour un cluster HDInsight, même quand vous ne l’utilisez pas. Étant donné que les frais pour le cluster sont bien plus élevés que les frais de stockage, mieux vaut supprimer les clusters quand ils ne sont pas utilisés.

Entrez tout ou partie des commandes suivantes pour supprimer des ressources :

# 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

Étapes suivantes

Dans ce guide de démarrage rapide, vous avez appris à créer un cluster Apache Spark dans Azure HDInsight à l’aide d’Azure CLI. Passez au tutoriel suivant pour apprendre à utiliser un cluster HDInsight pour exécuter des requêtes interactives sur des exemples de données.