Share via


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

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

Voor ondersteunde clustertypen kan Data Lake Storage Gen1 worden gebruikt als standaardopslag of als een extra opslagaccount. Wanneer Data Lake Storage Gen1 wordt gebruikt als extra opslag, is het standaardopslagaccount voor de clusters nog steeds Azure Blob Storage (WASB) en worden 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 Azure Portal voor instructies over het maken van een Hadoop-cluster met Data Lake Storage Gen1 als standaardopslag.

Vereisten

Notitie

Het wordt aanbevolen 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. De stappen in deze zelfstudie bevatten 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 een dergelijk geval moet uw Microsoft Entra-beheerder eerst een service-principal maken voordat u een HDInsight-cluster met Data Lake Storage Gen1 kunt maken. 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 op 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 op de bovenstaande koppeling is PowerShell vereist. Voordat u met deze instructies begint, moet u zich aanmelden bij uw Azure-account. Open vanaf het bureaublad een nieuw Azure PowerShell venster en voer de volgende codefragmenten in. Wanneer u wordt gevraagd 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 sjabloon Resource Manager 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 verderop in de zelfstudie nodig om taken uit te voeren vanuit een HDInsight-cluster die toegang hebben 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

Om ervoor te 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 om de identiteit tussen het HDInsight-cluster en Data Lake Storage Gen1 toegang heeft tot het bestand/de map waartoe u toegang wilt 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 de naam te zoeken, is door de HDInsight-clusterblade te openen die u hebt gemaakt met behulp van de sjabloon Resource Manager, op het tabblad Cluster Microsoft Entra identiteit te klikken en te zoeken naar de waarde van Weergavenaam service-principal.
  2. Geef nu toegang tot deze Microsoft Entra toepassing op het bestand of de map die u wilt openen vanuit het HDInsight-cluster. Zie Gegevens beveiligen in Data Lake Storage Gen1 als u de juiste ACL's wilt instellen 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 die een tabel maakt met behulp van de voorbeeldgegevens die u eerder met Data Lake Storage Gen1 hebt geüpload naar uw opslagaccount.

In deze sectie voert u SSH uit in een HDInsight Linux-cluster en voert u de Hive-voorbeeldquery uit. Als u een Windows-client gebruikt, raden we u aan PuTTY te gebruiken, dat kan worden gedownload van https://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. Zodra 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 ziet er als volgt uit:

    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

Nadat 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 de store.

In deze sectie voert u SSH uit in een HDInsight Linux-cluster en voert u de HDFS-opdrachten uit. Als u een Windows-client gebruikt, raden we u aan PuTTY te gebruiken, dat kan worden gedownload van https://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.

Zodra u verbinding hebt gemaakt, gebruikt u de volgende HDFS-bestandssysteemopdracht 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/

Hier moet het bestand worden weergegeven dat u eerder hebt geüpload naar Data Lake Storage Gen1.

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 sommige bestanden te uploaden naar Data Lake Storage Gen1 en vervolgens gebruiken hdfs dfs -ls om te controleren of de bestanden zijn geüpload.

Volgende stappen