Konfigurera kluster i HDInsight med Apache Hadoop, Apache Spark, Apache Kafka med mera
Lär dig hur du konfigurerar Apache Hadoop, Apache Spark, Apache Kafka, Interaktiv fråga eller Apache HBase eller i HDInsight. Lär dig också hur du anpassar kluster och lägger till säkerhet genom att ansluta dem till en domän.
Ett Hadoop-kluster består av flera virtuella datorer (noder) som används för distribuerad bearbetning av uppgifter. Azure HDInsight hanterar implementeringsinformation om installation och konfiguration av enskilda noder, så du behöver bara ange allmän konfigurationsinformation.
Viktigt!
Debiteringen för HDInsight-klustret börjar när ett kluster skapas och stoppas när klustret tas bort. Debiteringen görs i förväg per minut, så du ska alltid ta bort ditt kluster när det inte används. Lär dig hur du tar bort ett kluster.
Om du använder flera kluster tillsammans vill du skapa ett virtuellt nätverk, och om du använder ett Spark-kluster vill du också använda Hive Warehouse-Anslut eller. Mer information finns i Planera ett virtuellt nätverk för Azure HDInsight och Integrera Apache Spark och Apache Hive med Hive Warehouse-Anslut eller.
Installationsmetoder för kluster
I följande tabell visas de olika metoder som du kan använda för att konfigurera ett HDInsight-kluster.
Kluster som skapats med | Webbläsare | Kommandorad | REST API | SDK |
---|---|---|---|---|
Azure-portalen | ✅ | |||
Azure Data Factory | ✅ | ✅ | ✅ | ✅ |
Azure CLI | ✅ | |||
Azure PowerShell | ✅ | |||
cURL | ✅ | ✅ | ||
Azure Resource Manager-mallar | ✅ |
Den här artikeln beskriver hur du konfigurerar i Azure-portalen, där du kan skapa ett HDInsight-kluster.
Grundläggande
Projektinformation
Azure Resource Manager hjälper dig att arbeta med resurserna i ditt program som en grupp, som kallas för en Azure-resursgrupp. Du kan distribuera, uppdatera, övervaka eller ta bort alla resurser för ditt program i en enda samordnad åtgärd.
Klusterinformation
Klusternamn
HDInsight-klusternamn har följande begränsningar:
- Tillåtna tecken: a-z, 0-9, A-Z
- Max längd: 59
- Reserverade namn: appar
- Omfånget för klusternamngivning gäller för alla Azure-prenumerationer. Klusternamnet måste därför vara unikt över hela världen.
- De första sex tecknen måste vara unika i ett virtuellt nätverk
Region
Du behöver inte uttryckligen ange klusterplatsen: Klustret finns på samma plats som standardlagringen. Om du vill ha en lista över regioner som stöds väljer du listrutan Region i HDInsight-priser.
Klustertyp
Azure HDInsight tillhandahåller för närvarande följande klustertyper, var och en med en uppsättning komponenter för att tillhandahålla vissa funktioner.
Viktigt!
HDInsight-kluster är tillgängliga i olika typer, var och en för en enda arbetsbelastning eller teknik. Det finns ingen metod som stöds för att skapa ett kluster som kombinerar flera typer, till exempel HBase i ett kluster. Om din lösning kräver tekniker som är spridda över flera HDInsight-klustertyper kan ett virtuellt Azure-nätverk ansluta de klustertyper som krävs.
Klustertyp | Funktioner |
---|---|
Hadoop | Batchfråga och analys av lagrade data |
HBase | Bearbetning för stora mängder schemalösa NoSQL-data |
Interaktiv fråga | Minnesintern cachelagring för interaktiva och snabbare Hive-frågor |
Kafka | En distribuerad strömningsplattform som kan användas för att skapa strömmande datapipelines och program i realtid |
Spark | Minnesintern bearbetning, interaktiva frågor, bearbetning av mikrobatchströmmar |
Version
Välj versionen av HDInsight för det här klustret. Mer information finns i HDInsight-versioner som stöds.
Klusterautentiseringsuppgifter
Med HDInsight-kluster kan du konfigurera två användarkonton när klustret skapas:
- Användarnamn för klusterinloggning: Standardanvändarnamnet är admin. Den använder den grundläggande konfigurationen på Azure-portalen. Ibland kallas det "Klusteranvändare" eller "HTTP-användare".
- Secure Shell-användarnamn (SSH): Används för att ansluta till klustret via SSH. Mer information finns i Use SSH with HDInsight (Använda SSH med HDInsight).
HTTP-användarnamnet har följande begränsningar:
- Tillåtna specialtecken:
_
och@
- Tecken tillåts inte:
#;."',/:
!*?$(){}[]<>|&--=+%~^blanksteg' - Maxlängd: 20
SSH-användarnamnet har följande begränsningar:
- Tillåtna specialtecken:
_
och@
- Tecken tillåts inte:
#;."',/:
!*?$(){}[]<>|&--=+%~^blanksteg' - Maxlängd: 64
- Reserverade namn: hadoop, användare, oozie, hive, mapred, ambari-qa, zookeeper, tez, hdfs, sqoop, yarn, hcat, ams, hbase, administrator, admin, user, user1, test, user2, test1, user3, admin1, 1, 123, a,
actuser
, adm, admin2, aspnet, backup, console, David, guest, John, owner, root, server, sql, support, support_388945a0, sys, test2, test3, user4, user5, spark
Lagring
Även om en lokal installation av Hadoop använder HdFS (Hadoop Distributed File System) för lagring i klustret använder du lagringsslutpunkter som är anslutna till klustret i molnet. Med molnlagring kan du på ett säkert sätt ta bort de HDInsight-kluster som används för beräkning samtidigt som du behåller dina data.
HDInsight-kluster kan använda följande lagringsalternativ:
- Azure Data Lake Storage Gen2
- Azure Data Lake Storage Gen1
- Generell användning av Azure Storage v2
- Generell användning av Azure Storage v1
- Azure Storage-blockblob (stöds endast som sekundär lagring)
Mer information om lagringsalternativ med HDInsight finns i Jämför lagringsalternativ för användning med Azure HDInsight-kluster.
Varning
Det går inte att använda ytterligare ett lagringskonto på en annan plats än HDInsight-klustret.
Under konfigurationen anger du för standardslutpunkten för lagring en blobcontainer för ett Azure Storage-konto eller Data Lake Storage. Standardlagringen innehåller program- och systemloggar. Du kan också ange ytterligare länkade Azure Storage-konton och Data Lake Storage-konton som klustret kan komma åt. HDInsight-klustret och de beroende lagringskontona måste finnas på samma Azure-plats.
Kommentar
Funktionen som kräver säker överföring framtvingar alla begäranden till ditt konto via en säker anslutning. Endast HDInsight-klusterversion 3.6 eller senare stöder den här funktionen. Mer information finns i Skapa Apache Hadoop-kluster med säkra överföringslagringskonton i Azure HDInsight.
Viktigt!
Om du aktiverar säker lagringsöverföring när du har skapat ett kluster kan det leda till fel med ditt lagringskonto och rekommenderas inte. Det är bättre att skapa ett nytt kluster med ett lagringskonto med säker överföring redan aktiverat.
Kommentar
Azure HDInsight överför inte automatiskt, flyttar eller kopierar dina data som lagras i Azure Storage från en region till en annan.
Inställningar för metaarkiv
Du kan skapa valfria Hive- eller Apache Oozie-metaarkiv. Alla klustertyper stöder dock inte metaarkiv och Azure Synapse Analytics är inte kompatibelt med metaarkiv.
Mer information finns i Använda externa metadatalager i Azure HDInsight.
Viktigt!
När du skapar ett anpassat metaarkiv ska du inte använda bindestreck, bindestreck eller blanksteg i databasnamnet. Detta kan leda till att processen för att skapa klustret misslyckas.
SQL-databas för Hive
Om du vill behålla dina Hive-tabeller när du har tagit bort ett HDInsight-kluster använder du ett anpassat metaarkiv. Du kan sedan koppla metaarkivet till ett annat HDInsight-kluster.
Ett HDInsight-metaarkiv som skapas för en HDInsight-klusterversion kan inte delas mellan olika HDInsight-klusterversioner. En lista över HDInsight-versioner finns i HDInsight-versioner som stöds.
Viktigt!
Standardmetaarkivet tillhandahåller en Azure SQL Database med en DTU-gräns på grundläggande nivå 5 (kan inte uppgraderas)! Lämplig för grundläggande testning. För stora arbetsbelastningar eller produktionsarbetsbelastningar rekommenderar vi att du migrerar till ett externt metaarkiv.
SQL-databas för Oozie
Om du vill öka prestandan när du använder Oozie använder du ett anpassat metaarkiv. Ett metaarkiv kan också ge åtkomst till Oozie-jobbdata när du har tagit bort klustret.
SQL-databas för Ambari
Ambari används för att övervaka HDInsight-kluster, göra konfigurationsändringar och lagra klusterhanteringsinformation och för jobbhistorik. Med den anpassade Ambari DB-funktionen kan du distribuera ett nytt kluster och konfigurera Ambari i en extern databas som du hanterar. Mer information finns i Anpassad Ambari DB.
Viktigt!
Du kan inte återanvända ett anpassat Oozie-metaarkiv. Om du vill använda ett anpassat Oozie-metaarkiv måste du ange en tom Azure SQL Database när du skapar HDInsight-klustret.
Säkerhet + nätverk
Enterprise-säkerhetspaket
För klustertyperna Hadoop, Spark, HBase, Kafka och Interaktiv fråga kan du välja att aktivera Enterprise Security Package. Det här paketet ger möjlighet att ha en säkrare klusterkonfiguration med hjälp av Apache Ranger och integrering med Microsoft Entra-ID. Mer information finns i Översikt över företagssäkerhet i Azure HDInsight.
Med Enterprise-säkerhetspaketet kan du integrera HDInsight med Active Directory och Apache Ranger. Flera användare kan skapas med hjälp av Enterprise-säkerhetspaketet.
Mer information om hur du skapar domänanslutna HDInsight-kluster finns i Skapa domänansluten HDInsight-sandbox-miljö.
TLS
Mer information finns i Transport Layer Security
Virtuellt nätverk
Om din lösning kräver tekniker som är spridda över flera HDInsight-klustertyper kan ett virtuellt Azure-nätverk ansluta de klustertyper som krävs. Med den här konfigurationen kan klustren och all kod som du distribuerar till dem kommunicera direkt med varandra.
Mer information om hur du använder ett virtuellt Azure-nätverk med HDInsight finns i Planera ett virtuellt nätverk för HDInsight.
Ett exempel på hur du använder två klustertyper i ett virtuellt Azure-nätverk finns i Använda Apache Spark Structured Streaming med Apache Kafka. Mer information om hur du använder HDInsight med ett virtuellt nätverk, inklusive specifika konfigurationskrav för det virtuella nätverket, finns i Planera ett virtuellt nätverk för HDInsight.
Inställning för diskkryptering
Mer information finns i Diskkryptering av kundhanterad nyckel.
Kafka REST-proxy
Den här inställningen är endast tillgänglig för klustertypen Kafka. Mer information finns i Använda en REST-proxy.
Identitet
Mer information finns i Hanterade identiteter i Azure HDInsight.
Konfiguration + prissättning
Du debiteras för nodanvändning så länge klustret finns. Faktureringen startar när ett kluster skapas och stoppas när klustret tas bort. Kluster kan inte avallokeras eller spärras.
Nodkonfiguration
Varje klustertyp har sitt eget antal noder, terminologi för noder och standardstorlek för virtuella datorer. I följande tabell finns antalet noder för varje nodtyp inom parenteser.
Typ | Noder | Diagram |
---|---|---|
Hadoop | Huvudnod (2), arbetsnod (1+) | ![]() |
HBase | Huvudserver (2), regionserver (1+), master/ZooKeeper-nod (3) | ![]() |
Spark | Huvudnod (2), arbetsnod (1+), ZooKeeper-nod (3) (kostnadsfri för A1 ZooKeeper VM-storlek) | ![]() |
Mer information finns i Standardnodkonfiguration och storlekar på virtuella datorer för kluster i "Vad är Hadoop-komponenterna och versionerna i HDInsight?"
Kostnaden för HDInsight-kluster bestäms av antalet noder och de virtuella datorstorlekarna för noderna.
Olika klustertyper har olika nodtyper, antal noder och nodstorlekar:
- Standard för Hadoop-klustertyp:
Två huvudnoder
Fyra arbetsnoder
Om du bara testar HDInsight rekommenderar vi att du använder en Arbetsnod. Mer information om HDInsight-priser finns i HDInsight-priser.
Kommentar
Klusterstorleksgränsen varierar mellan Azure-prenumerationer. Kontakta Azure-faktureringssupporten för att öka gränsen.
När du använder Azure-portalen för att konfigurera klustret är nodstorleken tillgänglig via fliken Konfiguration + prissättning . I portalen kan du också se kostnaden som är associerad med de olika nodstorlekarna.
Storlekar för virtuella datorer
När du distribuerar kluster väljer du beräkningsresurser baserat på den lösning som du planerar att distribuera. Följande virtuella datorer används för HDInsight-kluster:
- Virtuella datorer i A- och D1-4-serien: Storlekar på virtuella Linux-datorer för generell användning
- Virtuell dator i D11-14-serien: Minnesoptimerade vm-storlekar för Linux
Information om vilket värde du bör använda för att ange en VM-storlek när du skapar ett kluster med de olika SDK:erna eller när du använder Azure PowerShell finns i VM-storlekar som ska användas för HDInsight-kluster. I den här länkade artikeln använder du värdet i kolumnen Storlek i tabellerna.
Viktigt!
Om du behöver fler än 32 arbetsnoder i ett kluster måste du välja en huvudnodstorlek med minst 8 kärnor och 14 GB RAM-minne.
Mer information finns i Storlekar för virtuella datorer. Information om priser för de olika storlekarna finns i HDInsight-priser.
Bifogad disk
Kommentar
De tillagda diskarna konfigureras endast för lokala nodhanterares kataloger och inte för datanodkataloger
HDInsight-klustret levereras med fördefinierat diskutrymme baserat på SKU. Om du kör några stora program kan det leda till otillräckligt diskutrymme med diskens fullständiga fel – LinkId=221672#ERROR_NOT_ENOUGH_DISK_SPACE
och jobbfel.
Fler skivor kan läggas till i klustret med den nya funktionen NodeManagers lokala katalog. När Hive- och Spark-klustret skapas kan antalet skivor väljas och läggas till i arbetsnoderna. Den valda disken, som kommer att ha storleken 1 TB vardera, skulle vara en del av NodeManagers lokala kataloger.
- Från fliken Konfiguration + prissättning
- Välj Alternativet Aktivera hanterad disk
- Från standarddiskar anger du antalet diskar
- Välj din arbetsnod
Du kan kontrollera antalet diskar från fliken Granska + skapa under Klusterkonfiguration
Lägga till ett program
HDInsight-programmet är ett program som användarna kan installera på ett Linux-baserat HDInsight-kluster. Du kan använda program som tillhandahålls av Microsoft, tredje part eller som utvecklats av dig. Mer information finns i Installera Apache Hadoop-program från tredje part i Azure HDInsight.
De flesta HDInsight-program installeras på en tom kantnod. En tom gränsnod är en virtuell Linux-dator med samma klientverktyg installerade och konfigurerade som i huvudnoden. Du kan använda gränsnoden för att komma åt klustret, testa dina klientprogram och vara värd för dina klientprogram. Mer information finns i Använda tomma kantnoder i HDInsight.
Skriptåtgärder
Du kan installera ytterligare komponenter eller anpassa klusterkonfigurationen med hjälp av skript när du skapar. Sådana skript anropas via skriptåtgärd, vilket är ett konfigurationsalternativ som kan användas från Azure-portalen, HDInsight Windows PowerShell-cmdletar eller HDInsight .NET SDK. Mer information finns i Anpassa HDInsight-kluster med hjälp av skriptåtgärd.
Vissa inbyggda Java-komponenter, till exempel Apache Mahout och Cascading, kan köras i klustret som JAVA-arkivfiler (JAR). Dessa JAR-filer kan distribueras till Azure Storage och skickas till HDInsight-kluster med mekanismer för Hadoop-jobböverföring. Mer information finns i Skicka Apache Hadoop-jobb programmatiskt.
Kommentar
Om du har problem med att distribuera JAR-filer till HDInsight-kluster eller anropa JAR-filer i HDInsight-kluster kontaktar du Microsoft Support.
Kaskadning stöds inte av HDInsight och är inte berättigad till Microsoft Support. Listor över komponenter som stöds finns i Nyheter i klusterversionerna som tillhandahålls av HDInsight.
Ibland vill du konfigurera följande konfigurationsfiler under skapandeprocessen:
- clusterIdentity.xml
- core-site.xml
- gateway.xml
- hbase-env.xml
- hbase-site.xml
- hdfs-site.xml
- hive-env.xml
- hive-site.xml
- mapred-site
- oozie-site.xml
- oozie-env.xml
- tez-site.xml
- webhcat-site.xml
- yarn-site.xml
Mer information finns i Anpassa HDInsight-kluster med bootstrap.