Delen via


Apache Kafka-migratie naar Azure

Azure HDInsight
Azure Cosmos DB
Azure Data Lake Storage
Azure Stream Analytics

Apache Kafka is een zeer schaalbaar en fouttolerant gedistribueerd berichtensysteem waarmee een architectuur voor publiceren-abonneren wordt geïmplementeerd. Het wordt gebruikt als een opnamelaag in realtime streamingscenario's, zoals Internet of Things en realtime bewakingssystemen voor logboeken. Het wordt ook steeds vaker gebruikt als het onveranderbare gegevensarchief dat alleen toevoegt in Kappa-architecturen.

Apache, Apache® Spark®, Apache Hadoop®, Apache HBase, Apache Storm®, Apache Sqoop®, Apache Kafka® en het vlamlogo zijn geregistreerde handelsmerken of handelsmerken van de Apache Software Foundation in de Verenigde Staten en/of andere landen. Er wordt geen goedkeuring door De Apache Software Foundation geïmpliceerd door het gebruik van deze markeringen.

Migratiebenadering

Dit artikel bevat verschillende strategieën voor het migreren van Kafka naar Azure:

Hier volgt een beslissingsstroomdiagram om te bepalen welke strategie u wilt gebruiken.

Diagram met een beslissingsgrafiek voor het bepalen van een strategie voor het migreren van Kafka naar Azure.

Kafka migreren naar Azure IaaS

Zie Kafka op virtuele Ubuntu-machines voor één manier om Kafka te migreren naar Azure IaaS.

Kafka migreren naar Event Hubs voor Kafka

Event Hubs biedt een eindpunt dat compatibel is met de Producer- en Consumer-API's van Apache Kafka. De meeste Apache Kafka-clienttoepassingen kunnen dit eindpunt gebruiken, zodat u het kunt gebruiken als alternatief voor het uitvoeren van een Kafka-cluster in Azure. Het eindpunt ondersteunt clients die API-versies 1.0 en hoger gebruiken. Zie het overzicht van Event Hubs voor Apache Kafka voor meer informatie over deze functie.

Zie Migreren naar Event Hubs voor Apache Kafka-ecosystemen voor meer informatie over het migreren van uw Apache Kafka-toepassingen voor het gebruik van Event Hubs.

Functies van Kafka en Event Hubs

Overeenkomsten tussen Kafka en Event Hubs Verschillen in Kafka en Event Hubs
Partities gebruiken Platform as a service versus software
Partities zijn onafhankelijk Partitie
Een cursorconcept aan de clientzijde gebruiken Apis
Kan worden geschaald naar zeer hoge workloads Looptijd
Bijna identiek conceptueel Protocollen
Geen van beide maakt gebruik van het HTTP-protocol voor ontvangst Duurzaamheid
Veiligheid
Snelheidsbeperking
Verschillen tussen partitionering
Kafka Evenement Hubs
Het aantal partities beheert de schaal. Doorvoereenheden beheren schaal.
U moet partities verdelen over computers. Taakverdeling is automatisch.
U moet handmatig opnieuwharden met behulp van splitsen en samenvoegen. Opnieuw partitioneren is niet vereist.
Verschillen in duurzaamheid
Kafka Evenement Hubs
Vluchtig standaard Altijd duurzaam
Gerepliceerd nadat een bevestiging (ACK) is ontvangen Gerepliceerd voordat een ACK wordt verzonden
Afhankelijk van schijf en quorum Geleverd door opslag
Beveiligingsverschillen
Kafka Evenement Hubs
Secure Sockets Layer (SSL) en Simple Authentication and Security Layer (SASL) Shared Access Signature (SAS) en SASL of PLAIN RFC 4618
Bestandsachtige toegangsbeheerlijsten Beleid
Optionele transportversleuteling Verplichte Transport Layer Security (TLS)
Op basis van gebruiker Op token gebaseerd (onbeperkt)
Andere verschillen
Kafka Evenement Hubs
Wordt niet beperkt Ondersteunt beperking
Maakt gebruik van een eigen protocol Maakt gebruik van het AMQP 1.0-protocol
Maakt geen gebruik van HTTP voor verzenden Maakt gebruik van HTTP-verzenden en batch-verzenden

Kafka migreren in HDInsight

U kunt Kafka migreren naar Kafka in HDInsight. Zie Wat is Apache Kafka in HDInsight? voor meer informatie.

AKS gebruiken met Kafka in HDInsight

Zie AKS gebruiken met Apache Kafka in HDInsight voor meer informatie.

Kafka op AKS gebruiken met de Strimzi-operator

Zie Een Kafka-cluster implementeren op AKS met behulp van Strimzi voor meer informatie.

Kafka-gegevensmigratie

U kunt het hulpprogramma MirrorMaker van Kafka gebruiken om onderwerpen van het ene cluster naar het andere te repliceren. Met deze techniek kunt u gegevens migreren nadat een Kafka-cluster is ingericht. Zie MirrorMaker gebruiken om Apache Kafka-onderwerpen te repliceren met Kafka in HDInsight voor meer informatie.

De volgende migratiebenadering maakt gebruik van spiegeling:

  1. Verplaats eerst producenten. Wanneer u de producenten migreert, voorkomt u productie van nieuwe berichten in de bron-Kafka.

  2. Nadat de bron-Kafka alle resterende berichten heeft verbruikt, kunt u de consumenten migreren.

De implementatie omvat de volgende stappen:

  1. Wijzig het Kafka-verbindingsadres van de producerclient zodat deze verwijst naar het nieuwe Kafka-exemplaar.

  2. Start de producer business services opnieuw en verzend nieuwe berichten naar het nieuwe Kafka-exemplaar.

  3. Wacht tot de gegevens in de bron-Kafka zijn verbruikt.

  4. Wijzig het Kafka-verbindingsadres van de consumentenclient zodat deze verwijst naar het nieuwe Kafka-exemplaar.

  5. Start de zakelijke services voor consumenten opnieuw op om berichten van het nieuwe Kafka-exemplaar te gebruiken.

  6. Controleer of consumenten gegevens kunnen ophalen uit het nieuwe Kafka-exemplaar.

Het Kafka-cluster bewaken

U kunt Azure Monitor-logboeken gebruiken om logboeken te analyseren die door Apache Kafka in HDInsight worden gegenereerd. Zie Logboeken voor Apache Kafka in HDInsight analyseren voor meer informatie.

Apache Kafka Streams-API

De Kafka Streams-API maakt het mogelijk om gegevens in bijna realtime te verwerken en gegevens samen te voegen en samen te voegen. Zie Introductie van Kafka Streams: Stream Processing Made Simple - Confluent voor meer informatie.

Het partnerschap van Microsoft en Confluent

Confluent biedt een cloudeigen service voor Apache Kafka. Microsoft en Confluent hebben een strategische alliantie. Zie de volgende bronnen voor meer informatie:

Bijdragers

Microsoft onderhoudt dit artikel. De volgende inzenders hebben dit artikel geschreven.

Hoofdauteurs:

Andere Inzenders:

Als u niet-openbare LinkedIn-profielen wilt zien, meldt u zich aan bij LinkedIn.

Volgende stappen

Introducties van Azure-producten

Azure-productreferentie

Overige