Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Avec Azure Automation, vous pouvez créer des scripts qui s’exécutent dans le cloud et gèrent les ressources Azure à la demande ou selon une planification. Cet article explique comment créer des runbooks PowerShell pour créer et supprimer des clusters Azure HDInsight.
Dans ce tutoriel, vous allez apprendre à :
- Installer les modules nécessaires à l’interaction avec HDInsight.
- Créer et stocker les informations d’identification nécessaires lors de la création d’un cluster.
- Créer un runbook Automation pour créer un cluster HDInsight.
Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
Prérequis
- Un compte Automation existant.
- Un compte Stockage Azure existant, qui peut être utilisé en tant qu’espace de stockage en cluster.
Installer les modules HDInsight
Connectez-vous au portail Azure.
Sélectionnez vos comptes Automation.
Sous Ressources partagées, sélectionnez Galerie de modules.
Saisissez AzureRM.Profile dans la zone et sélectionnez Entrée pour lancer la recherche. Sélectionnez le résultat de la recherche disponible.
Dans l’écran AzureRM.Profile, sélectionnez Importer. Sélectionnez la case pour mettre à jour les modules Azure, puis sélectionnez OK.
Retour à la galerie des modules. Sous Ressources partagées, sélectionnez Galerie de modules.
Saisissez HDInsight, puis sélectionnez AzureRM.HDInsight.
Dans le volet AzureRM.HDInsight, sélectionnez Importer>OK.
Créer des informations d’identification
Sous Ressources partagées, sélectionnez Informations d’identification.
Sélectionnez Ajouter des informations d’identification.
Entrez les informations nécessaires dans le volet Nouvelles informations d’identification. Cet identifiant est utilisé pour stocker le mot de passe du cluster. Vous l’utilisez pour vous connecter à Ambari.
Propriété Valeur Nom cluster-password
Nom d'utilisateur admin
Mot de passe SECURE_PASSWORD
Confirmer le mot de passe SECURE_PASSWORD
Sélectionnez Créer.
Répétez la même procédure pour de nouvelles informations d’identification ssh-password avec le nom d’utilisateur sshuser et un mot de passe de votre choix. Sélectionnez Créer. Cet identifiant est utilisé pour stocker le mot de passe du protocole Secure Shell pour votre cluster.
Créer un runbook pour créer un cluster
Sous Automatisation de processus, sélectionnez Runbooks.
Sélectionnez Créer un runbook.
Dans le panneau Créer un runbook, entrez un nom pour le runbook, comme hdinsight-cluster-create. Sélectionnez PowerShell dans la liste déroulante Type de runbook.
Sélectionnez Créer.
Entrez le code suivant dans l’écran Modifier le runbook PowerShell, puis sélectionnez Publier.
Param ( [Parameter (Mandatory= $true)] [String] $subscriptionID, [Parameter (Mandatory= $true)] [String] $resourceGroup, [Parameter (Mandatory= $true)] [String] $storageAccount, [Parameter (Mandatory= $true)] [String] $containerName, [Parameter (Mandatory= $true)] [String] $clusterName ) ### Authenticate to Azure $Conn = Get-AutomationConnection -Name 'AzureRunAsConnection' Add-AzureRMAccount -ServicePrincipal -Tenant $Conn.TenantID -ApplicationId $Conn.ApplicationID -CertificateThumbprint $Conn.CertificateThumbprint # Set cluster variables $storageAccountKey = (Get-AzureRmStorageAccountKey –Name $storageAccount –ResourceGroupName $resourceGroup)[0].value # Setting cluster credentials #Automation credential for Cluster Admin $clusterCreds = Get-AutomationPSCredential –Name 'cluster-password' #Automation credential for user to SSH into cluster $sshCreds = Get-AutomationPSCredential –Name 'ssh-password' $clusterType = "Hadoop" #Use any supported cluster type (Hadoop, HBase, etc.) $clusterOS = "Linux" $clusterWorkerNodes = 3 $clusterNodeSize = "Standard_D3_v2" $location = Get-AzureRmStorageAccount –StorageAccountName $storageAccount –ResourceGroupName $resourceGroup | %{$_.Location} ### Provision HDInsight cluster New-AzureRmHDInsightCluster –ClusterName $clusterName –ResourceGroupName $resourceGroup –Location $location –DefaultStorageAccountName "$storageAccount.blob.core.windows.net" –DefaultStorageAccountKey $storageAccountKey -DefaultStorageContainer $containerName –ClusterType $clusterType –OSType $clusterOS –Version “3.6” –HttpCredential $clusterCreds –SshCredential $sshCreds –ClusterSizeInNodes $clusterWorkerNodes –HeadNodeSize $clusterNodeSize –WorkerNodeSize $clusterNodeSize
Créer un runbook pour supprimer un cluster
Sous Automatisation de processus, sélectionnez Runbooks.
Sélectionnez Créer un runbook.
Dans le panneau Créer un runbook, entrez un nom pour le runbook, comme hdinsight-cluster-delete. Sélectionnez PowerShell dans la liste déroulante Type de runbook.
Sélectionnez Créer.
Entrez le code suivant dans l’écran Modifier le runbook PowerShell, puis sélectionnez Publier.
Param ( [Parameter (Mandatory= $true)] [String] $clusterName ) ### Authenticate to Azure $Conn = Get-AutomationConnection -Name 'AzureRunAsConnection' Add-AzureRMAccount -ServicePrincipal -Tenant $Conn.TenantID -ApplicationId $Conn.ApplicationID -CertificateThumbprint $Conn.CertificateThumbprint Remove-AzureRmHDInsightCluster -ClusterName $clusterName
Exécuter des runbooks
Cette section explique comment exécuter des runbooks.
Créer un cluster
Affichez la liste des runbooks de votre compte d'automatisation. Sous Automatisation de processus, sélectionnez Runbooks.
Sélectionnez hdinsight-cluster-create ou le nom que vous avez utilisé lors de la création de votre runbook de création de cluster.
Sélectionnez Démarrer pour exécuter immédiatement le runbook. Vous pouvez également planifier une exécution périodique des runbooks. Pour plus d’informations, consultez Planifier un runbook dans l’automatisation.
Entrez les paramètres nécessaires pour le script et sélectionnez OK. Cet étape crée un cluster HDInsight avec le nom que vous avez spécifié dans le paramètre CLUSTERNAME.
Suppression d'un cluster
Supprimez le cluster en sélectionnant le runbook hdinsight-cluster-delete que vous avez créé. Sélectionnez Démarrer, entrez le paramètre CLUSTERNAME, puis sélectionnez OK.
Nettoyer les ressources
Lorsque vous n’avez plus besoin de votre ressource, supprimez le compte Automation que vous avez créé pour éviter des frais imprévus. Accédez au portail Azure, sélectionnez le groupe de ressources dans lequel vous avez créé le compte Automation, sélectionnez le compte Automation, puis sélectionnez Supprimer.