Apache Kafka adalah sistem olahpesan terdistribusi yang sangat dapat diskalakan dan toleran terhadap kesalahan yang mengimplementasikan arsitektur terbitkan-berlangganan. Ini digunakan sebagai lapisan penyerapan dalam skenario streaming real-time, seperti IoT dan sistem pemantauan log real-time. Ini juga digunakan semakin sebagai penyimpanan data khusus tambahan yang tidak dapat diubah dalam arsitektur Kappa.
Apache, Apache Spark®, Apache Hadoop®, Apache HBase, Apache Storm®, Apache Sqoop®, Apache Kafka®, dan logo api adalah merek dagang terdaftar atau merek dagang dari Apache Software Foundation di Amerika Serikat dan/atau negara lain.® Tidak ada dukungan oleh The Apache Software Foundation yang tersirat oleh penggunaan tanda ini.
Pendekatan migrasi
Artikel ini menyajikan berbagai strategi untuk memigrasikan Kafka ke Azure:
- Memigrasikan Kafka ke infrastruktur sebagai layanan (IaaS) Azure
- Memigrasikan Kafka ke Azure Event Hubs untuk Kafka
- Memigrasikan Kafka di Azure HDInsight
- Menggunakan AKS dengan Kafka di HDInsight
Berikut adalah diagram alur keputusan untuk memutuskan mana yang akan digunakan:
Memigrasikan Kafka ke infrastruktur sebagai layanan (IaaS) Azure
Untuk salah satu cara memigrasikan Kafka ke Azure IaaS, lihat Kafka di VM Ubuntu.
Memigrasikan Kafka ke Azure Event Hubs untuk Kafka
Azure Event Hubs menyediakan titik akhir yang kompatibel dengan API produsen dan konsumen Apache Kafka. Titik akhir ini dapat digunakan oleh sebagian besar aplikasi klien Apache Kafka, jadi ini adalah alternatif untuk menjalankan kluster Kafka di Azure. Titik akhir mendukung klien yang menggunakan api versi 1.0 dan yang lebih baru. Untuk informasi selengkapnya tentang fitur ini, lihat Gambaran umum Azure Event Hubs for Apache Kafka.
Untuk mempelajari cara memigrasikan aplikasi Apache Kafka Anda untuk menggunakan Azure Event Hubs, lihat Migrasi ke Azure Event Hubs untuk Apache Kafka Ecosystems.
Perbedaan fitur Kafka dan Event Hubs
Bagaimana Kafka dan Event Hubs serupa? | Apa perbedaan Kafka dan Event Hubs? |
---|---|
Keduanya menggunakan partisi. | Ada perbedaan dalam bidang-bidang ini: |
Partisi bersifat independen. | • PaaS vs. perangkat lunak |
Keduanya menggunakan konsep kursor sisi klien. | •Partisi |
Keduanya dapat menskalakan ke beban kerja yang sangat tinggi. | •Api |
Secara konseptual mereka hampir sama. | •Runtime |
Tidak menggunakan protokol HTTP untuk menerima. | •Protokol |
•Daya tahan | |
•Keamanan | |
•Throttling |
Perbedaan partisi
Kafka | Pusat Aktivitas |
---|---|
Skala dikelola oleh jumlah partisi. | Skala dikelola oleh unit throughput. |
Anda harus menyeimbangkan beban partisi di seluruh komputer. | Penyeimbangan beban bersifat otomatis. |
Anda harus memecah ulang secara manual dengan menggunakan pisahkan dan gabungkan. | Partisi ulang tidak diperlukan. |
Perbedaan durabilitas
Kafka | Pusat Aktivitas |
---|---|
Volatil secara default | Selalu tahan lama |
Direplikasi setelah ACK | Direplikasi sebelum ACK |
Tergantung pada disk dan kuorum | Disediakan oleh penyimpanan |
Perbedaan keamanan
Kafka | Pusat Aktivitas |
---|---|
SSL dan SASL | SAS dan SASL/PLAIN RFC 4618 |
ACL seperti file | Kebijakan |
Enkripsi transportasi opsional | TLS Wajib |
Berbasis pengguna | Berbasis token (tidak terbatas) |
Perbedaan lain
Kafka | Pusat Aktivitas |
---|---|
Kafka tidak membatasi. | Azure Event Hubs mendukung pembatasan. |
Kafka menggunakan protokol kepemilikan. | Azure Event Hubs menggunakan protokol AMQP 1.0. |
Kafka tidak menggunakan HTTP untuk dikirim. | Azure Event Hubs menggunakan PENGIRIMAN HTTP dan Kirim Batch. |
Memigrasikan Kafka di Azure HDInsight
Anda dapat memigrasikan Kafka ke Kafka di Azure HDInsight. Untuk informasi selengkapnya, lihat Apa itu Apache Kafka di Azure HDInsight?.
Menggunakan AKS dengan Kafka di HDInsight
Lihat Menggunakan Azure Kubernetes Service dengan Apache Kafka di HDInsight.
Migrasi Data Kafka
Anda dapat menggunakan alat MirrorMaker Kafka untuk mereplikasi topik dari satu kluster ke kluster lainnya. Teknik ini dapat membantu Anda memigrasikan data setelah kluster Kafka disediakan. Untuk informasi selengkapnya, lihat Menggunakan MirrorMaker untuk mereplikasi topik Apache Kafka dengan Kafka di HDInsight.
Berikut adalah pendekatan migrasi yang menggunakan pencerminan:
- Pindahkan produsen terlebih dahulu lalu pindahkan konsumen. Ketika Anda memigrasikan produsen, Anda mencegah produksi pesan baru di Sumber Kafka.
- Setelah sumber Kafka mengonsumsi semua pesan yang tersisa, Anda dapat memigrasikan konsumen.
Berikut adalah langkah-langkah implementasinya:
- Ubah alamat koneksi Kafka klien produsen untuk menunjuk ke instans Kafka baru.
- Mulai ulang layanan bisnis produsen dan kirim pesan baru ke instans Kafka baru.
- Tunggu hingga data di Kafka sumber dikonsumsi.
- Ubah alamat koneksi Kafka klien konsumen untuk menunjuk ke instans Kafka baru.
- Mulai ulang layanan bisnis konsumen untuk menggunakan pesan dari instans Kafka baru.
- Verifikasi bahwa konsumen berhasil mendapatkan data dari instans Kafka baru.
Memantau kluster Kafka
Anda dapat menggunakan log Azure Monitor untuk menganalisis log yang dihasilkan oleh Apache Kafka di HDInsight. Untuk informasi selengkapnya, lihat: Menganalisis log untuk Apache Kafka di HDInsight.
API Aliran Apache Kafka
Kafka Aliran API memungkinkan untuk memproses data mendekati real-time, dan menyediakan kemampuan untuk menggabungkan dan menggabungkan data. Ada lebih banyak fitur API yang perlu diketahui. Untuk informasi selengkapnya, lihat Memperkenalkan Kafka Aliran: Pemrosesan Streaming Dibuat Sederhana - Confluent.
Kemitraan Microsoft dan Confluent
Confluent menyediakan layanan cloud-native untuk Apache Kafka. Microsoft dan Confluent memiliki aliansi strategis. Untuk informasi selengkapnya, lihat:
- Confluent dan Microsoft Mengumumkan Aliansi Strategis
- Memperkenalkan integrasi yang mulus antara Microsoft Azure dan Confluent Cloud
Kontributor
Artikel ini dikelola oleh Microsoft. Ini awalnya ditulis oleh kontributor berikut.
Penulis utama:
- Namrata Maheshwary | Arsitek Solusi Cloud Senior
- Raja N | Direktur, Keberhasilan Pelanggan
- Hideo Takagi | Arsitek Solusi Cloud
- Ram Yerrabotu | Arsitek Solusi Cloud Senior
Kontributor lain:
- Ram Baskaran | Arsitek Solusi Cloud Senior
- Jason Bouska | Insinyur Perangkat Lunak Senior
- Eugene Chung | Arsitek Solusi Cloud Senior
- Pawan Hosatti | Arsitek Solusi Cloud Senior - Teknik
- Daman Kaur | Arsitek Solusi Cloud
- Danny Liu | Arsitek Solusi Cloud Senior - Teknik
- Arsitek Solusi Cloud Senior Jose Mendez
- Ben Sadeghi | Spesialis Senior
- Sunil Sattiraju | Arsitek Solusi Cloud Senior
- Amanjeet Singh | Manajer Program Utama
- Nagaraj Seeplapudur Venkatesan | Arsitek Solusi Cloud Senior - Teknik
Untuk melihat profil LinkedIn non-publik, masuk ke LinkedIn.
Langkah berikutnya
Pengenalan produk Azure
- Pengantar Azure Data Lake Storage Gen2
- Apa itu Apache Spark di Azure HDInsight?
- Apa itu Apache Hadoop di Azure HDInsight?
- Apa itu Apache HBase di Azure HDInsight?
- Apa itu Apache Kafka di Azure HDInsight?
- Gambaran umum keamanan perusahaan di Microsoft Azure HDInsight
Referensi produk Azure
- Dokumentasi Microsoft Entra
- Dokumentasi Azure Cosmos DB
- Dokumentasi Azure Data Factory
- Dokumentasi Azure Databricks
- Dokumentasi Azure Event Hubs
- Dokumentasi Azure Functions
- Dokumentasi Azure HDInsight
- Dokumentasi tata kelola data Microsoft Purview
- Dokumentasi Azure Stream Analytics
- Azure Synapse Analytics
Lainnya
- Paket Keamanan Perusahaan untuk Azure HDInsight
- Kembangkan program Java MapReduce untuk Apache Hadoop di HDInsight
- Menggunakan Apache Sqoop dengan Hadoop di HDInsight
- Gambaran Umum Apache Spark Streaming
- Tutorial Streaming Terstruktur
- Menggunakan Azure Event Hubs dari aplikasi Apache Kafka