Creare un cluster con Data Lake Archiviazione Gen2 usando l'interfaccia della riga di comando di Azure

Per creare un cluster HDInsight che usa Data Lake Archiviazione Gen2 per l'archiviazione, seguire questa procedura.

Prerequisiti

  • Se non si ha familiarità con Azure Data Lake Archiviazione Gen2, vedere la sezione panoramica.
  • Se non si ha un account Azure, registrarsi per ottenere un account gratuito prima di continuare.
  • Per eseguire gli esempi di script dell'interfaccia della riga di comando, sono disponibili tre opzioni:
    • Usare Azure Cloud Shell dal portale di Azure (vedere la sezione successiva).
    • Usare l'opzione Azure Cloud Shell incorporata tramite il pulsante "Prova", disponibile nell'angolo superiore destro di ogni blocco di codice.
    • Installare la versione più recente dell'interfaccia della riga di comando di Azure (2.0.13 o successiva) se si preferisce usare una console dell'interfaccia della riga di comando locale. Accedere ad Azure usando az login, usando un account associato alla sottoscrizione di Azure in cui si vuole distribuire l'identità gestita assegnata dall'utente. Interfaccia della riga di comando di Azure.

Azure Cloud Shell

Azure Cloud Shell è un ambiente di shell interattivo ospitato in Azure e usato tramite il browser. È possibile usare Bash o PowerShell con Cloud Shell per usare i servizi di Azure. È possibile usare i comandi preinstallati di Cloud Shell per eseguire il codice in questo articolo, senza dover installare alcun elemento nell'ambiente locale.

Per avviare Azure Cloud Shell:

Opzione Esempio/Collegamento
Selezionare Prova nell'angolo superiore destro di un codice o di un blocco di comandi. Selezionando Prova non viene copiato automaticamente il codice o il comando in Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
Passare a https://shell.azure.com o selezionare il pulsante Avvia Cloud Shell per aprire Cloud Shell nel browser. Button to launch Azure Cloud Shell.
Selezionare il pulsante Cloud Shell nella barra dei menu nell'angolo in alto a destra del portale di Azure. Screenshot that shows the Cloud Shell button in the Azure portal

Per usare Azure Cloud Shell:

  1. Avviare Cloud Shell.

  2. Selezionare il pulsante Copia in un blocco di codice (o blocco di comandi) per copiare il codice o il comando.

  3. Incollare il codice o il comando nella sessione di Cloud Shell selezionando CTRL+MAIUSC+V in Windows e Linux oppure selezionando CMD+MAIUSC+V in macOS.

  4. Selezionare INVIO per eseguire il codice o il comando.

Avviso

La fatturazione dei cluster HDInsight viene calcolata al minuto, indipendentemente dal fatto che siano usati o meno. Assicurarsi di eliminare il cluster dopo aver finito di usarlo. Vedere Come eliminare un cluster HDInsight.

È possibile scaricare un file modello di esempio e scaricare un file di parametri di esempio. Prima di usare il modello e il frammento di codice dell'interfaccia della riga di comando di Azure seguente, sostituire i segnaposto seguenti con i valori corretti:

Segnaposto Descrizione
<SUBSCRIPTION_ID> ID della sottoscrizione di Azure
<RESOURCEGROUPNAME> Gruppo di risorse in cui si vuole creare il nuovo cluster e il nuovo account di archiviazione.
<MANAGEDIDENTITYNAME> Nome dell'identità gestita a cui verranno concesse le autorizzazioni per l'account di archiviazione con Azure Data Lake Archiviazione Gen2.
<STORAGEACCOUNTNAME> Nuovo account di archiviazione con Azure Data Lake Archiviazione Gen2 che verrà creato.
<FILESYSTEMNAME> Nome del file system che il cluster deve usare nell'account di archiviazione.
<CLUSTERNAME> Il nome del cluster HDInsight.
<PASSWORD> Password scelta per l'accesso al cluster tramite SSH e il dashboard di Ambari.

Il frammento di codice seguente esegue i passaggi iniziali seguenti:

  1. Accedere all'account Azure.
  2. Imposta la sottoscrizione attiva in cui verranno eseguite le operazioni di creazione.
  3. Crea un nuovo gruppo di risorse per le nuove attività di distribuzione.
  4. Crea un'identità gestita assegnata dall'utente.
  5. Aggiunge un'estensione all'interfaccia della riga di comando di Azure per usare le funzionalità per Data Lake Archiviazione Gen2.
  6. Crea un nuovo account di archiviazione con Data Lake Archiviazione Gen2 usando il --hierarchical-namespace true flag .
az login
az account set --subscription <SUBSCRIPTION_ID>

# Create resource group
az group create --name <RESOURCEGROUPNAME> --location eastus

# Create managed identity
az identity create -g <RESOURCEGROUPNAME> -n <MANAGEDIDENTITYNAME>

az extension add --name storage-preview

az storage account create --name <STORAGEACCOUNTNAME> \
    --resource-group <RESOURCEGROUPNAME> \
    --location eastus --sku Standard_LRS \
    --kind StorageV2 --hierarchical-namespace true

Accedere quindi al portale. Aggiungere la nuova identità gestita assegnata dall'utente al ruolo Proprietario dati BLOB Archiviazione nell'account di archiviazione. Questo passaggio è descritto nel passaggio 3 in Uso del portale di Azure.

Importante

Assicurarsi che l'account di archiviazione disponga dell'identità assegnata dall'utente con le autorizzazioni del ruolo Proprietario dati BLOB Archiviazione; in caso contrario, la creazione del cluster avrà esito negativo.

az deployment group create --name HDInsightADLSGen2Deployment \
    --resource-group <RESOURCEGROUPNAME> \
    --template-file hdinsight-adls-gen2-template.json \
    --parameters parameters.json

Pulire le risorse

Al termine dell'articolo, è consigliabile eliminare il cluster. Con HDInsight, i dati vengono archiviati in Archiviazione di Azure ed è possibile eliminare tranquillamente un cluster quando non è in uso. Vengono addebitati i costi anche per i cluster HDInsight che non sono in uso. Poiché i costi per il cluster sono decisamente superiori a quelli per l'archiviazione, eliminare i cluster quando non vengono usati è una scelta economicamente conveniente.

Immettere tutti o alcuni dei comandi seguenti per rimuovere le risorse:

# 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

Risoluzione dei problemi

Se si verificano problemi di creazione dei cluster HDInsight, vedere i requisiti dei controlli di accesso.

Passaggi successivi

È stato creato un cluster HDInsight. È ora possibile procedere e scoprire come utilizzare il cluster.

Cluster Apache Spark

Cluster Apache Hadoop

Cluster Apache HBase