Управление кластерами Apache Hadoop в HDInsight с помощью Azure PowerShell

Azure PowerShell можно использовать для контроля и автоматизации развертывания рабочих нагрузок, а также управления ими в Azure. Из этой статьи вы узнаете, как управлять кластерами Apache Hadoop в Azure HDInsight с помощью модуля Az Azure PowerShell. Список командлетов HDInsight PowerShell см. в справочнике Az.HDInsight.

Если у вас еще нет подписки Azure, создайте бесплатную учетную запись, прежде чем начинать работу.

Предварительные требования

Примечание

Для взаимодействия с Azure рекомендуется использовать модуль Azure Az PowerShell. Чтобы начать работу, см. статью Установка Azure PowerShell. Дополнительные сведения см. в статье Перенос Azure PowerShell с AzureRM на Az.

Установите модуль Az для PowerShell.

Создание кластеров

Ознакомьтесь с разделом Создание кластеров под управлением Linux в HDInsight с помощью Azure PowerShell

список кластеров

Чтобы получить список всех кластеров в текущей подписке, используйте следующую команду:

Get-AzHDInsightCluster

Отображение кластеров

Чтобы отобразить сведения о конкретном кластере в текущей подписке, используйте следующую команду:

Get-AzHDInsightCluster -ClusterName <Cluster Name>

Удаление кластеров

Используйте следующую команду для удаления кластера:

Remove-AzHDInsightCluster -ClusterName <Cluster Name>

Можно также удалить кластер, удалив группу ресурсов, которая содержит этот кластер. Удаление группы ресурсов приведет к удалению всех ресурсов в группе, включая учетную запись хранения по умолчанию.

Remove-AzResourceGroup -Name <Resource Group Name>

Масштабирование кластеров

Масштабирование кластера позволяет изменить количество рабочих узлов в кластере, который работает под управлением Azure HDInsight. При этом не требуется повторно создавать кластер. Чтобы изменить размер кластера Hadoop с помощью Azure PowerShell, выполните следующую команду с клиентского компьютера:

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

Подробнее о масштабировании кластеров см. в статье Масштабирование кластеров HDInsight.

Обновление учетных данных пользователя HTTP

Set-AzHDInsightGatewayCredential задает учетные данные HTTP шлюза для кластера Azure HDInsight.

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

Set-AzHDInsightGatewayCredential -ClusterName $clusterName -HttpCredential $credential

Поиск учетной записи хранения по умолчанию

В следующем сценарии PowerShell показано получение имени учетной записи хранения по умолчанию и связанной информации.

#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"
}

Поиск группы ресурсов

В режиме Resource Manager каждый кластер HDInsight относится к группе ресурсов Azure. Поиск группы ресурсов:

$clusterName = "<HDInsight Cluster Name>"

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

Отправка заданий

Отправка заданий MapReduce

См. статью Выполнение примеров MapReduce, включенных в HDInsight.

Отправка заданий Apache Hive

См. статью о выполнении запросов Apache Hive с помощью PowerShell.

Отправка заданий Apache Sqoop

См. статью об использовании Apache Sqoop с HDInsight.

Отправка заданий Apache Oozie

См. статью об использовании Apache Oozie с Apache Hadoop для определения и выполнения рабочего процесса в HDInsight.

Отправка данных в хранилище BLOB-объектов Azure

Ознакомьтесь со статьей Отправка данных в HDInsight.

См. также: