Verwalten von Apache Hadoop-Clustern in Azure HDInsight mit PowerShell
Sie können Azure PowerShell zum Steuern und Automatisieren der Bereitstellung und Verwaltung Ihrer Workloads in Azure verwenden. In diesem Artikel erfahren Sie, wie Sie Apache Hadoop-Cluster in Azure HDInsight mithilfe des Az-Moduls von PowerShell verwalten. Eine Liste der HDInsight PowerShell-Cmdlets finden Sie unter Az.HDInsight-Referenz.
Wenn Sie kein Azure-Abonnement besitzen, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen.
Voraussetzungen
Hinweis
Es wird empfohlen, das Azure Az PowerShell-Modul für die Interaktion mit Azure zu verwenden. Informationen zu den ersten Schritten finden Sie unter Installieren von Azure PowerShell. Informationen zum Migrieren zum Az PowerShell-Modul finden Sie unter Migrieren von Azure PowerShell von AzureRM zum Az-Modul.
Das Az-Modul von PowerShell ist installiert.
Erstellen von Clustern
Informationen zum Erstellen von Clustern finden Sie unter Erstellen von Linux-basierten Clustern in HDInsight mit Azure PowerShell.
Auflisten der Cluster
Verwenden Sie den folgenden Befehl, um alle Cluster des aktuellen Abonnements aufzulisten:
Get-AzHDInsightCluster
Cluster anzeigen
Verwenden Sie den folgenden Befehl, um Details zu einem bestimmten Cluster des aktuellen Abonnements anzuzeigen:
Get-AzHDInsightCluster -ClusterName <Cluster Name>
Löschen von Clustern
Verwenden Sie den folgenden Befehl, um einen Cluster zu löschen:
Remove-AzHDInsightCluster -ClusterName <Cluster Name>
Sie können einen Cluster auch löschen, indem Sie die Ressourcengruppe entfernen, die den Cluster enthält. Beim Löschen einer Ressourcengruppe werden alle Ressourcen in der Gruppe, einschließlich des Standardspeicherkontos, gelöscht.
Remove-AzResourceGroup -Name <Resource Group Name>
Skalieren von Clustern
Sie können die Clusterskalierung verwenden, um die Anzahl der von einem in Azure HDInsight ausgeführten Cluster verwendeten Workerknoten zu ändern, ohne den Cluster neu erstellen zu müssen. Führen Sie den folgenden Befehl auf einem Clientcomputer aus, um die Hadoop-Clustergröße mithilfe von PowerShell zu ändern:
Set-AzHDInsightClusterSize -ClusterName <Cluster Name> -TargetInstanceCount <NewSize>
Weitere Informationen zum Skalieren von Clustern finden Sie unter Skalieren von HDInsight-Clustern.
Aktualisieren von HTTP-Anmeldeinformationen
Der Parameter Set-AzHDInsightGatewayCredential legt die Gateway-HTTP-Anmeldeinformationen eines HDInsight-Clusters fest.
$clusterName = "CLUSTERNAME"
$credential = Get-Credential -Message "Enter the HTTP username and password:" -UserName "admin"
Set-AzHDInsightGatewayCredential -ClusterName $clusterName -HttpCredential $credential
Suchen des Standardspeicherkontos
Das folgende PowerShell-Skript veranschaulicht, wie der Name und zugehörigen Informationen des Standardspeicherkontos abgerufen werden:
#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"
}
Suchen der Ressourcengruppe
Im Azure Resource Manager-Modus gehört jeder HDInsight-Cluster einer Azure-Ressourcengruppe an. Führen Sie den folgenden Befehl aus, um die Ressourcengruppe zu finden:
$clusterName = "<HDInsight Cluster Name>"
$cluster = Get-AzHDInsightCluster -ClusterName $clusterName
$resourceGroupName = $cluster.ResourceGroup
Übermitteln von Aufträgen
Um die folgenden Produkte zum Übermitteln von Aufträgen zu verwenden, folgen Sie den Anweisungen in den Referenzen:
- MapReduce: Ausführen von MapReduce-Beispielen in HDInsight
- Apache Hive: Ausführen von Apache Hive-Abfragen mit PowerShell
- Apache Sqoop: Verwenden von Apache Sqoop mit HDInsight
- Apache Oozie: Verwenden von Apache Oozie mit Apache Hadoop zum Definieren und Ausführen eines Workflows in HDInsight
Hochladen von Daten in Azure Blob Storage
Informationen zum Hochladen von Daten in Azure Blob Storage finden Sie unter Hochladen von Daten in HDInsight.