Cara menginstal kafka di rhel 8

Cara menginstal kafka di rhel 8

Apache Kafka adalah platform streaming terdistribusi. Dengan set API (Application Programming Interface) yang kaya, kita dapat menghubungkan sebagian besar apa pun dengan Kafka sebagai sumber data, dan di ujung lainnya, kita dapat mengatur sejumlah besar konsumen yang akan menerima uap catatan untuk diproses. Kafka sangat terukur, dan menyimpan aliran data dengan cara yang andal dan toleran terhadap kesalahan. Dari perspektif konektivitas, kafka dapat berfungsi sebagai jembatan antara banyak sistem heterogen, yang pada gilirannya dapat bergantung pada kemampuannya untuk mentransfer dan bertahan data yang disediakan yang disediakan.

Dalam tutorial ini kami akan menginstal Apache Kafka di Red Hat Enterprise Linux 8, buat Systemd file unit untuk kemudahan manajemen, dan menguji fungsionalitas dengan alat baris perintah yang dikirim.

Dalam tutorial ini Anda akan belajar:

  • Cara menginstal apache kafka
  • Cara membuat layanan systemd untuk kafka dan zooKeeper
  • Cara menguji kafka dengan klien baris perintah
Mengkonsumsi pesan pada topik kafka dari baris perintah.

Persyaratan dan konvensi perangkat lunak yang digunakan

Persyaratan Perangkat Lunak dan Konvensi Baris Perintah Linux
Kategori Persyaratan, konvensi atau versi perangkat lunak yang digunakan
Sistem Red Hat Enterprise Linux 8
Perangkat lunak Apache Kafka 2.11
Lainnya Akses istimewa ke sistem Linux Anda sebagai root atau melalui sudo memerintah.
Konvensi # - mensyaratkan perintah linux yang diberikan untuk dieksekusi dengan hak istimewa root baik secara langsung sebagai pengguna root atau dengan menggunakan sudo memerintah
$ - mensyaratkan perintah Linux yang diberikan untuk dieksekusi sebagai pengguna biasa

Cara Menginstal Kafka di Redhat 8 Instruksi Langkah demi Langkah



Apache Kafka ditulis di Java, jadi yang kita butuhkan hanyalah OpenJDK 8 diinstal untuk melanjutkan dengan instalasi. Kafka mengandalkan Apache Zookeeper, layanan koordinasi terdistribusi, yang juga ditulis di Java, dan dikirim dengan paket yang akan kami unduh. Saat memasang layanan HA (ketersediaan tinggi) ke satu node tidak membunuh tujuan mereka, kami akan menginstal dan menjalankan Zookeeper untuk Kafka's Sake.

  1. Untuk mengunduh kafka dari cermin terdekat, kita perlu berkonsultasi dengan situs unduhan resmi. Kita bisa menyalin URL .ter.GZ file dari sana. Kami akan menggunakannya wget, dan URL yang ditempel untuk mengunduh paket ke mesin target:
    # wget https: // www-eu.Apache.org/dist/kafka/2.1.0/kafka_2.11-2.1.0.tgz -o /opt /kafka_2.11-2.1.0.tgz
  2. Kami memasuki /memilih direktori, dan mengekstrak arsip:
    # CD /opt # tar -xvf kafka_2.11-2.1.0.tgz

    Dan membuat symlink yang dipanggil /opt/kafka yang menunjuk pada yang sekarang dibuat /opt/kafka_2_11-2.1.0 direktori untuk membuat hidup kita lebih mudah.

    ln -s /opt /kafka_2.11-2.1.0 /opt /kafka
  3. Kami membuat pengguna yang tidak istimewa yang akan menjalankan keduanya penjaga kebun binatang Dan kafka melayani.
    # useradd kafka
  4. Dan mengatur pengguna baru sebagai pemilik seluruh direktori yang kami ekstrak, secara rekursif:
    # chown -r kafka: kafka /opt /kafka*
  5. Kami membuat file unit /etc/systemd/system/zookeeperer.melayani dengan konten berikut:


    [Unit] Deskripsi = ZooKeeper After = Syslog.jaringan target.Target [Layanan] type = pengguna sederhana = kafka grup = kafka execStart =/opt/kafka/bin/zooKeeper-server-start.sh/opt/kafka/config/zookeeperer.properti execstop =/opt/kafka/bin/zookeeper-server-stop.sh [install] wantedby = multi-pengguna.target
    Menyalin

    Perhatikan bahwa kami tidak perlu menulis nomor versi tiga kali karena symlink yang kami buat. Hal yang sama berlaku untuk file unit berikutnya untuk kafka, /etc/systemd/system/kafka.melayani, Itu berisi baris konfigurasi berikut:

    [Unit] Deskripsi = Apache Kafka membutuhkan = ZooKeeper.Layanan setelah = penjaga kebun binatang.Layanan [Layanan] type = pengguna sederhana = kafka grup = kafka execStart =/opt/kafka/bin/kafka-server-start.sh/opt/kafka/config/server.properti execstop =/opt/kafka/bin/kafka-server-stop.sh [install] wantedby = multi-pengguna.target
    Menyalin
  6. Kita perlu memuat ulang Systemd Untuk membacanya file unit baru:


    # Systemctl Daemon-reload
  7. Sekarang kita dapat memulai layanan baru kita (dalam urutan ini):
    # Systemctl Mulai ZooKeeper # Systemctl Mulai Kafka

    Jika semuanya berjalan dengan baik, Systemd Jika melaporkan keadaan berjalan pada status kedua layanan, mirip dengan output di bawah ini:

    # Systemctl Status ZooKeeper.Layanan Zookeeper.Layanan - Zookeeper Loaded: Loaded (/etc/systemd/system/zookeeperer.melayani; dengan disabilitas; Preset Vendor: Dinonaktifkan) Aktif: Aktif (Berjalan) Sejak Kamis 2019-01-10 20:44:37 CET; 6s AGO MAIN PID: 11628 (JAVA) Tugas: 23 (Batas: 12544) Memori: 57.0m cgroup: /sistem.Slice/Zookeeper.Layanan 11628 java -xmx512m -xms512m -server […] # status systemctl kafka.Layanan Kafka.Layanan - Apache kafka dimuat: dimuat (/etc/systemd/system/kafka.melayani; dengan disabilitas; Preset Vendor: Dinonaktifkan) Aktif: Aktif (Berjalan) Sejak Kamis 2019-01-10 20:45:11 CET; 11s lalu PID Utama: 11949 (Java) Tugas: 64 (Batas: 12544) Memori: 322.2m cgroup: /sistem.Slice/Kafka.Layanan 11949 java -xmx1g -xms1g -server […]
  8. Secara opsional kami dapat mengaktifkan start otomatis pada boot untuk kedua layanan:
    # Systemctl Aktifkan ZooKeeper.Layanan # Systemctl Aktifkan Kafka.melayani
  9. Untuk menguji fungsionalitas, kami akan terhubung ke kafka dengan satu produsen dan satu klien konsumen. Pesan yang disediakan oleh produsen harus muncul di konsol konsumen. Tapi sebelum ini kita membutuhkan media dua pesan pertukaran ini. Kami membuat saluran data baru yang disebut tema Dalam istilah Kafka, di mana penyedia akan diterbitkan, dan di mana konsumen akan berlangganan. Kami akan menyebut topiknya
    FirstKafkatopic. Kami akan menggunakan kafka pengguna untuk membuat topik:
    $/opt/kafka/bin/kafka-topics.SH --Create --zookeeper Localhost: 2181--Replikasi-Faktor 1 --partisi 1-Topik FirstKafkatopik


  10. Kami memulai klien konsumen dari baris perintah yang akan berlangganan topik (pada titik ini kosong) yang dibuat pada langkah sebelumnya:
    $/opt/kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost: 9092 --Topik FirstKafkatopik --dari awal

    Kami meninggalkan konsol dan klien berjalan di dalamnya terbuka. Konsol ini adalah tempat kami akan menerima pesan yang kami terbitkan dengan klien produser.

  11. Di terminal lain, kami memulai klien produser, dan menerbitkan beberapa pesan ke topik yang kami buat. Kami dapat meminta Kafka untuk topik yang tersedia:
    $/opt/kafka/bin/kafka-topics.SH - -list --zookeeper localhost: 2181 firstkafkatopic

    Dan terhubung ke yang konsumen berlangganan, lalu kirim pesan:

    $/opt/kafka/bin/kafka-console-produser.SH --BROKER-DISTHOST LOCAL: 9092-Topik FirstKafkatopic> Pesan baru yang diterbitkan oleh Produser dari Console #2

    Di terminal konsumen, pesan akan segera muncul:

    $/opt/kafka/bin/kafka-console-consumer.SH --Bootstrap-Server Localhost: 9092-Topik FirstKafkatopic ---prom-from-FROM Pesan baru yang diterbitkan oleh Produser dari Console #2

    Jika pesan muncul, tes kami berhasil, dan instalasi Kafka kami berfungsi sebagaimana dimaksud. Banyak klien yang dapat menyediakan dan mengonsumsi satu atau lebih topik mencatat dengan cara yang sama, bahkan dengan setup tunggal yang kami buat dalam tutorial ini.

Tutorial Linux Terkait:

  • Cara menggunakan jaringan bridged dengan libvirt dan kvm
  • Hal -hal yang harus diinstal pada ubuntu 20.04
  • Cara mencegah pemeriksaan konektivitas networkmanager
  • Cara menginstal uap di ubuntu 22.04 Jammy Jellyfish Linux
  • Pengantar Otomatisasi Linux, Alat dan Teknik
  • Cara menggunakan ADB Android Debug Bridge untuk mengelola Android Anda…
  • Menguasai loop skrip bash
  • Loop bersarang dalam skrip bash
  • Ubuntu 20.04 WordPress dengan Instalasi Apache
  • Bagaimana bekerja dengan WooCommerce Rest API dengan Python