Gestire cluster Apache Hadoop in HDInsight usando Azure PowerShell

Azure PowerShell può essere usato per controllare e automatizzare la distribuzione e la gestione dei carichi di lavoro in Azure. Questo articolo illustra come gestire i cluster Apache Hadoop in Azure HDInsight usando il modulo Azure PowerShell Az. Per l'elenco dei cmdlet di PowerShell di HDInsight, vedere le informazioni di riferimento su Az.HDInsight.

Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.

Prerequisiti

Nota

È consigliabile usare il modulo Azure Az PowerShell per interagire con Azure. Per iniziare, vedere Installare Azure PowerShell. Per informazioni su come eseguire la migrazione al modulo AZ PowerShell, vedere Eseguire la migrazione di Azure PowerShell da AzureRM ad Az.

Il modulo Az di PowerShell installato.

Creare i cluster

Vedere Creare cluster basati su Linux in HDInsight tramite Azure PowerShell

Elencare i cluster

Usare il comando seguente per visualizzare l'elenco di tutti i cluster nella sottoscrizione corrente:

Get-AzHDInsightCluster

Mostrare cluster

Usare il comando seguente per visualizzare i dettagli di un cluster specifico nella sottoscrizione corrente:

Get-AzHDInsightCluster -ClusterName <Cluster Name>

Eliminare cluster

Utilizzare il comando seguente per eliminare un cluster:

Remove-AzHDInsightCluster -ClusterName <Cluster Name>

È inoltre possibile eliminare un cluster rimuovendo il gruppo di risorse che lo contiene. L'eliminazione di un gruppo di risorse eliminerà tutte le risorse nel gruppo, compreso l’account di archiviazione predefinito.

Remove-AzResourceGroup -Name <Resource Group Name>

Ridimensionare i cluster

La funzionalità di scalabilità del cluster consente di modificare il numero di nodi del ruolo di lavoro usati da un cluster in esecuzione in Azure HDInsight senza dover ricreare il cluster. Per modificare le dimensioni del cluster Hadoop mediante Azure PowerShell, eseguire il comando seguente da un computer client:

Set-AzHDInsightClusterSize -ClusterName <Cluster Name> -TargetInstanceCount <NewSize>

Per altre informazioni sul ridimensionamento dei cluster, vedere Ridimensionare i cluster HDInsight.

Aggiornare le credenziali utente HTTP

Set-AzHDInsightGatewayCredential imposta le credenziali HTTP del gateway di un cluster Azure HDInsight.

$clusterName = "CLUSTERNAME"
$credential = Get-Credential -Message "Enter the HTTP username and password:" -UserName "admin"

Set-AzHDInsightGatewayCredential -ClusterName $clusterName -HttpCredential $credential

Trovare l'account di archiviazione predefinito

Lo script di PowerShell seguente dimostra come ottenere il nome dell'account di archiviazione predefinito e le informazioni correlate:

#Connect-AzAccount
$clusterName = "<HDInsight Cluster Name>"

$clusterInfo = Get-AzHDInsightCluster -ClusterName $clusterName
$storageInfo = $clusterInfo.DefaultStorageAccount.split('.')
$defaultStoreageType = $storageInfo[1]
$defaultStorageName = $storageInfo[0]

echo "Default Storage account name: $defaultStorageName"
echo "Default Storage account type: $defaultStoreageType"

if ($defaultStoreageType -eq "blob")
{
    $defaultBlobContainerName = $cluster.DefaultStorageContainer
    $defaultStorageAccountKey = (Get-AzStorageAccountKey -ResourceGroupName $resourceGroupName -Name $defaultStorageAccountName)[0].Value
    $defaultStorageAccountContext = New-AzStorageContext -StorageAccountName $defaultStorageAccountName -StorageAccountKey $defaultStorageAccountKey

    echo "Default Blob container name: $defaultBlobContainerName"
    echo "Default Storage account key: $defaultStorageAccountKey"
}

Trovare il gruppo di risorse

Nella modalità Resource Manager ogni cluster HDInsight appartiene a un gruppo di risorse di Azure. Trovare il gruppo di risorse:

$clusterName = "<HDInsight Cluster Name>"

$cluster = Get-AzHDInsightCluster -ClusterName $clusterName
$resourceGroupName = $cluster.ResourceGroup

Inviare i processi

Inviare processi MapReduce

Vedere Eseguire gli esempi di MapReduce inclusi in HDInsight.

Inviare i processi Apache Hive

Vedere Eseguire query Apache Hive usando PowerShell.

Inviare i processi Apache Sqoop

Vedere Usare Apache Sqoop con HDInsight.

Inviare i processi Apache Oozie

Vedere Usare Apache Oozie con Apache Hadoop per definire ed eseguire un flusso di lavoro in HDInsight.

Caricare dati nell'archivio BLOB di Azure

VedereCaricare dati in HDInsight.

Vedere anche