Läs på engelska

Dela via


Hadoop-migrering till Azure

Apache Hadoop tillhandahåller ett distribuerat filsystem och ett ramverk för att använda MapReduce-tekniker för att analysera och transformera mycket stora datamängder. En viktig egenskap hos Hadoop är partitionering av data och beräkning över många (tusentals) värdar. Beräkningar görs parallellt nära data. Ett Hadoop-kluster skalar beräkningskapacitet, lagringskapacitet och I/O-bandbredd helt enkelt genom att lägga till maskinvara för råvaror.

Den här artikeln är en översikt över migrering av Hadoop till Azure. De andra artiklarna i det här avsnittet innehåller migreringsvägledning för specifika Hadoop-komponenter. Dessa är:

Hadoop tillhandahåller ett omfattande ekosystem med tjänster och ramverk. De här artiklarna beskriver inte Hadoop-komponenterna och Azure-implementeringarna i detalj. I stället ger de vägledning och överväganden på hög nivå för att fungera som utgångspunkt för att migrera dina lokala och molnbaserade Hadoop-program till Azure.

Apache, Apache Spark®, Apache Hadoop®, Apache HBase, Apache Hive, Apache Ranger®, Apache Sentry®, Apache ZooKeeper®, Apache Storm®, Apache Sqoop®, Apache Flink®, Apache Kafka® och flamlogotypen är antingen registrerade varumärken eller varumärken som tillhör Apache Software Foundation i USA och/eller andra länder.® Inget godkännande från Apache Software Foundation underförstås av användningen av dessa märken.

Hadoop-komponenter

De viktigaste komponenterna i ett Hadoop-system visas i följande tabell. För varje komponent finns en kort beskrivning och migreringsinformation som:

  • Länkar till beslutsflödesscheman för beslut om migreringsstrategier
  • En lista över möjliga Azure-måltjänster
Komponent beskrivning Beslutsflödesscheman Riktade Azure-tjänster
Apache HDFS Distribuerat filsystem Planera datamigreringen, förkontrollera före datamigrering Azure Data Lake Storage
Apache HBase Kolumnorienterad tabelltjänst Välja landningsmål för Apache HBase, välja lagring för Apache HBase i Azure HBase på en virtuell dator (VM), HBase i Azure HDInsight, Azure Cosmos DB
Apache Spark Ramverk för databehandling Välja landningsmål för Apache Spark i Azure Spark i HDInsight, Azure Synapse Analytics, Azure Databricks
Apache Hive Infrastruktur för informationslager Välja landningsmål för Hive, Välja måldatabas för Hive-metadata Hive på en virtuell dator, Hive i HDInsight, Azure Synapse Analytics
Apache Ranger Ramverk för övervakning och hantering av datasäkerhet Enterprise Security Package för HDInsight, Microsoft Entra ID, Ranger på en virtuell dator
Apache Sentry Ramverk för övervakning och hantering av datasäkerhet Välja landningsmål för Apache Sentry i Azure Sentry och Ranger på en virtuell dator, Enterprise Security Package för HDInsight, Microsoft Entra ID
Apache MapReduce Ramverk för distribuerad beräkning MapReduce, Spark
Apache Zookeeper Distribuerad samordningstjänst ZooKeeper på en virtuell dator, inbyggd lösning i PaaS (Plattform som en tjänst)
Apache YARN Resource Manager för Hadoop-ekosystemet YARN på en virtuell dator, inbyggd lösning i PaaS
Apache Sqoop Kommandoradsgränssnittsverktyg för överföring av data mellan Apache Hadoop-kluster och relationsdatabaser Välja landningsmål för Apache Sqoop i Azure Sqoop på en virtuell dator, Sqoop i HDInsight, Azure Data Factory
Apache Kafka Mycket skalbart feltolerant distribuerat meddelandesystem Välja landningsmål för Apache Kafka i Azure Kafka på en virtuell dator, Event Hubs för Kafka, Kafka på HDInsight
Apache Atlas Ramverk med öppen källkod för datastyrning och metadatahantering Azure Purview

Migreringsmetoder

Följande diagram visar tre metoder för att migrera Hadoop-program:

Diagram som visar tre sätt att migrera Hadoop-program.

Ladda ned en Visio-fil med den här arkitekturen.

Metoderna är:

Modernisera med hjälp av Azure Synapse Analytics och Databricks

Följande diagram visar den här metoden:

Diagram över en arkitektur för att modernisera med hjälp av Azure Synapse Analytics och Databricks.

Ladda ned en Visio-fil med den här arkitekturen.

Lyfta och flytta till HDInsight

Följande diagram visar den här metoden:

Diagram över en arkitektur för att modernisera genom att göra en hiss och flytta till HDInsight.

Ladda ned en Visio-fil med den här arkitekturen.

Mer information finns i Migrera lokala Apache Hadoop-kluster till Azure HDInsight.

Lift and shift to Azure infrastructure as a service (IaaS)

Följande mönster visar en synpunkt på hur du distribuerar OSS på Azure IaaS med en nära integrering tillbaka till lokala system som Active Directory, Domänkontrollant och DNS. Distributionen följer vägledningen för landningszoner i företagsskala från Microsoft. Hanteringsfunktioner som övervakning, säkerhet, styrning och nätverk finns i en hanteringsprenumeration. Arbetsbelastningarna, alla IaaS-baserade, finns i en separat prenumeration. Mer information om landningszoner i företagsskala finns i Vad är en Azure-landningszon?.

Diagram över arkitektur för att lyfta och flytta till Azure IaaS.

Ladda ned en Visio-fil med den här arkitekturen.

  1. Lokal Active Directory synkroniseras med Microsoft Entra-ID med hjälp av Microsoft Entra Connect lokalt.
  2. Azure ExpressRoute ger säker och privat nätverksanslutning mellan lokalt och Azure.
  3. Hanteringsprenumerationen (eller hubben) tillhandahåller nätverks- och hanteringsfunktioner för distributionen. Det här mönstret är i linje med vägledningen för landningszoner i företagsskala från Microsoft.
  4. Tjänsterna som finns i hubbprenumerationen tillhandahåller nätverksanslutnings- och hanteringsfunktioner.
    • NTP (finns på en virtuell Azure-dator) krävs för att hålla klockorna synkroniserade över alla virtuella datorer. När du kör flera program, till exempel HBase och ZooKeeper, bör du köra en NTP-tjänst (Network Time Protocol) eller en annan mekanism för tidssynkronisering i klustret. Alla noder bör använda samma tjänst för tidssynkronisering. Anvisningar om hur du konfigurerar NTP i Linux finns i 14.6. Grundläggande NTP-konfiguration.
    • Azure Network Watcher innehåller verktyg för att övervaka, diagnostisera och hantera resurser i ett virtuellt Azure-nätverk. Network Watcher är utformat för att övervaka och reparera nätverkshälsan för IaaS-produkter, inklusive virtuella datorer, virtuella nätverk, programgatewayer och lastbalanserare.
    • Azure Advisor analyserar din resurskonfiguration och användningstelemetri och rekommenderar sedan lösningar för att förbättra kostnadseffektiviteten, prestandan, tillförlitligheten och säkerheten för dina Azure-resurser.
    • Azure Monitor tillhandahåller en omfattande lösning för att samla in, analysera och agera på telemetri från dina molnmiljöer och lokala miljöer. Det hjälper dig att förstå hur dina program fungerar så att du proaktivt kan identifiera problem som påverkar programmen och de resurser de är beroende av.
    • Log Analytics-arbetsytan är en unik miljö för Azure Monitor-loggdata. Varje arbetsyta har sitt eget datalager och sin egen konfiguration. Datakällor och lösningar konfigureras för att lagra sina data på en viss arbetsyta. Du behöver en Log Analytics-arbetsyta om du tänker samla in data från följande källor:
      • Azure-resurser i din prenumeration
      • Lokala datorer som övervakas av System Center Operations Manager
      • Enhetssamlingar från System Center Configuration Manager
      • Diagnostik eller loggdata från Azure Storage
    • Azure DevOps Lokalt installerad agent som finns på Azure Virtual Machine Scale Sets ger dig flexibilitet över storleken och avbildningen av datorer där agenter körs. Du anger en VM-skalningsuppsättning, ett antal agenter som ska behållas i vänteläge, ett maximalt antal virtuella datorer i skalningsuppsättningen. Azure Pipelines hanterar skalningen av dina agenter åt dig.
  5. Microsoft Entra ID-klientorganisationen synkroniseras med lokalni Active Directory via Microsoft Entra Connect-synkroniseringstjänster. Mer information finns i Microsoft Entra Connect Sync: Förstå och anpassa synkronisering.
  6. Microsoft Entra Domain Services (Microsoft Entra Domain Services) tillhandahåller LDAP- och Kerberos-funktioner i Azure. När du först distribuerar Microsoft Entra Domain Services konfigureras och startas en automatisk enkelriktad synkronisering för att replikera objekten från Microsoft Entra-ID. Den här envägssynkroniseringen fortsätter att köras i bakgrunden så att den hanterade Microsoft Entra Domain Services-domänen hålls uppdaterad med eventuella ändringar från Microsoft Entra ID. Det sker inte någon synkronisering från Microsoft Entra Domain Services tillbaka till Microsoft Entra ID.
  7. Tjänster som Azure DNS, Microsoft Defender för molnet och Azure Key Vault finns i hanteringsprenumerationen och tillhandahåller lösning av tjänst-/IP-adresser, enhetlig infrastruktursäkerhetshantering respektive funktioner för certifikat- respektive nyckelhantering.
  8. Peering för virtuella nätverk ger anslutning mellan virtuella nätverk som distribuerats i två prenumerationer: hantering (hubb) och arbetsbelastning (eker).
  9. I linje med landningszoner i företagsskala används arbetsbelastningsprenumerationer som värd för programarbetsbelastningar.
  10. Azure Data Lake Storage är en uppsättning funktioner som bygger på Azure Blob Storage för stordataanalys. I samband med stordataarbetsbelastningar kan Data Lake Storage användas som sekundär lagring för Hadoop. Data som skrivs till Data Lake Storage kan användas av andra Azure-tjänster som ligger utanför Hadoop-ramverket.
  11. Stordataarbetsbelastningar finns på en uppsättning oberoende virtuella Azure-datorer. Mer information finns i vägledningen för HDFS, HBase, Hive, Ranger och Spark i Azure IaaS.
  12. Azure DevOps är ett SaaS-erbjudande (software as a service) som tillhandahåller en integrerad uppsättning tjänster och verktyg för att hantera dina programvaruprojekt, från planering och utveckling till testning och distribution.

Referensarkitektur för sluttillstånd

En av utmaningarna med att migrera arbetsbelastningar från lokala Hadoop till Azure är att distribuera för att uppnå önskad sluttillståndsarkitektur och -program. Projektet som beskrivs i Hadoop Migration på Azure PaaS är avsett att minska den betydande ansträngning som vanligtvis krävs för att distribuera PaaS-tjänsterna och programmet.

I det projektet tittar vi på sluttillståndsarkitekturen för stordataarbetsbelastningar i Azure och listar de komponenter som används i en Bicep-malldistribution. Med Bicep distribuerar vi bara de moduler som vi behöver för att distribuera arkitekturen. Vi tar upp förutsättningarna för mallen och de olika metoderna för att distribuera resurserna i Azure, till exempel One-click, Azure CLI, GitHub Actions och Azure DevOps Pipeline.

Deltagare

Den här artikeln underhålls av Microsoft. Det har ursprungligen skrivits av följande medarbetare.

Huvudsakliga författare:

Övriga medarbetare:

Om du vill se icke-offentliga LinkedIn-profiler loggar du in på LinkedIn.

Nästa steg

Introduktion till Azure-produkter

Produktreferens för Azure

Övrigt