Apache Kafka adalah platform streaming terdistribusi yang dikembangkan oleh Apache Software Foundation dan ditulis dalam Java dan Scala. Apache Kafka awalnya dikembangkan oleh LinkedIn, dan open source pada tahun 2011.
Apache Kafka digunakan untuk membangun saluran data streaming real-time yang andal mendapatkan data antara sistem dan aplikasi. Ini menyediakan pemrosesan data terpadu, throughput tinggi, dan latensi rendah secara real-time.
Dalam tutorial ini, kami akan menunjukkan kepada Anda bagaimana langkah-demi-langkah menginstal dan mengkonfigurasi Apache Kafka di Ubuntu 18.04. Panduan ini akan mencakup instalasi dan konfigurasi Apache Kafka dan Apache Zookeeper.
Prasyarat
- Ubuntu 18.04
- Hak istimewa root
Apa yang akan kita lakukan?
- Instal Java OpenJDK 8
- Instal Apache Zookeeper
- Unduh dan Konfigurasi Apache Kafka
- Konfigurasi Apache Kafka dan Zookeeper sebagai Layanan
- Pengujian
Langkah 1 - Instal Java OpenJDK 8
Apache Kafka telah ditulis dalam Java dan Scala, jadi kita perlu menginstal java di server.
Sebelum menginstal paket apa pun, perbarui repositori dan perbarui semua paket.
sudo apt update
sudo apt upgrade
Sekarang instal Java OpenJDK 8 dari repositori Ubuntu menggunakan perintah apt di bawah ini.
sudo apt install openjdk-8-jdk -y
Setelah instalasi selesai, periksa versi java yang diinstal.
java -version
Sekarang Anda akan melihat Java OpenJDK 8 terinstal di Ubuntu 18.04.
Langkah 2 - Instal Apache Zookeeper
Apache Kafka menggunakan zookeeper untuk pengontrol pemilihan, keanggotaan cluster, dan konfigurasi topik. Zookeeper adalah konfigurasi terdistribusi dan layanan sinkronisasi.
Pada langkah ini, kita akan menginstal Zookeeper dari repositori Ubuntu.
Jalankan perintah apt di bawah ini.
sudo apt install zookeeperd -y
Tunggu hingga penginstalan selesai.
Langkah 3 - Unduh dan Konfigurasi Apache Kafka
Pada langkah ini, kita akan menginstal Apache Kafka menggunakan file biner yang dapat diunduh dari situs web Kafka. Kami akan menginstal dan mengkonfigurasi apache Kafka dan menjalankannya sebagai pengguna non-root.
Tambahkan pengguna baru bernama 'kafka'.
useradd -d /opt/kafka -s /bin/bash kafka
passwd kafka
Sekarang buka direktori '/opt' dan unduh file biner Apache Kafka menggunakan wget.
cd /opt
wget http://www-eu.apache.org/dist/kafka/2.0.0/kafka_2.11-2.0.0.tgz
Sekarang buat direktori kafka baru.
mkdir -p /opt/kafka
Ekstrak file kafka_*.tar.gz ke direktori 'kafka' dan ubah pemilik direktori menjadi pengguna dan grup 'kafka'.
tar -xf kafka_2.11-2.0.0.tgz -C /opt/kafka --strip-components=1
sudo chown -R kafka:kafka /opt/kafka
Sekarang login ke pengguna 'kafka' dan edit konfigurasi server.properties.
su - kafka
vim config/server.properties
Tempelkan konfigurasi berikut ke akhir baris.
delete.topic.enable = true
Simpan dan keluar.
Konfigurasi Apache Kafka telah selesai.
Langkah 4 - Konfigurasi Apache Kafka dan Zookeeper sebagai Layanan
Pada langkah ini, kita akan mengonfigurasi Apache Kafka sebagai layanan dan mengonfigurasi konfigurasi layanan pabean untuk penjaga kebun binatang.
Buka direktori '/lib/systemd/system' dan buat file layanan baru 'zookeeper.service'.
cd /lib/systemd/system/
vim zookeeper.service
Tempelkan konfigurasi di bawah ini.
[Unit] Requires=network.target remote-fs.target After=network.target remote-fs.target [Service] Type=simple User=kafka ExecStart=/opt/kafka/bin/zookeeper-server-start.sh /opt/kafka/config/zookeeper.properties ExecStop=/opt/kafka/bin/zookeeper-server-stop.sh Restart=on-abnormal [Install] WantedBy=multi-user.target
Simpan dan keluar.
Sekarang buat file layanan Apache Kafka 'kafka.service'.
vim kafka.service
Tempelkan konfigurasi di bawah ini.
[Unit] Requires=zookeeper.service After=zookeeper.service [Service] Type=simple User=kafka ExecStart=/bin/sh -c '/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties' ExecStop=/opt/kafka/bin/kafka-server-stop.sh Restart=on-abnormal [Install] WantedBy=multi-user.target
Simpan dan keluar.
Muat ulang konfigurasi pengelola systemd.
systemctl daemon-reload
Sekarang mulai layanan Apache Zookeeper dan Apache Kafka.
systemctl start zookeeper
systemctl enable zookeeper
systemctl start kafka
systemctl enable kafka
Apache zookeeper dan Kafka sudah siap.
Zookeeper berjalan di bawah port '2181', dan Kafka di port '9092', periksa menggunakan perintah netstat di bawah.
netstat -plntu
Langkah 5 - Menguji Apache Kafka
Masuk ke pengguna 'kafka' dan buka direktori 'bin/'.
su - kafka
cd bin/
Sekarang buat topik baru bernama 'HakaseTesting' menggunakan file eksekusi 'kafka-topics.sh'.
./kafka-topics.sh --create --zookeeper localhost:2181 \
--replication-factor 1 --partitions 1 \
--topic HakaseTesting
Dan jalankan 'kafka-console-producer.sh' dengan topik 'HakaseTesting'.
./kafka-console-producer.sh --broker-list localhost:9092 \
--topic HakaseTesting
Sekarang buka terminal baru dan masuk ke server, lalu masuk ke pengguna 'kafka'.
Jalankan 'kafka-console-consumer.sh' untuk topik 'HakaseTesting'.
./kafka-console-consumer.sh --bootstrap-server localhost:9092 \
--topic HakaseTesting --from-beginning
Dan ketika Anda mengetikkan input apa pun dari shell 'kafka-console-producer.sh', Anda akan mendapatkan hasil yang sama pada shell 'kafka-console-consumer.sh'.
Instalasi dan konfigurasi Apache Kafka di Ubuntu 18.04 telah berhasil diselesaikan.