Esegui la migrazione di un cluster Apache Kafka locale su Amazon MSK utilizzando MirrorMaker - Prontuario AWS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esegui la migrazione di un cluster Apache Kafka locale su Amazon MSK utilizzando MirrorMaker

Creato da Han Zhang (AWS) e Tanner Pratt (AWS)

Ambiente: PoC o pilota

Fonte: cluster Apache Kafka locale o autogestito

Target: Amazon Managed Streaming per Apache Kafka (Amazon MSK)

Tipo R: Replatform

Carico di lavoro: open source; tutti gli altri carichi di lavoro

Tecnologie: analisi; Big data; migrazione

Servizi AWS: Amazon MSK

Riepilogo

Questo modello fornisce indicazioni per la migrazione di un cluster Apache Kafka locale, autogestito o ospitato verso Amazon Managed Streaming for Apache Kafka (Amazon MSK). Puoi utilizzare questo modello anche per migrare da un cluster Amazon MSK a un altro.

Apache Kafka include la MirrorMaker funzionalità che replica i dati tra due cluster Kafka. MirrorMaker è costituito da un insieme di consumatori, che fanno parte di un gruppo di consumatori. I consumatori leggono i dati dagli argomenti del cluster di origine e poi li trasmettono ai produttori, che li scrivono nel cluster di destinazione.

La documentazione di Amazon MSK contiene una panoramica di alto livello del processo di utilizzo della MirrorMaker versione 1.0 per migrare i cluster Kafka locali verso Amazon MSK. Questo modello integra queste informazioni offrendo istruzioni complete per l'utilizzo della versione 2.0. step-by-step MirrorMaker

Prerequisiti e limitazioni

Prerequisiti

  • Un account AWS attivo

  • Un cluster di sorgenti Kafka che è uno dei seguenti:

    • In un data center locale

    • Gestito automaticamente nel cloud

    • Ospitato tramite un partner

Limitazioni

  • Per utilizzare la MirrorMaker versione 2.0, il cluster di origine deve utilizzare Apache Kafka versione 2.4.0 o successiva. Per le versioni precedenti, consulta le istruzioni nella documentazione di Amazon MSK per utilizzare la MirrorMaker versione 1.0.

Versioni del prodotto

  • MirrorMaker versione 2.0

  • Apache Kafka versione 2.4.0 o successiva. Per ulteriori informazioni sulle versioni di Apache Kafka supportate da Amazon MSK, consulta Versioni supportate di Apache Kafka.

Architettura

Stack tecnologico di origine

  • Cluster Kafka locale o autogestito

Stack tecnologico Target

  • Cluster Amazon MSK

Architettura di destinazione

MirrorMaker legge i dati sul cluster di origine e li replica nel cluster Amazon MSK di destinazione

Il diagramma mostra il seguente processo:

  1. MirrorMaker legge i dati degli argomenti e dei gruppi di consumatori nel cluster Kafka di origine.

  2. MirrorMaker replica i dati e le informazioni sui consumatori nel cluster Amazon MSK di destinazione.

Strumenti

Servizi AWS

Altri strumenti

  • Apache Kafka è una piattaforma di streaming di eventi open source. In questo modello, si utilizza la MirrorMakerfunzionalità di Kafka per eseguire la migrazione tra cluster.

Best practice

È possibile MirrorMaker eseguirlo nell'ambiente di origine o di destinazione, ma si consiglia di eseguirlo il più vicino possibile al cluster di destinazione. Per ulteriori informazioni, consulta Best Practice: Consume from Remote, Produce to Local nella documentazione di Apache Kafka.

Epiche

AttivitàDescrizioneCompetenze richieste

Crea un VPC.

  1. Crea un VPC nell'account AWS di destinazione. Per istruzioni, consulta Creare un VPC.

  2. Crea tre sottoreti private in diverse zone di disponibilità nel nuovo VPC. Per istruzioni, consulta Creare una sottorete. L'utilizzo di zone di disponibilità diverse offre disponibilità e tolleranza agli errori elevate.

    Nota: se utilizzi una connessione Internet pubblica per migrare il cluster Kafka, crea sottoreti pubbliche e abilita l'accesso pubblico al cluster Amazon MSK.

Amministratore di sistema AWS, DevOps ingegnere, amministratore cloud

Crea il cluster Amazon MSK.

Crea un cluster Amazon MSK. Per istruzioni, consulta Creazione di un cluster utilizzando la Console di gestione AWS o Creazione di un cluster utilizzando l'AWS CLI. Configura il cluster per utilizzare il VPC e le sottoreti che hai creato in precedenza.

Amministratore di sistema AWS, DevOps ingegnere, amministratore cloud
AttivitàDescrizioneCompetenze richieste

Installa MirrorMaker.

  1. Avvia un'istanza EC2.

  2. Connect alla tua istanza EC2.

  3. Sull'istanza EC2, scarica ed estrai l'ultima versione di Kafka. Per istruzioni, consulta Quick Start (documentazione di Kafka).

Nota: in questo schema, installi MirrorMaker 2.0 come MirrorMaker cluster dedicato su un'istanza Amazon EC2. Questa opzione è accettabile per gli ambienti di sviluppo ed è l'approccio utilizzato in questo modello. Per ulteriori informazioni sulle altre opzioni di distribuzione per la MirrorMaker versione 2.0, vedere la sezione Informazioni aggiuntive di questo modello.

Amministratore di sistema AWS, amministratore cloud, DevOps ingegnere

Specificare le informazioni sul cluster Kafka.

Nella bin cartella di installazione del client Kafka, create un file mm2.properties e configuratelo per il cluster Kafka di origine. Per istruzioni, consulta Esecuzione di un cluster dedicato MirrorMaker (documentazione di Kafka).

Amministratore di sistema AWS, amministratore cloud, DevOps ingegnere

Inizia MirrorMaker.

Immettere il seguente comando per avviare MirrorMaker e passare il file mm2.properties.

$ ./bin/connect-mirror-maker.sh mm2.properties
Amministratore di sistema AWS, amministratore cloud, DevOps ingegnere

Monitora i progressi.

Controlla lo stato di avanzamento controllando il ritardo tra l'ultimo offset di ogni argomento e l'offset corrente relativo all'argomento che sta consumando. MirrorMaker Per istruzioni, consulta Monitoring Geo-Replication nella documentazione di Kafka.

Amministratore di sistema AWS, amministratore cloud, DevOps ingegnere
AttivitàDescrizioneCompetenze richieste

Blocca le applicazioni destinate ai consumatori.

Arresta tutte le applicazioni consumer che consumano dati dal cluster di origine.

Sviluppatore di app

Avvia le applicazioni consumer.

Modifica la configurazione di bootstrap delle applicazioni in modo che punti al cluster di destinazione. Quindi inizia a consumare sul cluster di destinazione.

Sviluppatore di app

Ferma i produttori del cluster di origine.

Quando le applicazioni consumer vengono utilizzate correttamente sul cluster di destinazione, interrompete i produttori sul cluster di origine.

Sviluppatore di app

Avvia i produttori sul cluster di destinazione.

Modifica la configurazione dei server bootstrap del produttore e punta al cluster di destinazione. MirrorMaker Attendi il completamento del mirroring di tutti i dati dal cluster di origine prima di avviare i produttori.

Sviluppatore di app

Smettila MirrorMaker.

Dopo che i produttori si saranno trasferiti al cluster di destinazione, fermatevi MirrorMaker.

Amministratore di sistema AWS, amministratore cloud, DevOps ingegnere

Risorse correlate

Risorse AWS

Altre risorse

Informazioni aggiuntive

Questo modello esegue la MirrorMaker versione 2.0 come MirrorMaker cluster dedicato su Amazon EC2. Questa opzione è accettabile per gli ambienti di sviluppo. Sebbene non sia discusso in questo schema, è possibile eseguire la MirrorMaker versione 2.0 anche in un cluster Kafka Connect. Questa opzione di implementazione utilizza un framework all'interno dell'ecosistema Kafka che migliora la scalabilità e la manutenzione. Il connettore viene distribuito in un cluster Kafka Connect con la configurazione associata per eseguire l'applicazione. Il connettore può funzionare in modalità autonoma per lo sviluppo o il test o in modalità distribuita per la produzione. Per ulteriori informazioni, vedere Running MirrorMaker in a Connect cluster (documentazione di Apache Kafka). Per ulteriori informazioni su altre opzioni di distribuzione MirrorMaker 2.0, vedi Procedura dettagliata: Running MirrorMaker 2.0 (documentazione di Kafka).