Condividi tramite


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

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

Prerequisiti

  • Se non si ha familiarità con Azure Data Lake Storage Gen2, vedere la sezione sulla 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 tramite az login, usando un account associato alla sottoscrizione di Azure in cui si vuole distribuire l'identità gestita assegnata dall'utente tramite l'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 contenuto in questo articolo senza dover installare strumenti nell'ambiente locale.

Per avviare Azure Cloud Shell:

Opzione Esempio/Collegamento
Selezionare Prova nell'angolo superiore destro di un blocco di codice o di comando. Quando si seleziona Prova, il codice o il comando non viene copiato automaticamente in Cloud Shell. Screenshot che mostra un esempio di Prova per Azure Cloud Shell.
Passare a https://shell.azure.com o selezionare il pulsante Avvia Cloud Shell per aprire Cloud Shell nel browser. Pulsante per avviare Azure Cloud Shell.
Selezionare il pulsante Cloud Shell nella barra dei menu nell'angolo in alto a destra del portale di Azure. Screenshot che mostra il pulsante Cloud Shell nel portale di Azure

Per usare Azure Cloud Shell:

  1. Avviare Cloud Shell.

  2. Selezionare il pulsante Copia in un blocco di codice (o in un blocco di comando) 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 o selezionando CMD+MAIUSC+V in macOS.

  4. Premere 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 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 rispettivi 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 Storage Gen2.
<STORAGEACCOUNTNAME> Nuovo account di archiviazione con Azure Data Lake Storage 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. Accede 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 Storage Gen2.
  6. Crea un nuovo account di archiviazione con Data Lake Storage Gen2 usando il flag --hierarchical-namespace true.
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 dei dati del BLOB di archiviazione nell'account di archiviazione. Questo passaggio è descritto nel passaggio 3 in Uso del portale di Azure.

Importante

Assicurarsi che l'account di archiviazione abbia l'identità assegnata dall'utente con le autorizzazioni del ruolo Proprietario dei dati del BLOB di 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