Düzenle

Aracılığıyla paylaş


Azure'a Apache Kafka geçişi

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

Apache Kafka , bir yayımlama-abone olma mimarisi uygulayan yüksek oranda ölçeklenebilir ve hataya dayanıklı bir dağıtılmış mesajlaşma sistemidir. IoT ve gerçek zamanlı günlük izleme sistemleri gibi gerçek zamanlı akış senaryolarında alım katmanı olarak kullanılır. Ayrıca Kappa mimarilerinde sabit yalnızca ekli veri deposu olarak da giderek daha fazla kullanılmaktadır.

Apache, Apache Spark®, Apache Hadoop®, Apache HBase, Apache Storm®, Apache Sqoop®, Apache Kafka® ve alev logosu apache Software Foundation'ın Birleşik Devletler ve/veya diğer ülkelerdeki kayıtlı ticari markaları veya ticari markalarıdır.® Bu işaretlerin kullanılması Apache Software Foundation tarafından onaylanmamaktadır.

Geçiş yaklaşımı

Bu makalede Kafka'nın Azure'a geçirilmesine yönelik çeşitli stratejiler verilmiştir:

Hangisinin kullanılacağına karar vermek için bir karar akış çizelgesi aşağıdadır:

Diagram that shows a decision chart for determining a strategy for migrating Kafka to Azure.

Kafka'nın Azure hizmet olarak altyapısına (IaaS) geçirilmesi

Kafka'yı Azure IaaS'ye geçirmenin bir yolu için bkz . Ubuntu VM'lerinde Kafka.

Kafka'dan Kafka için Azure Event Hubs'a geçirme

Event Hubs, Apache Kafka üretici ve tüketici API'leriyle uyumlu bir uç nokta sağlar. Bu uç nokta çoğu Apache Kafka istemci uygulaması tarafından kullanılabildiğinden, Azure'da Kafka kümesi çalıştırmaya alternatiftir. Uç nokta, API'lerin 1.0 ve sonraki sürümlerini kullanan istemcileri destekler. Bu özellik hakkında daha fazla bilgi için bkz . Apache Kafka için Azure Event Hubs'a genel bakış.

Apache Kafka uygulamalarınızı Azure Event Hubs'ı kullanacak şekilde geçirmeyi öğrenmek için bkz . Apache Kafka Ekosistemleri için Azure Event Hubs'a geçiş.

Kafka ve Event Hubs özellik farklılıkları

Kafka ve Event Hubs nasıl benzer? Kafka ve Event Hubs'ın farkı nedir?
Her ikisi de bölümleri kullanır. Bu alanlarda farklılıklar vardır:
Bölümler bağımsızdır. • PaaS ve yazılım karşılaştırması
her ikisi de istemci tarafı imleç kavramı kullanır. •Bölümleme
Her ikisi de çok yüksek iş yüklerine ölçeklendirilebilir. •Apı 'leri
Kavramsal olarak neredeyse aynıdırlar. •Çalışma zamanı
Hiçbiri almak için HTTP protokolunu kullanmaz. •Protokol
•Dayanıklı -lık
•Güvenlik
•Azaltma
Bölümleme farklılıkları
Kafka Event Hubs
Ölçek, bölüm sayısı tarafından yönetilir. Ölçek, aktarım hızı birimleri tarafından yönetilir.
Makineler arasında bölümleri yük dengelemeniz gerekir. Yük dengeleme otomatiktir.
Bölme ve birleştirmeyi kullanarak el ile yeniden parçalamalısınız. Yeniden bölümleme gerekli değildir.
Dayanıklılık farklılıkları
Kafka Event Hubs
Varsayılan olarak geçici Her zaman dayanıklı
ACK'nin ardından çoğaltıldı ACK'nin öncesinde çoğaltıldı
Diske ve çekirdeklere bağlıdır Depolama tarafından sağlanır
Güvenlik farklılıkları
Kafka Event Hubs
SSL ve SASL SAS ve SASL/PLAIN RFC 4618
Dosya benzeri ACL'ler Poliçe
İsteğe bağlı aktarım şifrelemesi Zorunlu TLS
Kullanıcı tabanlı Belirteç tabanlı (sınırsız)
Diğer farklılıklar
Kafka Event Hubs
Kafka kısıtlama yapmaz. Event Hubs azaltmayı destekler.
Kafka özel bir protokol kullanır. Event Hubs, AMQP 1.0 protokollerini kullanır.
Kafka gönderme için HTTP kullanmaz. Event Hubs HTTP Gönderme ve Toplu Gönderme kullanır.

Azure HDInsight'ta Kafka'ya geçiş

Azure HDInsight'ta Kafka'ya geçirebilirsiniz. Daha fazla bilgi için bkz . Azure HDInsight'ta Apache Kafka nedir?.

HDInsight üzerinde Kafka ile AKS kullanma

Bkz. HDInsight üzerinde Apache Kafka ile Azure Kubernetes Service'i kullanma.

Kafka Veri Geçişi

Konuları bir kümeden diğerine çoğaltmak için Kafka'nın MirrorMaker aracını kullanabilirsiniz. Bu teknik, kafka kümesi sağlandıktan sonra verileri geçirmenize yardımcı olabilir. Daha fazla bilgi için bkz . HDInsight üzerinde Kafka ile Apache Kafka konularını çoğaltmak için MirrorMaker kullanma.

Yansıtmayı kullanan bir geçiş yaklaşımı aşağıdadır:

  • Önce üreticileri, ardından tüketicileri taşıyın. Üreticileri geçirirken kaynak Kafka'da yeni iletilerin üretilmesini engellersiniz.
  • Kaynak Kafka kalan tüm iletileri tükettiğinde tüketicileri geçirebilirsiniz.

Uygulama adımları şunlardır:

  1. Üretici istemcisinin Kafka bağlantı adresini yeni Kafka örneğine işaret eden şekilde değiştirin.
  2. Üretici iş hizmetlerini yeniden başlatın ve yeni Kafka örneğine yeni iletiler gönderin.
  3. Kaynak Kafka'daki verilerin tüketilmesi için bekleyin.
  4. Tüketici istemcisinin Kafka bağlantı adresini yeni Kafka örneğine işaret eden şekilde değiştirin.
  5. Yeni Kafka örneğinden gelen iletileri kullanmak için tüketici iş hizmetlerini yeniden başlatın.
  6. Tüketicilerin yeni Kafka örneğinden veri almada başarılı olduğunu doğrulayın.

Kafka kümesini izleme

HDInsight üzerinde Apache Kafka tarafından oluşturulan günlükleri analiz etmek için Azure İzleyici günlüklerini kullanabilirsiniz. Daha fazla bilgi için bkz. HDInsight üzerinde Apache Kafka günlüklerini analiz etme.

Apache Kafka Akışlar API'si

Kafka Akışlar API'si, verilerin neredeyse gerçek zamanlı olarak işlenmesini mümkün kılar ve verileri birleştirme ve toplama olanağı sağlar. API'nin bilinmeye değer birçok özelliği daha vardır. Daha fazla bilgi için bkz. Kafka Akışlar: Stream Processing Made Simple - Confluent tanıtımı.

Microsoft ve Confluent ortaklığı

Confluent, Apache Kafka için buluta özel bir hizmet sağlar. Microsoft ve Confluent stratejik bir ittifaka sahiptir. Daha fazla bilgi için bkz.

Katkıda Bulunanlar

Bu makale Microsoft tarafından yönetilir. Başlangıçta aşağıdaki katkıda bulunanlar tarafından yazılmıştır.

Asıl yazarlar:

Diğer katkıda bulunanlar:

Genel olmayan LinkedIn profillerini görmek için LinkedIn'de oturum açın.

Sonraki adımlar

Azure ürün tanıtımları

Azure ürün başvurusu

Diğer