Jak zainstalować Apache Kafka na Ubuntu 20.04

Jak zainstalować Apache Kafka na Ubuntu 20.04

Apache Kafka to open source, rozproszona platforma strumieniowego zdarzeń opracowana przez Apache Software Foundation. Jest to napisane w językach programowania Scali i Java. Możesz zainstalować Kafkę na dowolnej platformie obsługującej Java.

Ten samouczek opisał cię krok po kroku, aby zainstalować Apache Kafka na Ubuntu 20.04 LTS Linux System. Nauczysz się także tworzyć tematy w Kafka i uruchomić producent i węzły konsumenckie.

Wymagania wstępne

Musisz mieć dostęp do konta uprzywilejowanego do Ubuntu 20.04 System Linux.

Krok 1 - Instalowanie Java

Apache Kafka można uruchomić na wszystkich platformach obsługiwanych przez Java. Aby skonfigurować Kafkę w systemie Ubuntu, musisz najpierw zainstalować Java. Jak wiemy, Oracle Java jest teraz dostępna w handlu, więc używamy jej wersji Openjdk w wersji typu openjdk.

Wykonaj poniższe polecenie, aby zainstalować OpenJDK w swoim systemie z oficjalnych PPA.

sudo apt aktualizacja sudo apt instinst instaluj default-jdk 

Sprawdź aktualną aktywną wersję Java.

java --version  Wersja OpenJdk "11.0.9.1 "2020-11-04 Environment czasu wykonawczego Openjdk (Build 11.0.9.1+1-ubuntu-0ubuntu1.20.04) Openjdk 64-bit serwer VM (kompilacja 11.0.9.1+1-ubuntu-0ubuntu1.20.04, tryb mieszany, udostępnianie) 

Krok 2 - Pobierz najnowszą Apache Kafka

Pobierz pliki binarne Apache Kafka z oficjalnej strony pobierania. Możesz także wybrać dowolne pobliskie lustro do pobrania.

wget https: // dlcdn.Apache.org/kafka/3.2.0/kafka_2.13-3.2.0.TGZ  

Następnie wyodrębnij plik archiwum

TAR XZF KAFKA_2.13-3.2.0.TGZ  sudo mv kafka_2.13-3.2.0/usr/local/kafka  

Krok 3 - Tworzenie plików jednostek systemowych SystemD

Teraz musisz utworzyć pliki jednostek systemowych dla usług Zookeeper i Kafka. Co pomoże ci w łatwy sposób uruchomić/zatrzymać usługę Kafka.

Najpierw utwórz plik jednostki SystemD dla Zookeeper:

vim/etc/systemd/system/zookeeper.praca 

I dodaj następującą zawartość:

[Jednostka] Opis = Apache Zookeeper Server Dokumentacja = http: // Zookeeper.Apache.org wymaga = sieć.celowe zdalne fs.Target po = sieć.celowe zdalne fs.Target [Service] Type = Simple ExecStart =/usr/local/kafka/bin/zookeeper-server-start.sh/usr/local/kafka/config/zookeeper.Właściwości execstop =/usr/local/kafka/bin/zookeeper-server-stop.SH RESTART = on-Abnormal [instalacja] Wantedby = Multi-User.cel 

Zapisz plik i zamknij go.

Następnie, aby utworzyć plik jednostki SystemD dla usługi Kafka:

vim/etc/systemd/system/kafka.praca 

Dodaj poniższą zawartość. Pamiętaj, aby ustawić poprawne Java_home ścieżka zgodnie z instalacją Java w twoim systemie.

[Jednostka] Opis = Apache Kafka Server Documentation = http: // kafka.Apache.org/dokumentacja.html wymaga = Zookeeper.Service [Service] Type = proste środowisko = "java_home =/usr/lib/jvm/java-1.11.0-OPENJDK-AMD64 "execstart =/usr/local/kafka/bin/kafka-server-start.sh/usr/local/kafka/config/serwer.Właściwości execstop =/usr/local/kafka/bin/kafka-server-stop.sh [instalacja] WantedBy = Multi-użytkownik.cel 

Zapisz plik i zamknij.

Załaduj demona systemu, aby zastosować nowe zmiany.

SystemCtl Demon-Reload 

Krok 4 - Rozpocznij usługę Kafki i Zookeeper

Najpierw musisz założyć usługę Zookeeper, a następnie uruchomić Kafkę. Użyj polecenia SystemCtl, aby uruchomić instancję Zookeeper z pojedynczym węzłem.

sudo systemctl start zookeeper 

Teraz uruchom serwer Kafka i wyświetl status działający:

sudo systemctl start kafka sudo systemctl status kafka 

Wszystkie zrobione. Instalacja Kafka została pomyślnie zakończona. Część tego samouczka pomoże Ci pracować z serwerem Kafka.

Krok 5 - Utwórz temat w Kafka

Kafka zapewnia wiele wstępnie zbudowanych skorupek do pracy. Najpierw utwórz temat o nazwie „TestTopic” z jedną partycją z jedną repliką:

CD/USR/Local/Kafka Bin/Kafka-Topics.sh-Create-bootstrap-server localhost: 9092-Odreplikacja-fakt 1-partie 1-Topic TestTopic stworzony temat TETMTOPIC. 

Współczynnik replikacji opisuje, ile kopii danych zostanie utworzonych. Gdy działa z jednym instancją, zachowaj tę wartość 1.

Ustaw opcje partycji jako liczbę brokerów, które chcesz, aby Twoje dane zostały podzielone. Gdy działa z jednym brokerem, zachowaj tę wartość 1.

Możesz tworzyć wiele tematów, uruchamiając to samo polecenie jak powyżej. Następnie możesz zobaczyć utworzone tematy na Kafce za pomocą komendy uruchomionego poniżej:

Bin/Kafka-Topics.sh--list-bootstrap-server localhost: 9092 [wyjście] Testtopic 

Alternatywnie, zamiast ręcznego tworzenia tematy.

Krok 6 - Wyślij i odbieraj wiadomości w Kafka

„Producent” to proces odpowiedzialny za umieszczanie danych w naszej Kafce. Kafka jest wyposażona w klienta wiersza poleceń, który przyjmie dane wejściowe z pliku lub ze standardowego wejścia i wyśle ​​go jako wiadomości do klastra Kafka. Domyślna Kafka wysyła każdą wiersz jako osobną wiadomość.

Uruchommy producent, a następnie wpiszmy kilka wiadomości do konsoli, aby wysłać na serwer.

Bin/Kafka-Consol-Producer.SH-Broker-List LocalHost: 9092-Topic Testtopic> Witamy w Kafka> To jest mój pierwszy temat> 

Możesz wyjść z tego polecenia lub utrzymać ten terminal w celu dalszego testowania. Teraz otwórz nowy terminal do procesu konsumenckiego Kafka na następnym kroku.

Krok 7 - Korzystanie z Kafka Consumer

Kafka ma również konsumenta z wiersza poleceń do odczytu danych z klastra Kafka i wyświetlanie komunikatów do standardowego wyjścia.

Bin/Kafka-Console-Consumer.sh-bootstrap-server localhost: 9092-Topic Testtopic-From-Beginning Welcome to Kafka To jest mój pierwszy temat 

Teraz, jeśli nadal pracujesz Kafka (krok #6) w innym terminalu. Po prostu wpisz trochę tekstu na tym terminalu producenta. Będzie to natychmiast widoczne na terminalu konsumenckim. Zobacz poniższy zrzut ekranu producenta i konsumenta Kafka w pracy:

Wniosek

Ten samouczek pomógł ci zainstalować i skonfigurować usługę Apache Kafka w systemie Ubuntu. Dodatkowo nauczyłeś się tworzyć nowy temat na serwerze Kafka i uruchomić przykładowy proces produkcji i konsumentów z Apache Kafka.