Delen via


Een HDInsight-cluster maken met Azure Data Lake Storage Gen1 met behulp van een Azure Resource Manager-sjabloon

Meer informatie over het gebruik van Azure PowerShell voor het configureren van een HDInsight-cluster met Azure Data Lake Storage Gen1 als extra opslag.

Voor ondersteunde clustertypen kan Data Lake Storage Gen1 worden gebruikt als standaardopslag of als extra opslagaccount. Wanneer Data Lake Storage Gen1 wordt gebruikt als extra opslag, wordt het standaardopslagaccount voor de clusters nog steeds Azure Blob Storage (WASB) en de clustergerelateerde bestanden (zoals logboeken, enzovoort) nog steeds naar de standaardopslag geschreven, terwijl de gegevens die u wilt verwerken, kunnen worden opgeslagen in een Data Lake Storage Gen1-account. Het gebruik van Data Lake Storage Gen1 als extra opslagaccount heeft geen invloed op de prestaties of de mogelijkheid om vanuit het cluster naar de opslag te lezen/schrijven.

Data Lake Storage Gen1 gebruiken voor HDInsight-clusteropslag

Hier volgen enkele belangrijke overwegingen voor het gebruik van HDInsight met Data Lake Storage Gen1:

  • Optie voor het maken van HDInsight-clusters met toegang tot Data Lake Storage Gen1 als standaardopslag is beschikbaar voor HDInsight versie 3.5 en 3.6.

  • Optie voor het maken van HDInsight-clusters met toegang tot Data Lake Storage Gen1, omdat er extra opslag beschikbaar is voor HDInsight-versies 3.2, 3.4, 3.5 en 3.6.

In dit artikel richten we een Hadoop-cluster in met Data Lake Storage Gen1 als extra opslag. Zie Een HDInsight-cluster maken met Data Lake Storage Gen1 met behulp van Azure Portal voor instructies over het maken van een Hadoop-cluster met Data Lake Storage Gen1 als standaardopslag.

Benodigdheden

Notitie

U wordt aangeraden de Azure Az PowerShell-module te gebruiken om te communiceren met Azure. Zie Azure PowerShell installeren om aan de slag te gaan. Raadpleeg Azure PowerShell migreren van AzureRM naar Az om te leren hoe u naar de Azure PowerShell-module migreert.

Voordat u met deze zelfstudie begint, moet u het volgende hebben of hebben gedaan:

  • een Azure-abonnement. Zie Gratis proefversie van Azure ophalen.

  • Azure PowerShell 1.0 of hoger. Zie Azure PowerShell installeren en configureren.

  • Microsoft Entra-service-principal. Stappen in deze handleiding geven instructies voor het maken van een "service-principal" in Microsoft Entra ID. U moet echter een Microsoft Entra-beheerder zijn om een service-principal te kunnen maken. Als u een Microsoft Entra-beheerder bent, kunt u deze vereiste overslaan en doorgaan met de zelfstudie.

    Als u geen Microsoft Entra-beheerder bent, kunt u de vereiste stappen voor het maken van een service-principal niet uitvoeren. In dat geval moet uw Microsoft Entra-beheerder eerst een service-principal maken voordat u een HDInsight-cluster kunt maken met Data Lake Storage Gen1. De service-principal moet ook worden gemaakt met behulp van een certificaat, zoals beschreven in Een service-principal met certificaat maken.

Een HDInsight-cluster maken met Data Lake Storage Gen1

De Resource Manager-sjabloon en de vereisten voor het gebruik van de sjabloon zijn beschikbaar op GitHub bij Een HDInsight Linux-cluster implementeren met nieuwe Data Lake Storage Gen1. Volg de instructies op deze koppeling om een HDInsight-cluster te maken met Data Lake Storage Gen1 als extra opslag.

Voor de instructies in de bovenstaande koppeling is PowerShell vereist. Voordat u met deze instructies begint, moet u zich aanmelden bij uw Azure-account. Open vanaf uw bureaublad een nieuw Azure PowerShell-venster en voer de volgende codefragmenten in. Wanneer u wordt gevraagd om u aan te melden, moet u zich aanmelden als een van de abonnementsbeheerders/eigenaar:

# Log in to your Azure account
Connect-AzAccount

# List all the subscriptions associated to your account
Get-AzSubscription

# Select a subscription
Set-AzContext -SubscriptionId <subscription ID>

Met de sjabloon worden deze resourcetypen geïmplementeerd:

Voorbeeldgegevens uploaden naar Data Lake Storage Gen1

De Resource Manager-sjabloon maakt een nieuw opslagaccount met Data Lake Storage Gen1 en koppelt dit aan het HDInsight-cluster. U moet nu enkele voorbeeldgegevens uploaden naar Data Lake Storage Gen1. U hebt deze gegevens later in de zelfstudie nodig om taken uit te voeren vanuit een HDInsight-cluster dat toegang heeft tot gegevens in het opslagaccount met Data Lake Storage Gen1. Zie Een bestand uploaden naar Data Lake Storage Gen1 voor instructies over het uploaden van gegevens. Als u nog geen voorbeeldgegevens hebt om te uploaden, kunt u de map Ambulance Data uit de Azure Data Lake Git-opslagplaats gebruiken.

Relevante ACL's instellen voor de voorbeeldgegevens

Als u ervoor wilt zorgen dat de voorbeeldgegevens die u uploadt toegankelijk zijn vanuit het HDInsight-cluster, moet u ervoor zorgen dat de Microsoft Entra-toepassing die wordt gebruikt voor het tot stand brengen van identiteit tussen het HDInsight-cluster en Data Lake Storage Gen1 toegang heeft tot het bestand of de map waartoe u toegang probeert te krijgen. Volg de volgende stappen om dit te doen.

  1. Zoek de naam van de Microsoft Entra-toepassing die is gekoppeld aan het HDInsight-cluster en het opslagaccount met Data Lake Storage Gen1. Een manier om naar de naam te zoeken, is door het HDInsight-clusterblade dat u hebt gemaakt met behulp van de Resource Manager-sjabloon te openen, op het tabblad Identiteit van Microsoft Entra te klikken en te zoeken naar de waarde van de weergavenaam van de service-principal.
  2. Geef nu toegang tot deze Microsoft Entra-toepassing op het bestand/de map waartoe u toegang wilt krijgen vanuit het HDInsight-cluster. Zie Gegevens beveiligen in Data Lake Storage Gen1 om de juiste ACL's in te stellen voor het bestand/de map in Data Lake Storage Gen1.

Testtaken uitvoeren op het HDInsight-cluster om Data Lake Storage Gen1 te gebruiken

Nadat u een HDInsight-cluster hebt geconfigureerd, kunt u testtaken uitvoeren op het cluster om te testen of het HDInsight-cluster toegang heeft tot Data Lake Storage Gen1. Hiervoor voeren we een Hive-voorbeeldtaak uit waarmee een tabel wordt gemaakt met behulp van de voorbeeldgegevens die u eerder hebt geüpload naar uw opslagaccount met Data Lake Storage Gen1.

In deze sectie gaat u SSH naar een HDInsight Linux-cluster en voert u de Hive-voorbeeldquery uit. Als u een Windows-client gebruikt, raden we u aan PuTTY te gebruikenhttps://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

Zie SSH gebruiken met Hadoop op basis van Linux in HDInsight vanuit Windows voor meer informatie over het gebruik van PuTTY.

  1. Nadat u verbinding hebt gemaakt, start u de Hive CLI met behulp van de volgende opdracht:

    hive
    
  2. Voer met behulp van de CLI de volgende instructies in om een nieuwe tabel met de naam voertuigen te maken met behulp van de voorbeeldgegevens in Data Lake Storage Gen1:

    DROP TABLE vehicles;
    CREATE EXTERNAL TABLE vehicles (str string) LOCATION 'adl://<mydatalakestoragegen1>.azuredatalakestore.net:443/';
    SELECT * FROM vehicles LIMIT 10;
    

    De uitvoer zou er vergelijkbaar moeten uitzien als het volgende:

    1,1,2014-09-14 00:00:03,46.81006,-92.08174,51,S,1
    1,2,2014-09-14 00:00:06,46.81006,-92.08174,13,NE,1
    1,3,2014-09-14 00:00:09,46.81006,-92.08174,48,NE,1
    1,4,2014-09-14 00:00:12,46.81006,-92.08174,30,W,1
    1,5,2014-09-14 00:00:15,46.81006,-92.08174,47,S,1
    1,6,2014-09-14 00:00:18,46.81006,-92.08174,9,S,1
    1,7,2014-09-14 00:00:21,46.81006,-92.08174,53,N,1
    1,8,2014-09-14 00:00:24,46.81006,-92.08174,63,SW,1
    1,9,2014-09-14 00:00:27,46.81006,-92.08174,4,NE,1
    1,10,2014-09-14 00:00:30,46.81006,-92.08174,31,N,1
    

Toegang tot Data Lake Storage Gen1 met HDFS-opdrachten

Zodra u het HDInsight-cluster hebt geconfigureerd voor het gebruik van Data Lake Storage Gen1, kunt u de HDFS-shellopdrachten gebruiken om toegang te krijgen tot het archief.

In deze sectie gaat u SSH naar een HDInsight Linux-cluster en voert u de HDFS-opdrachten uit. Als u een Windows-client gebruikt, raden we u aan PuTTY te gebruikenhttps://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

Zie SSH gebruiken met Hadoop op basis van Linux in HDInsight vanuit Windows voor meer informatie over het gebruik van PuTTY.

Nadat u verbinding hebt gemaakt, gebruikt u de volgende opdracht voor het HDFS-bestandssysteem om de bestanden in het opslagaccount weer te geven met Data Lake Storage Gen1.

hdfs dfs -ls adl://<storage account with Data Lake Storage Gen1 name>.azuredatalakestore.net:443/

Hiermee wordt het bestand weergegeven dat u eerder naar Data Lake Storage Gen1 hebt geüpload.

15/09/17 21:41:15 INFO web.CaboWebHdfsFileSystem: Replacing original urlConnectionFactory with org.apache.hadoop.hdfs.web.URLConnectionFactory@21a728d6
Found 1 items
-rwxrwxrwx   0 NotSupportYet NotSupportYet     671388 2015-09-16 22:16 adl://mydatalakestoragegen1.azuredatalakestore.net:443/mynewfolder

U kunt ook de hdfs dfs -put opdracht gebruiken om bepaalde bestanden te uploaden naar Data Lake Storage Gen1 en vervolgens te gebruiken hdfs dfs -ls om te controleren of de bestanden zijn geüpload.

Volgende stappen