Gestire cluster Apache Hadoop in Azure HDInsight usando PowerShell
È possibile usare Azure PowerShell 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 Az PowerShell. 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.
Modulo Az PowerShell installato.
Creare i cluster
Per creare cluster, vedere Creare cluster basati su Linux in HDInsight usando Azure PowerShell.
Elencare i cluster
Per elencare tutti i cluster nella sottoscrizione corrente, usare il comando seguente:
Get-AzHDInsightCluster
Mostra cluster
Per visualizzare i dettagli di un cluster specifico nella sottoscrizione corrente, usare il comando seguente:
Get-AzHDInsightCluster -ClusterName <Cluster Name>
Eliminare cluster
Per eliminare un cluster, usare il comando seguente:
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 elimina tutte le risorse nel gruppo, incluso l'account di archiviazione predefinito.
Remove-AzResourceGroup -Name <Resource Group Name>
Ridimensionare i cluster
È possibile usare la funzionalità di ridimensionamento del cluster per modificare il numero di nodi di lavoro usati da un cluster in esecuzione in HDInsight senza dover ricreare il cluster. Per modificare le dimensioni del cluster Hadoop usando 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
Il parametro Set-AzHDInsightGatewayCredential imposta le credenziali HTTP del gateway di un cluster 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('.')
$defaultStorageType = $storageInfo[1]
$defaultStorageName = $storageInfo[0]
echo "Default Storage account name: $defaultStorageName"
echo "Default Storage account type: $defaultStorageType"
if ($defaultStorageType -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à Azure Resource Manager ogni cluster HDInsight appartiene a un gruppo di risorse di Azure. Per trovare il gruppo di risorse, usare il comando seguente:
$clusterName = "<HDInsight Cluster Name>"
$cluster = Get-AzHDInsightCluster -ClusterName $clusterName
$resourceGroupName = $cluster.ResourceGroup
Inviare i processi
Per usare i prodotti seguenti per inviare processi, seguire le istruzioni riportate nei riferimenti:
- MapReduce: eseguire gli esempi di MapReduce inclusi in HDInsight
- Apache Hive: eseguire query Apache Hive con PowerShell
- Apache Sqoop: usare Apache Sqoop con HDInsight
- Apache Oozie: usare Apache Oozie con Apache Hadoop per definire ed eseguire un flusso di lavoro in HDInsight
Caricare dati in Archiviazione BLOB di Azure
Per caricare dati in Archiviazione BLOB di Azure, vedere Caricare dati in HDInsight.