Azure PowerShell kullanarak HDInsight'ta Linux tabanlı kümeler oluşturma

Azure PowerShell, Microsoft Azure'da iş yüklerinizin dağıtımını ve yönetimini denetlemek ve otomatikleştirmek için kullanabileceğiniz güçlü bir betik ortamıdır. Bu belge, Azure PowerShell kullanarak Linux tabanlı hdinsight kümesi oluşturma hakkında bilgi sağlar. Ayrıca örnek bir betik de içerir.

Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.

Önkoşullar

Not

Azure ile etkileşim kurmak için Azure Az PowerShell modülünü kullanmanızı öneririz. Başlamak için bkz . Azure PowerShell'i yükleme. Az PowerShell modülüne nasıl geçeceğinizi öğrenmek için bkz. Azure PowerShell’i AzureRM’den Az’ye geçirme.

Azure PowerShell Az modülü.

Küme oluşturma

Uyarı

HDInsight kümeleri için faturalama, kullansanız da kullanmasanız da dakikada bir eşit olarak dağıtılır. Kullanmayı bitirdikten sonra kümenizi sildiğinizden emin olun. Bkz . HDInsight kümesini silme.

Azure PowerShell kullanarak HDInsight kümesi oluşturmak için aşağıdaki yordamları tamamlamanız gerekir:

  • Azure kaynak grubu oluşturma
  • Azure Depolama hesabı oluşturma
  • Azure Blob kapsayıcısı oluşturma
  • HDInsight kümesi oluşturma

Not

Azure Data Lake Storage 2. Nesil ile HDInsight kümesi oluşturmak için PowerShell'in kullanılması şu anda desteklenmemektedir.

Aşağıdaki betikte yeni bir kümenin nasıl oluşturulacağı gösterilmektedir:

# Login to your Azure subscription
$context = Get-AzContext
if ($context -eq $null) 
{
    Connect-AzAccount
}
$context

# If you have multiple subscriptions, set the one to use
# $subscriptionID = "<subscription ID to use>"
# Select-AzSubscription -SubscriptionId $subscriptionID

# Get user input/default values
$resourceGroupName = Read-Host -Prompt "Enter the resource group name"
$location = Read-Host -Prompt "Enter the Azure region to create resources in"

# Create the resource group
New-AzResourceGroup -Name $resourceGroupName -Location $location

$defaultStorageAccountName = Read-Host -Prompt "Enter the name of the storage account"

# Create an Az.Storage account and container
New-AzStorageAccount `
    -ResourceGroupName $resourceGroupName `
    -Name $defaultStorageAccountName `
    -Type Standard_LRS `
    -Location $location
$defaultStorageAccountKey = (Get-AzStorageAccountKey `
                                -ResourceGroupName $resourceGroupName `
                                -Name $defaultStorageAccountName)[0].Value

$storageAccountResourceId = (Get-AzStorageAccount -ResourceGroupName $resourceGroupName -AccountName $defaultStorageAccountName).Id  

$defaultStorageContext = New-AzStorageContext `
                                -StorageAccountName $defaultStorageAccountName `
                                -StorageAccountKey $defaultStorageAccountKey

# Get information for the HDInsight cluster
$clusterName = Read-Host -Prompt "Enter the name of the HDInsight cluster"
# Cluster login is used to secure HTTPS services hosted on the cluster
$httpCredential = Get-Credential -Message "Enter Cluster login credentials" -UserName "admin"
# SSH user is used to remotely connect to the cluster using SSH clients
$sshCredentials = Get-Credential -Message "Enter SSH user credentials" -UserName "sshuser"

# Default cluster size (# of worker nodes), version, type, and OS
$clusterSizeInNodes = "4"
$clusterVersion = "5.1"
$clusterType = "Hadoop"
$clusterOS = "Linux"
# Set the storage container name to the cluster name
$defaultBlobContainerName = $clusterName

# Create a blob container. This holds the default data store for the cluster.
New-AzStorageContainer `
    -Name $clusterName -Context $defaultStorageContext 

# Create the HDInsight cluster
    New-AzHDInsightCluster `
    -ResourceGroupName $resourceGroupName `
    -ClusterName $clusterName `
    -Location $location `
    -ClusterSizeInNodes $clusterSizeInNodes `
    -ClusterType $clusterType `
    -OSType $clusterOS `
    -Version $clusterVersion `
    -HttpCredential $httpCredential `
    -StorageAccountResourceId $storageAccountResourceId `
    -StorageAccountKey $defaultStorageAccountKey `
    -StorageContainer $defaultBlobContainerName `
    -SshCredential $sshCredentials

Küme oturum açma bilgileri için belirttiğiniz değerler, küme için Hadoop kullanıcı hesabını oluşturmak için kullanılır. Web API'leri veya REST API'leri gibi kümede barındırılan hizmetlere bağlanmak için bu hesabı kullanın.

SSH kullanıcısı için belirttiğiniz değerler, küme için SSH kullanıcısını oluşturmak için kullanılır. Kümede uzak SSH oturumu başlatmak ve işleri çalıştırmak için bu hesabı kullanın. Daha fazla bilgi için HDInsight ile SSH kullanma belgesine bakın.

Önemli

32'den fazla çalışan düğümü kullanmayı planlıyorsanız (küme oluşturma sırasında veya oluşturulduktan sonra kümeyi ölçeklendirerek), en az 8 çekirdekli ve 14 GB RAM'e sahip bir baş düğüm boyutu da belirtmeniz gerekir.

Düğüm boyutları ve ilişkili maliyetler hakkında daha fazla bilgi için bkz. HDInsight fiyatlandırması.

Kümenin oluşturulması 20 dakika kadar sürebilir.

Küme oluşturma: Yapılandırma nesnesi

Cmdlet'ini kullanarak New-AzHDInsightClusterConfig bir HDInsight yapılandırma nesnesi de oluşturabilirsiniz. Daha sonra kümeniz için ek yapılandırma seçeneklerini etkinleştirmek üzere bu yapılandırma nesnesini değiştirebilirsiniz. Son olarak, yapılandırmayı -Config New-AzHDInsightCluster kullanmak için cmdlet'in parametresini kullanın.

Kümeleri özelleştirme

  • Bkz . Bootstrap kullanarak HDInsight kümelerini özelleştirme.
  • Bkz . Betik Eylemini kullanarak HDInsight kümelerini özelleştirme.

Küme silme

Uyarı

HDInsight kümeleri için faturalama, kullansanız da kullanmasanız da dakikada bir eşit olarak dağıtılır. Kullanmayı bitirdikten sonra kümenizi sildiğinizden emin olun. Bkz . HDInsight kümesini silme.

Sorun giderme

HDInsight kümeleri oluştururken sorun yaşarsanız bkz. erişim denetimi gereksinimleri.

Sonraki adımlar

HdInsight kümesini başarıyla oluşturduğunuza göre, kümenizle çalışmayı öğrenmek için aşağıdaki kaynakları kullanın.

Apache Hadoop kümeleri

Apache HBase kümeleri

Apache Spark kümeleri