Apache Kafka adalah platform streaming terdistribusi. Ini berguna untuk membangun saluran data streaming real-time untuk mendapatkan data antara sistem atau aplikasi. Fitur berguna lainnya adalah aplikasi streaming waktu nyata yang dapat mengubah aliran data atau bereaksi terhadap aliran data.
Tutorial ini akan membantu Anda menginstal Apache Kafka pada sistem Debian 10, Debian 9 dan Debian 8.
Langkah 1 – Instal Java
Apache Kafka membutuhkan Java untuk dijalankan. Anda harus menginstal Java di sistem Anda. Jalankan perintah di bawah ini untuk menginstal OpenJDK default pada sistem Anda dari PPA resmi.
sudo apt update sudo apt install default-jdk
Langkah 2 – Unduh Apache Kafka
Unduh file biner Apache Kafka dari situs web unduhan resminya. Anda juga dapat memilih mirror terdekat untuk diunduh.
wget http://www-us.apache.org/dist/kafka/2.7.0/kafka_2.13-2.7.0.tgz
Kemudian ekstrak file arsip
tar xzf kafka_2.13-2.7.0.tgz mv kafka_2.13-2.7.0 /usr/local/kafka
Langkah 3 – Buat File Unit Systemd
Selanjutnya, buat file unit systemd untuk layanan Zookeeper dan Kafka. Ini akan membantu mengelola layanan Kafka untuk memulai/berhenti menggunakan perintah systemctl.
Pertama, buat file unit systemd untuk Zookeeper dengan perintah di bawah ini:
vim /etc/systemd/system/zookeeper.service
Tambahkan konten di bawah ini:
[Unit] Description=Apache Zookeeper server Documentation=http://zookeeper.apache.org Requires=network.target remote-fs.target After=network.target remote-fs.target [Service] Type=simple ExecStart=/usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties ExecStop=/usr/local/kafka/bin/zookeeper-server-stop.sh Restart=on-abnormal [Install] WantedBy=multi-user.target
Simpan file dan tutup.
Selanjutnya, untuk membuat file unit systemd Kafka menggunakan perintah berikut:
vim /etc/systemd/system/kafka.service
Tambahkan konten di bawah ini. Pastikan untuk menyetel JAVA_HOME . yang benar jalur sesuai Java yang diinstal pada sistem Anda.
[Unit] Description=Apache Kafka Server Documentation=http://kafka.apache.org/documentation.html Requires=zookeeper.service [Service] Type=simple Environment="JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64" ExecStart=/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties ExecStop=/usr/local/kafka/bin/kafka-server-stop.sh [Install] WantedBy=multi-user.target
Simpan file dan tutup.
Muat ulang daemon systemd untuk menerapkan perubahan baru.
systemctl daemon-reload
Langkah 4 – Mulai Server Kafka
Kafka membutuhkan ZooKeeper jadi pertama-tama, mulai server ZooKeeper di sistem Anda. Anda dapat menggunakan skrip yang tersedia dengan Kafka untuk memulai instance ZooKeeper node tunggal.
sudo systemctl start zookeeper
Sekarang mulai server Kafka dan lihat status berjalan:
sudo systemctl start kafka sudo systemctl status kafka
Semua selesai. Instalasi Kafka telah berhasil diselesaikan. Bagian dari tutorial ini akan membantu Anda bekerja dengan server Kafka.
Langkah 5 – Buat Topik di Kafka
Kafka menyediakan beberapa skrip shell pra-bangun untuk bekerja di dalamnya. Pertama, buat topik bernama “testTopic” dengan partisi tunggal dengan replika tunggal:
cd /usr/local/kafka bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic testTopic Created topic testTopic.
Faktor replikasi menjelaskan berapa banyak salinan data yang akan dibuat. Saat kami menjalankan dengan satu instance, pertahankan nilai ini 1.
Tetapkan opsi partisi sebagai jumlah broker yang Anda inginkan untuk membagi data Anda. Saat kami menjalankan dengan satu broker, pertahankan nilai ini 1.
Anda dapat membuat beberapa topik dengan menjalankan perintah yang sama seperti di atas. Setelah itu, Anda dapat melihat topik yang dibuat di Kafka dengan menjalankan perintah di bawah ini:
bin/kafka-topics.sh --list --zookeeper localhost:2181 testTopic TecAdminTutorial1 TecAdminTutorial2
Sebagai alternatif, daripada membuat topik secara manual, Anda juga dapat mengonfigurasi pialang untuk membuat topik secara otomatis saat topik yang tidak ada dipublikasikan.
Langkah 6 – Kirim Pesan ke Kafka
"Produser" adalah proses yang bertanggung jawab untuk memasukkan data ke dalam Kafka kami. Kafka hadir dengan klien baris perintah yang akan mengambil input dari file atau dari input standar dan mengirimkannya sebagai pesan ke cluster Kafka. Kafka default mengirim setiap baris sebagai pesan terpisah.
Mari jalankan Producer lalu ketik beberapa pesan ke konsol untuk dikirim ke server.
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic testTopic >Welcome to kafka >This is my first topic >
Anda dapat keluar dari perintah ini atau tetap menjalankan terminal ini untuk pengujian lebih lanjut. Sekarang buka terminal baru untuk proses konsumen Kafka pada langkah berikutnya.
Langkah 7 – Menggunakan Konsumen Kafka
Kafka juga memiliki konsumen baris perintah untuk membaca data dari klaster Kafka dan menampilkan pesan ke output standar.
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic testTopic --from-beginning Welcome to kafka This is my first topic
Sekarang, Jika Anda masih menjalankan produser Kafka (Langkah #6) di terminal lain. Cukup ketik beberapa teks di terminal produser itu. itu akan segera terlihat di terminal konsumen. Lihat tangkapan layar produsen dan konsumen Kafka di bawah ini dalam bekerja:
Kesimpulan
Anda telah berhasil menginstal dan mengkonfigurasi layanan Kafka pada mesin Debian Linux.