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:
- Kafka'nın Azure hizmet olarak altyapısına (IaaS) geçirilmesi
- Kafka'dan Kafka için Azure Event Hubs'a geçirme
- Azure HDInsight'ta Kafka'ya geçiş
- HDInsight üzerinde Kafka ile AKS kullanma
Hangisinin kullanılacağına karar vermek için bir karar akış çizelgesi aşağıdadır:
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:
- Üretici istemcisinin Kafka bağlantı adresini yeni Kafka örneğine işaret eden şekilde değiştirin.
- Üretici iş hizmetlerini yeniden başlatın ve yeni Kafka örneğine yeni iletiler gönderin.
- Kaynak Kafka'daki verilerin tüketilmesi için bekleyin.
- Tüketici istemcisinin Kafka bağlantı adresini yeni Kafka örneğine işaret eden şekilde değiştirin.
- Yeni Kafka örneğinden gelen iletileri kullanmak için tüketici iş hizmetlerini yeniden başlatın.
- 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.
- Confluent ve Microsoft Strategic Alliance'ı Duyurdu
- Microsoft Azure ile Confluent Cloud arasında sorunsuz tümleştirmeye giriş
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:
- Namrata Maheshwary | Üst Düzey Bulut Çözümü Mimarı
- Raja N | Müdür, Müşteri Başarısı
- Hideo Takagi | Bulut Çözümü Mimarı
- Ram Yerrabotu | Üst Düzey Bulut Çözümü Mimarı
Diğer katkıda bulunanlar:
- Ram Başkaran | Üst Düzey Bulut Çözümü Mimarı
- Jason Bouska | Kıdemli Yazılım Mühendisi
- Eugene Chung | Üst Düzey Bulut Çözümü Mimarı
- Pawan Hosatti | Üst Düzey Bulut Çözümü Mimarı - Mühendislik
- Daman Kaur | Bulut Çözümü Mimarı
- Danny Liu | Üst Düzey Bulut Çözümü Mimarı - Mühendislik
- Jose Mendez Kıdemli Bulut Çözümü Mimarı
- Ben Sadeghi | Kıdemli Uzman
- Sunil Sattiraju | Üst Düzey Bulut Çözümü Mimarı
- Amanjeet Singh | Asıl Program Yöneticisi
- Nagaraj Seeplapudur Venkatesan | Üst Düzey Bulut Çözümü Mimarı - Mühendislik
Genel olmayan LinkedIn profillerini görmek için LinkedIn'de oturum açın.
Sonraki adımlar
Azure ürün tanıtımları
- Azure Data Lake Storage 2. Nesil'e giriş
- Azure HDInsight'ta Apache Spark nedir?
- Azure HDInsight'ta Apache Hadoop nedir?
- Azure HDInsight'ta Apache HBase nedir?
- Azure HDInsight'ta Apache Kafka nedir?
- Azure HDInsight'ta kurumsal güvenliğe genel bakış
Azure ürün başvurusu
- Microsoft Entra belgeleri
- Azure Cosmos DB belgeleri
- Azure Data Factory belgeleri
- Azure Databricks belgeleri
- Azure Event Hubs belgeleri
- Azure İşlevleri belgeleri
- Azure HDInsight belgeleri
- Microsoft Purview veri idaresi belgeleri
- Azure Stream Analytics belgeleri
- Azure Synapse Analytics
Diğer
- Azure HDInsight için Kurumsal Güvenlik Paketi
- HDInsight üzerinde Apache Hadoop için Java MapReduce programları geliştirme
- HDInsight'ta Hadoop ile Apache Sqoop'u kullanma
- Apache Spark Akışına Genel Bakış
- Yapılandırılmış Akış öğreticisi
- Apache Kafka uygulamalarından Azure Event Hubs kullanma