Preduvjeti:
Korak 1: Ažurirajte sustav CentOS 7
Korak 2: Instalirajte OpenJDK Runtime
Korak 3: Preuzmite Apache Kafku
Korak 4: Pokrenite i testirajte Apache Kafku
Apache Kafka je skalabilan i visokopropusni sustav za razmjenu poruka koji je sposoban učinkovito rukovati ogromnom količinom podataka.
Možete ili implementirati Kafku na jednom poslužitelju ili izgraditi distribuirani Kafka klaster za veće performanse. Za početak, ovaj članak objašnjava kako instalirati Apache Kafka na jednu instancu poslužitelja Vultr CentOS 7.
Preduvjeti:
Prije nego krenete dalje, trebali biste:
- Postavite instancu poslužitelja Vultr CentOS 7. Ovisno o vašim potrebama, možda ćete morati povećati dostupnu memoriju.
- Koristite sudo korisnika za prijavu sa svog SSH terminala.
Korak 1: Ažurirajte sustav CentOS 7
Koristite naredbu u nastavku da ažurirate svoj sustav na najnoviji stabilan status:
sudo yum update -y && sudo reboot
Nakon završetka ponovnog pokretanja, upotrijebite istog sudo korisnika da se ponovno prijavite.
Korak 2: Instalirajte OpenJDK Runtime
Morate postaviti Java virtualni stroj na svom sustavu prije nego što možete ispravno pokrenuti Apache Kafka. Ovdje možete instalirati OpenJDK Runtime Environment 1.8.0 koristeći YUM:
sudo yum install java-1.8.0-openjdk.x86_64
Potvrdite svoju instalaciju sa:
java -version
Izlaz bi trebao izgledati:
openjdk version "1.8.0_91"
OpenJDK Runtime Environment (build 1.8.0_91-b14)
OpenJDK 64-Bit Server VM (build 25.91-b14, mixed mode)
Također morate postaviti varijable okruženja "JAVA_HOME" i "JRE_HOME":
sudo vi /etc/profile
Dodajte sljedeće retke izvornom sadržaju datoteke:
export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk
export JRE_HOME=/usr/lib/jvm/jre
Spremi i zatvori:
:wq
Ponovno učitajte profil kako biste svoje promjene stavili na snagu:
source /etc/profile
Korak 3: Preuzmite Apache Kafku
Preuzmite najnoviju stabilnu verziju Apache Kafke sa službene web stranice. U vrijeme pisanja, to je 0.9.0.1.
cd ~
wget http://www-us.apache.org/dist/kafka/0.9.0.1/kafka_2.11-0.9.0.1.tgz
Raspakirajte arhivu na željeno mjesto, kao što je /opt:
tar -xvf kafka_2.11-0.9.0.1.tgz
sudo mv kafka_2.11-0.9.0.1 /opt
Korak 4: Pokrenite i testirajte Apache Kafku
U ovom trenutku, Apache Kafka je dostupan na vašem sustavu. Probajmo ga.
4.1: Uđite u direktorij Kafka
cd /opt/kafka_2.11-0.9.0.1
4.2: Pokrenite poslužitelj Zookeeper
bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
4.3: Izmijenite konfiguraciju vašeg Kafka poslužitelja
vi bin/kafka-server-start.sh
Prilagodite upotrebu memorije prema specifičnim parametrima sustava. Na primjer, ako koristite instancu poslužitelja Vultr sa 768 MB memorije u testnom okruženju, morate pronaći sljedeći redak:
export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
Zamijenite ga sa:
export KAFKA_HEAP_OPTS="-Xmx256M -Xms128M"
Spremi odustajanje:
:wq
4.4: Pokrenite Kafka poslužitelj
bin/kafka-server-start.sh config/server.properties
Ako je sve prošlo uspješno, vidjet ćete nekoliko poruka o statusu Kafka poslužitelja, a posljednja će glasiti:
INFO [Kafka Server 0], started (kafka.server.KafkaServer)
To znači da ste pokrenuli Kafka poslužitelj.
4.5: Napravite temu "test" u novoj SSH vezi
Otvorite novu SSH vezu, koristite sljedeće naredbe za stvaranje teme "test":
cd /opt/kafka_2.11-0.9.0.1
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
Svoje teme možete pogledati sljedećom naredbom:
bin/kafka-topics.sh --list --zookeeper localhost:2181
U našem slučaju, izlaz će glasiti:
test
4.6: Napravite poruke pomoću teme "test"
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
Koristeći gornju naredbu, možete unijeti bilo koji broj poruka koliko želite, kao što su:
Welcome aboard!
Bonjour!
Ako dobijete pogrešku sličnu onoj "WARN Error while fetching metadata with correlation id"prilikom unosa poruke, morat ćete ažurirati server.propertiesdatoteku sa sljedećim podacima:
port = 9092
advertised.host.name = localhost
4.7: Prikaz poruka
Otvorite treću SSH vezu, a zatim pokrenite sljedeće naredbe:
cd /opt/kafka_2.11-0.9.0.1
bin/kafka-console-consumer.sh --zookeeper localhost:9092 --topic test --from-beginning
Ta-da! Poruke koje ste prethodno proizveli prikazat će se u trećoj SSH vezi. Naravno, ako sada unesete više poruka s druge SSH veze, odmah ćete ih vidjeti na trećoj SSH vezi.
Konačno, možete pritisnuti Ctrl+C na svakoj SSH vezi da zaustavite ove skripte.
To je to. Više o Apache Kafki možete saznati na službenoj web stranici. Zabavi se!