Eseguire la migrazione di cluster Apache Hadoop locali ad Azure HDInsight - Motivazione e vantaggi

Questo articolo è il primo di una serie sulle procedure consigliate per la migrazione di distribuzioni locali dell'ecosistema Apache Hadoop ad Azure HDInsight. Questa serie di articoli è destinata ai responsabili della progettazione, distribuzione e migrazione di soluzioni Apache Hadoop ad Azure HDInsight. I ruoli che possono trarre vantaggio da questi articoli includono gli architetti cloud, gli amministratori di Hadoop e i tecnici di DevOps. Anche sviluppatori di software, data engineer e data scientist possono trarre vantaggio dalla spiegazione dei vari tipi di cluster operativi nel cloud.

Perché eseguire la migrazione ad Azure HDInsight

Azure HDInsight è una distribuzione cloud dei componenti di Hadoop. Azure HDInsight rende semplice, rapida ed economicamente conveniente l'elaborazione di grandi quantità di dati. HDInsight include i framework open source più diffusi, ad esempio:

  • Apache Hadoop
  • Apache Spark
  • Apache Hive con LLAP
  • Apache Kafka
  • Apache HBase

Vantaggi di Azure HDInsight rispetto a Hadoop in locale

  • Basso costo - È possibile ridurre i costi creando cluster su richiesta e pagando solo in base al consumo. La separazione delle risorse di calcolo e archiviazione garantisce flessibilità, mantenendo il volume di dati indipendente dalle dimensioni del cluster.

  • Creazione automatica del cluster - La creazione automatica del cluster richiede passaggi minimi di configurazione e installazione. È possibile usare l'automazione per i cluster su richiesta.

  • Hardware e configurazione gestiti - Non è necessario preoccuparsi dell'hardware fisico o dell'infrastruttura con un cluster HDInsight. È sufficiente specificare la configurazione del cluster, che viene configurato automaticamente in Azure.

  • Scalabilità semplice: HDInsight consente di aumentare o ridurre i carichi di lavoro. Azure ripete la distribuzione dei dati e il bilanciamento del carico di lavoro senza interrompere i processi di elaborazione dei dati.

  • Disponibilità globale - HDInsight è disponibile in più aree di qualsiasi altra offerta di analisi di Big Data. Azure HDInsight è anche disponibile in Azure per enti pubblici, Cina e Germania per soddisfare le esigenze aziendali nelle principali aree sovrane.

  • Sicuro e conforme: HDInsight consente di proteggere gli asset di dati aziendali con Azure Rete virtuale, crittografia e integrazione con Microsoft Entra ID. HDInsight soddisfa anche i più diffusi standard di conformità del settore e governativi.

  • Gestione semplificata delle versioni : Azure HDInsight gestisce la versione dei componenti eco-system di Hadoop e li mantiene aggiornati. Gli aggiornamenti software sono in genere un processo complesso per le distribuzioni locali.

  • Cluster ridotti ottimizzati per specifici carichi di lavoro con minori dipendenze tra i componenti - Una tipica configurazione Hadoop locale usa un singolo cluster per molte finalità. Con Azure HDInsight è possibile creare cluster specifici per carico di lavoro. La creazione di cluster per carichi di lavoro specifici rimuove gli oneri di gestione di un singolo cluster con complessità crescenti.

  • Produttività - È possibile usare vari strumenti per Hadoop e Spark nell'ambiente di sviluppo preferito.

  • Estendibilità con strumenti personalizzati o applicazioni di terze parti: i cluster HDInsight possono essere estesi con componenti installati e possono anche essere integrati con le altre soluzioni Big Data usando distribuzioni con un clic dal marketplace di Azure.

  • Facile gestione, amministrazione e monitoraggio : Azure HDInsight si integra con i log di Monitoraggio di Azure per offrire una singola interfaccia con cui è possibile monitorare tutti i cluster.

  • Integrazione con altri servizi di Azure - HDInsight può essere integrato facilmente con altri popolari servizi di Azure, tra cui:

    • Azure Data Factory
    • Archiviazione BLOB di Azure
    • Azure Data Lake Storage Gen2
    • Azure Cosmos DB
    • database SQL di Azure
    • Azure Analysis Services
  • Riparazione automatica di processi e i componenti - HDInsight controlla costantemente i componenti open source e dell'infrastruttura mediante la propria infrastruttura di monitoraggio. Ripristina automaticamente anche errori critici, ad esempio l'assenza di disponibilità di nodi e componenti open source. Vengono attivati avvisi in Ambari in caso di errore in qualsiasi componente OSS.

Per altre informazioni, vedere l'articolo Informazioni su Azure HDInsight e sullo stack di tecnologie Apache Hadoop.

Processo di pianificazione della migrazione

I passaggi seguenti sono consigliati per la pianificazione della migrazione dei cluster Hadoop locali ad Azure HDInsight:

  1. Comprendere la distribuzione locale corrente e le topologie.
  2. Comprendere l'ambito del progetto corrente, le sequenze temporali e le competenze del team.
  3. Comprendere i requisiti di Azure.
  4. Creare un piano dettagliato basato su procedure consigliate.

Raccolta di dettagli per predisporre una migrazione

Questa sezione offre questionari modello per semplificare la raccolta di informazioni importanti su:

  • Distribuzione locale
  • Dettagli di progetto
  • Requisiti di Azure

Questionario sulla distribuzione locale

Domanda Esempio Risposta
Argomento: ambiente
Versione di distribuzione cluster HDP 2.6.5, CDH 5.7
Componenti dell'ecosistema di Big Data HDFS, Yarn, Hive, LLAP, Impala, Kudu, HBase, Spark, MapReduce, Kafka, Zookeeper, Solr, Sqoop, Oozie, Ranger, Atlas, Falcon, Zeppelin, R
Tipi di cluster Hadoop, Spark, Confluent Kafka, Solr
Numero di cluster 4
Numero di nodi master 2
Numero di nodi di lavoro 100
Numero di nodi perimetrali 5
Spazio totale su disco 100 TB
Configurazione del nodo master m/y, cpu, disco, ecc.
Configurazione dei nodi dati m/y, cpu, disco, ecc.
Configurazione dei nodi perimetrali m/y, cpu, disco, ecc.
Crittografia Hadoop Distributed File System?
Disponibilità elevata Disponibilità elevata Hadoop Distributed File System, disponibilità elevata metastore
Ripristino di emergenza/backup Cluster di backup?
Sistemi che dipendono dal cluster SQL Server, Teradata, Power BI, MongoDB
Integrazioni di terze parti Tableau, GridGain, Qubole, Informatica, Splunk
Argomento: sicurezza
Protezione perimetrale Firewall
Autenticazione e autorizzazione del cluster Active Directory, Ambari, Cloudera Manager, nessuna autenticazione
Controllo di accesso Hadoop Distributed File System Manuale, utenti SSH
Autenticazione e autorizzazione degli hive Sentry, LDAP, AD con Kerberos, Ranger
Controllo Ambari, Cloudera Navigator, Ranger
Monitoraggio Graphite, collectd, statsd, Telegraf, InfluxDB
Creazione di avvisi Kapacitor, Prometheus, Datadog
Durata di conservazione dati Tre anni, cinque anni
Amministratori del cluster Un amministratore, più amministratori

Questionario sui dettagli progetto

Domanda Esempio Risposta
Argomento: carichi di lavoro e frequenza
Processi MapReduce 10 processi- due volte al giorno
Processi Hive 100 processi- ogni ora
Processi batch Spark 50 processi, ogni 15 minuti
Processi Spark Streaming 5 processi ogni 3 minuti
Processi Structured Streaming 5 processi- ogni minuto
Linguaggi di programmazione Python, Scala, Java
Esecuzione script Shell, Python
Argomento: dati
Origini dati File flat, JSON, Kafka, RDBMS
Orchestrazione dei dati Flussi di lavoro Oozie, Airflow
Ricerche in memoria Apache Ignite, Redis
Destinazioni dei dati Hadoop Distributed File System, RDBMS, Kafka, MPP
Argomento: metadati
Tipo di database Hive MySQL, Postgres
Numero di metastore Hive 2
Numero di tabelle Hive 100
Numero di criteri ranger 20
Numero di flussi di lavoro di Oozie 100
Argomento: scalabilità
Volume di dati, inclusa la replica 100 TB
Volume di inserimento giornaliero 50 GB
Tasso di crescita dei dati 10% all'anno
Tasso di crescita dei nodi del cluster 5% all'anno
Argomento: utilizzo del cluster
% media CPU usata 60%
% media memoria usata 75%
Spazio su disco usato 75%
% media rete usata 25%
Argomento: personale
Numero di Amministrazione istratori 2
Numero di sviluppatori 10
Numero di utenti finali 100
Competenze Hadoop, Spark
Numero di risorse disponibili per le attività di migrazione 2
Argomento: limitazioni
Limitazioni correnti Latenza elevata
Sfide correnti Problema di concorrenza

Questionario sui requisiti di Azure

Domanda Esempio Risposta
Argomento: infrastruttura
Area preferita Stati Uniti orientali
Rete virtuale preferita?
Disponibilità elevata/ripristino di emergenza necessari?
Integrazione con altri servizi cloud? ADF, Azure Cosmos DB
Argomento: spostamento dei dati
Preferenza di caricamento iniziale DistCp, Data Box, ADF, WANDisco
Delta di trasferimento dati DistCp, AzCopy
Trasferimento incrementale costante dei dati DistCp, Sqoop
Argomento: monitoraggio e invio di avvisi
Usare Monitoraggio e avvisi di Azure e integrare il monitoraggio di terze parti Uso di Monitoraggio di Azure e invio di avvisi
Argomento: preferenze relative alla sicurezza
Pipeline di dati privata e protetta?
Cluster aggiunto a un dominio (ESP)?
Sincronizzazione da AD locale al cloud?
Numero di utenti di Active Directory da sincronizzare? 100
OK sincronizzare le password nel cloud?
Utenti solo cloud?
MFA necessaria? No
Requisiti di autorizzazione dei dati?
Controllo degli accessi in base al ruolo?
Controllo necessario?
Crittografia dei dati inattivi?
Crittografia dei dati in movimento?
Argomento: preferenze di riprogettazione
Tipi di cluster singoli o specifici Tipi di cluster specifici
Archiviazione remota o con percorso condiviso? Archiviazione remota
Dimensioni del cluster ridotte man mano che i dati vengono archiviati in remoto? Dimensioni del cluster ridotte
Uso di più cluster ridotti anziché di un unico cluster di grandi dimensioni? Uso di più cluster ridotti
Uso di un metastore remoto?
Condivisione di metastore tra diversi cluster?
Decostruzione dei carichi di lavoro? Sostituzione di processi Hive con processi Spark
Uso del file di definizione dell'applicazione (ADF) per l'orchestrazione dei dati? No

Passaggi successivi

Leggere l'articolo successivo di questa serie: