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, Apache HBase eller Apache Storm 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 för 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 bör du skapa ett virtuellt nätverk, och om du använder ett Spark-kluster bör du också använda Hive Warehouse Connector. Mer information finns i Planera ett virtuellt nätverk för Azure HDInsight och Integrera Apache Spark och Apache Hive med Hive Warehouse Connector.
Metoder för klusterinstallation
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 går igenom konfigurationen i Azure Portal, där du kan skapa ett HDInsight-kluster.
Grundläggande inställningar
Projektinformation
Azure Resource Manager hjälper dig att arbeta med resurserna i ditt program som en grupp, som kallas 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
- Maxlängd: 59
- Reserverade namn: appar
- Klusternamngivningsomfånget gäller för alla Azure-prenumerationer. Klusternamnet måste därför vara unikt globalt.
- 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 standardlagringsplatsen. Om du vill se 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 enskild arbetsbelastning eller teknik. Det finns ingen metod som stöds för att skapa ett kluster som kombinerar flera typer, till exempel Storm och HBase i ett kluster. Om din lösning kräver tekniker som är utspridda över flera TYPER av HDInsight-kluster 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 | Minnescachelagring 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 | Minneshantering, interaktiva frågor, bearbetning av mikrobatchströmmar |
| Storm | Händelsebearbetning i realtid |
Version
Välj version av HDInsight för det här klustret. Mer information finns i HDInsight-versioner som stöds.
Autentiseringsuppgifter för kluster
Med HDInsight-kluster kan du konfigurera två användarkonton när klustret skapas:
- Användarnamn för klusterinloggning: Standardnamnet är admin. Den använder den grundläggande konfigurationen på Azure Portal. Ibland kallas den för "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 Använda SSH med HDInsight.
HTTP-användarnamnet har följande begränsningar:
- Tillåtna specialtecken:
_och@ - Tecken tillåts inte: #;."', / :'!*?$() {} []<>|&--=+%~^space
- Maxlängd: 20
SSH-användarnamnet har följande begränsningar:
- Tillåtna specialtecken:
_och@ - Tecken tillåts inte: #;."', / :'!*?$() {} []<>|&--=+%~^space
- Maxlängd: 64
- Reserverade namn: hadoop, users, oozie, hive, mapred, ambari-qa, zookeeper, tez, hdfs, sqoop, yarn, hcat, ams, hbase, storm, 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
Storage
Ä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 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
- Azure Storage Generell användning v2
- Azure Storage Generell användning 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.
Anteckning
Funktionen som kräver säker överföring framtvingar alla begäranden till ditt konto via en säker anslutning. Endast HDInsight-kluster av version 3.6 eller senare har stöd för den här funktionen. Mer information finns i Skapa Apache Hadoop-kluster med lagringskonton för säker överföring i Azure HDInsight.
Viktigt
Att aktivera säker lagringsöverföring när du har skapat ett kluster kan resultera i 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.
Anteckning
Azure HDInsight överför, flyttar eller kopierar inte automatiskt dina data som lagras i Azure Storage 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 kompatibla 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 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 har skapats 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 ger en Azure SQL Database med en basic-nivå 5 DTU-gräns (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 för Ambari
Ambari används för att övervaka HDInsight-kluster, göra konfigurationsändringar och lagra information om klusterhantering samt 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 Azure SQL Database när du skapar HDInsight-klustret.
Säkerhet och 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 Azure Active Directory. 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än-ansluten HDInsight-kluster finns i Skapa domän-ansluten HDInsight sandbox-miljö.
TLS
Mer information finns i Transport Layer Security
Virtuellt nätverk
Om din lösning kräver tekniker som är utspridda över flera typer av HDInsight-kluster 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 med kund hanterad 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 och 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 av allokeras eller stoppas.
Nodkonfiguration
Varje klustertyp har ett eget antal noder, terminologi för noder och standardstorlek för virtuella datorer. I följande tabell är antalet noder för varje nodtyp inom parentes.
| Typ | Noder | Diagram |
|---|---|---|
| Hadoop | Huvudnod (2), arbetsnod (1+) |
|
| HBase | Huvudserver (2), regionserver (1+), master/ZooKeeper-nod (3) |
|
| Storm | Nimbus-nod (2), övervakarserver (1+), ZooKeeper-nod (3) |
|
| Spark | Huvudnod (2), arbetsnod (1+), ZooKeeper-nod (3) (kostnadsfritt för storlek på virtuell A1 ZooKeeper-dator) |
|
Mer information finns i Standardnodkonfiguration och storlekar på virtuella datorer för kluster i "Vad är Hadoop-komponenter och versioner i HDInsight?"
Kostnaden för HDInsight-kluster bestäms av antalet noder och de virtuella datorernas storlekar för noderna.
Olika klustertyper har olika nodtyper, antal noder och nodstorlekar:
- Standardtyp för Hadoop-kluster:
- Två huvudnoder
- Fyra arbetsnoder
- Standard för Storm-klustertyp:
- Två Nimbus-noder
- Tre ZooKeeper-noder
- Fyra övervakarnoder
Om du bara provar HDInsight rekommenderar vi att du använder en arbetsnod. Mer information om HDInsight-priser finns i HDInsight-priser.
Anteckning
Storleksgränsen för klustret varierar mellan Olika Azure-prenumerationer. Kontakta Azure-faktureringssupporten för att öka gränsen.
När du använder Azure Portal för att konfigurera klustret är nodstorleken tillgänglig via fliken Konfiguration + prissättning. I portalen kan du också se kostnaden för 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
- Virtuella datorer i D11-14-serien: Minnesoptimerade virtuella Linux-datorer
Om du vill ta reda på vilket värde du bör använda för att ange en VM-storlek när du skapar ett kluster med hjälp av olika SDK:er eller när du använder Azure PowerShell kan du gå till VM-storlekar som ska användas för HDInsight-kluster. Från den här länkade artikeln använder du värdet i kolumnen Storlek i tabellerna.
Viktigt
Om du behöver fler än 32 arbetarnoder 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.
Lägga till ett program
Ett HDInsight-program är ett program som användarna kan installera på ett Linux-baserat HDInsight-kluster. Du kan använda program från Microsoft, tredje part eller som du utvecklar själv. Mer information finns i Installera Apache Hadoop-program från tredje part på Azure HDInsight.
De flesta HDInsight-programmen är installerade på en tom kantnod. En tom kantnod är en virtuell Linux-dator med samma klientverktyg installerade och konfigurerade som på 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 under skapandet. Sådana skript anropas via skriptåtgärd , vilket är ett konfigurationsalternativ som kan användas från Azure Portal, HDInsight Windows PowerShell-cmdlets eller HDInsight .NET SDK. Mer information finns i Anpassa HDInsight-kluster med skriptåtgärd.
Vissa inbyggda Java-komponenter, till exempel Apache Mahout och Sammanhängande, kan köras i klustret som JAR-filer (Java Archive). Dessa JAR-filer kan distribueras till Azure Storage och skickas till HDInsight-kluster med mekanismer för att skicka Hadoop-jobb. Mer information finns i Skicka Apache Hadoop-jobb programmatiskt.
Anteckning
Om du har problem med att distribuera JAR-filer till HDInsight-kluster eller anropa JAR-filer i HDInsight-kluster kan du kontakta Microsoft Support.
Sammanhängande stöds inte av HDInsight och är inte berättigat till Microsoft Support. Listor över komponenter som stöds finns i Vad är nytt i de klusterversioner 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
- storm-site.xml
- tez-site.xml
- webhcat-site.xml
- yarn-site.xml
Mer information finns i Anpassa HDInsight-kluster med Bootstrap.