Introduzione
Apache Kafka è una piattaforma di streaming di eventi distribuiti che ha la capacità di gestire le pipeline di dati ad alte prestazioni. È stato originariamente sviluppato da Linkedin per poi essere pubblico come piattaforma open source e utilizzato da molte aziende IT nel mondo.
Questo articolo ti mostrerà come installare e configurare Kafka su Ubuntu 20.04.
Installazione di Apache Kafka
Prerequisito
Apache Kafka richiede che Java sia installato sulla tua macchina Ubuntu 20.04. Innanzitutto, aggiorniamo il tuo sistema operativo con il seguente comando:
$ sudo apt update
Dopo aver aggiornato il sistema operativo, procedi con l'installazione di Java:
$ sudo apt install openjdk-11-jre-headless
Verifica che Java sia stato installato correttamente eseguendo:
$ java --version
L'uscita:
Download di Kafka
Successivamente, devi scaricare il sorgente Kafka su Ubuntu 20.04. Si consiglia vivamente di scaricarlo dal sito Web ufficiale di Apache Kafka:https://kafka.apache.org/downloads
Al momento della stesura di questo articolo, l'ultima versione è la 2.7.0. Puoi scaricarlo con il seguente comando:
$ cd $HOME
$ wget https://downloads.apache.org/kafka/2.7.0/kafka-2.7.0-src.tgz
Creiamo una nuova cartella denominata kafka-server nella directory /usr/local:
$ sudo mkdir /usr/local/kafka-server
Quindi estrai il sorgente scaricato di Kafka nella directory /usr/local/kafka-server:
$ sudo tar xf $HOME/kafka-2.7.0-src.tgz -C /usr/local/kafka-server
Hai già estratto i file binari di Apache Kafka. Elencare questi file eseguendo:
$ ls /usr/local/kafka-server/kafka-2.7.0-src/bin/
Uscita:
Ora è il momento di far funzionare Kafka e Zookeeper come demoni in Ubuntu 20.04. Per fare ciò, devi creare file di unità Systemd sia per Kafka che per Zookeeper.
Creazione di file Systemd Unit per Kafka e Zookeeper
Usa il tuo editor preferito e crea due file come segue:
/etc/systemd/system/zookeeper.service
[Unit] Description=Apache Zookeeper Server Requires=network.target remote-fs.target After=network.target remote-fs.target [Service] Type=simple ExecStart=/usr/local/kafka-server/kafka-2.7.0-src/bin/zookeeper-server-start.sh /usr/local/kafka-server/kafka-2.7.0-src/config/zookeeper.properties ExecStop=/usr/local/kafka-server/kafka-2.7.0-src/bin/zookeeper-server-stop.sh Restart=on-abnormal [Install] WantedBy=multi-user.target
/etc/systemd/system/kafka.service
[Unit] Description=Apache Kafka Server Documentation=http://kafka.apache.org/documentation.html Requires=zookeeper.service After=zookeeper.service [Service] Type=simple Environment="JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64" ExecStart=/usr/local/kafka-server/kafka-2.7.0-src/bin/kafka-server-start.sh /usr/local/kafka-server/kafka-2.7.0-src/config/server.properties ExecStop=/usr/local/kafka-server/kafka-2.7.0-src/bin/kafka-server-stop.sh Restart=on-abnormal [Install] WantedBy=multi-user.target
Per applicare le modifiche, è necessario ricaricare i demoni di systemd e abilitare anche i servizi.
$ sudo systemctl daemon-reload $ sudo systemctl enable --now zookeeper.service $ sudo systemctl enable --now kafka.service $ sudo systemctl status kafka zookeeper
Uscita:
Installazione di Cluster Manager per Apache Kafka (CMAK)
Il passaggio successivo è l'installazione di CMAK che sta per Cluster Manager per Apache Kafka. CMAK è uno strumento open source per la gestione e il monitoraggio dei servizi Kafka. È stato originariamente sviluppato da Yahoo. Per installare CMAK, esegui i seguenti comandi:
$ cd $HOME $ git clone https://github.com/yahoo/CMAK.git
Configurazione di CMAK
Quindi, utilizzando il tuo editor preferito per modificare la configurazione CMAK.
$ vim ~/CMAK/conf/application.conf
In questo tutorial, configureremo Zookeeper come localhost , cambiamo il valore di cmak.zkhosts come localhost:2181
Puoi trovare cmak.zkhosts alla riga 28.
Ora devi creare un file zip allo scopo di distribuire l'applicazione:
$ cd ~/CMAK $ ./sbt clean dist
Ci vorrà circa un minuto per completare. L'output sarà:
Avvio del servizio CMAK
Passa alla directory ~/CMAK/target/universal ed estrai il file zip:
$ cd ~/CMAK/target/universal $ unzip cmak-3.0.0.5.zip
Dopo aver decompresso il file cmak-3.0.0.5.zip, passare alla directory ed eseguire il file binario cmak:
$ cd cmak-3.0.0.5 $ bin/cmak
Per impostazione predefinita, il servizio cmak verrà eseguito sulla porta 9000.
Usa il browser web e vai a http://
Al momento, non è disponibile alcun cluster. Dobbiamo aggiungerne uno nuovo facendo clic su Aggiungi cluster su Cluster elenco a discesa.
Quindi, compila il modulo sottostante con le informazioni richieste:Nome cluster, Host Cluster Zookeeper, Versione Kafka e così via. Ad esempio:
Lascia le altre opzioni con i valori predefiniti, quindi fai clic su Salva.
Fatto. Il cluster è stato creato correttamente.
Ora è il momento di creare un argomento di esempio. Supponiamo di creare un argomento chiamato "LinuxWaysTopic". Tenendo presente che CMAK è ancora in esecuzione e avvia un nuovo terminale, quindi esegui il seguente comando:
$ cd /usr/local/kafka-server/kafka-2.7.0-src
$ bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic LinuxWaysTopic
Uscita:
Vai alla visualizzazione cluster, quindi fai clic su Argomento> Elenco
Conclusione
Hai installato e configurato correttamente Apache Kafka sulla tua macchina Ubuntu 20.04 LTS.
Se hai qualche dubbio, sentiti libero di lasciare il tuo commento e fammi sapere. Grazie!