Προαπαιτούμενα:
Βήμα 1: Ενημερώστε το σύστημα CentOS 7
Βήμα 2: Εγκαταστήστε το OpenJDK Runtime
Βήμα 3: Κατεβάστε το Apache Kafka
Βήμα 4: Ξεκινήστε και δοκιμάστε τον Apache Kafka
Το Apache Kafka είναι ένα επεκτάσιμο και υψηλής απόδοσης σύστημα ανταλλαγής μηνυμάτων που είναι σε θέση να χειρίζεται αποτελεσματικά τεράστιο όγκο δεδομένων.
Μπορείτε είτε να αναπτύξετε το Kafka σε έναν διακομιστή είτε να δημιουργήσετε ένα κατανεμημένο σύμπλεγμα Kafka για μεγαλύτερη απόδοση. Ως αρχή, αυτό το άρθρο εξηγεί πώς να εγκαταστήσετε το Apache Kafka σε μία μόνο παρουσία διακομιστή Vultr CentOS 7.
Προαπαιτούμενα:
Πριν προχωρήσετε, θα πρέπει:
- Αναπτύξτε μια παρουσία διακομιστή Vultr CentOS 7. Ανάλογα με τις ανάγκες σας, μπορεί να χρειαστεί να αυξήσετε τη διαθέσιμη μνήμη.
- Χρησιμοποιήστε έναν χρήστη sudo για να συνδεθείτε από το τερματικό σας SSH.
Βήμα 1: Ενημερώστε το σύστημα CentOS 7
Χρησιμοποιήστε την παρακάτω εντολή για να ενημερώσετε το σύστημά σας στην πιο πρόσφατη σταθερή κατάσταση:
sudo yum update -y && sudo reboot
Αφού ολοκληρωθεί η επανεκκίνηση, χρησιμοποιήστε τον ίδιο χρήστη sudo για να συνδεθείτε ξανά.
Βήμα 2: Εγκαταστήστε το OpenJDK Runtime
Πρέπει να ρυθμίσετε μια εικονική μηχανή Java στο σύστημά σας για να μπορέσετε να εκτελέσετε σωστά το Apache Kafka. Εδώ, μπορείτε να εγκαταστήσετε το OpenJDK Runtime Environment 1.8.0 χρησιμοποιώντας το YUM:
sudo yum install java-1.8.0-openjdk.x86_64
Επικυρώστε την εγκατάστασή σας με:
java -version
Η έξοδος πρέπει να μοιάζει με:
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)
Πρέπει επίσης να ρυθμίσετε τις μεταβλητές περιβάλλοντος "JAVA_HOME" και "JRE_HOME":
sudo vi /etc/profile
Προσθέστε τις ακόλουθες γραμμές στο αρχικό περιεχόμενο του αρχείου:
export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk
export JRE_HOME=/usr/lib/jvm/jre
Αποθήκευση και έξοδος:
:wq
Επαναλάβετε τη φόρτωση του προφίλ για να τεθούν σε ισχύ οι αλλαγές σας:
source /etc/profile
Βήμα 3: Κατεβάστε το Apache Kafka
Κατεβάστε την πιο πρόσφατη σταθερή έκδοση του Apache Kafka από τον επίσημο ιστότοπο. Τη στιγμή της γραφής, είναι 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
Αποσυμπιέστε το αρχείο σε μια προτιμώμενη τοποθεσία, όπως /opt:
tar -xvf kafka_2.11-0.9.0.1.tgz
sudo mv kafka_2.11-0.9.0.1 /opt
Βήμα 4: Ξεκινήστε και δοκιμάστε τον Apache Kafka
Σε αυτό το σημείο, το Apache Kafka είναι διαθέσιμο στο σύστημά σας. Ας το κάνουμε ένα test drive.
4.1: Μπείτε στον κατάλογο Kafka
cd /opt/kafka_2.11-0.9.0.1
4.2: Εκκινήστε τον διακομιστή Zookeeper
bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
4.3: Τροποποιήστε τη διαμόρφωση του διακομιστή Kafka
vi bin/kafka-server-start.sh
Προσαρμόστε τη χρήση της μνήμης σύμφωνα με τις συγκεκριμένες παραμέτρους του συστήματός σας. Για παράδειγμα, εάν χρησιμοποιείτε μια παρουσία διακομιστή Vultr με μνήμη 768 MB στο περιβάλλον δοκιμής, πρέπει να εντοπίσετε την ακόλουθη γραμμή:
export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
Αντικαταστήστε το με:
export KAFKA_HEAP_OPTS="-Xmx256M -Xms128M"
Αποθήκευση διακοπής:
:wq
4.4: Εκκίνηση του διακομιστή Kafka
bin/kafka-server-start.sh config/server.properties
Εάν όλα πήγαν επιτυχώς, θα δείτε πολλά μηνύματα σχετικά με την κατάσταση του διακομιστή Kafka και το τελευταίο θα διαβάσει:
INFO [Kafka Server 0], started (kafka.server.KafkaServer)
Αυτό σημαίνει ότι έχετε ξεκινήσει τον διακομιστή Kafka.
4.5: Δημιουργήστε ένα θέμα "δοκιμή" σε μια νέα σύνδεση SSH
Ανοίξτε μια νέα σύνδεση SSH, χρησιμοποιήστε τις ακόλουθες εντολές για να δημιουργήσετε ένα θέμα "δοκιμή":
cd /opt/kafka_2.11-0.9.0.1
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
Μπορείτε να δείτε τα θέματά σας με την ακόλουθη εντολή:
bin/kafka-topics.sh --list --zookeeper localhost:2181
Στην περίπτωσή μας, η έξοδος θα είναι:
test
4.6: Δημιουργήστε μηνύματα χρησιμοποιώντας το θέμα "δοκιμή"
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
Χρησιμοποιώντας την παραπάνω εντολή, μπορείτε να εισάγετε οποιονδήποτε αριθμό μηνυμάτων θέλετε, όπως:
Welcome aboard!
Bonjour!
Εάν λάβετε ένα παρόμοιο σφάλμα "WARN Error while fetching metadata with correlation id"κατά την εισαγωγή ενός μηνύματος, θα χρειαστεί να ενημερώσετε το server.propertiesαρχείο με τις ακόλουθες πληροφορίες:
port = 9092
advertised.host.name = localhost
4.7: Εμφάνιση μηνυμάτων
Ανοίξτε μια τρίτη σύνδεση SSH και, στη συνέχεια, εκτελέστε τις ακόλουθες εντολές:
cd /opt/kafka_2.11-0.9.0.1
bin/kafka-console-consumer.sh --zookeeper localhost:9092 --topic test --from-beginning
Τα-ντα! Τα μηνύματα που δημιουργήσατε νωρίτερα θα εμφανιστούν στην τρίτη σύνδεση SSH. Φυσικά, εάν εισαγάγετε περισσότερα μηνύματα από τη δεύτερη σύνδεση SSH τώρα, θα τα δείτε αμέσως στην τρίτη σύνδεση SSH.
Τέλος, μπορείτε να πατήσετε Ctrl+C σε κάθε σύνδεση SSH για να σταματήσετε αυτά τα σενάρια.
Αυτό είναι. Μπορείτε να μάθετε περισσότερα για τον Apache Kafka στον επίσημο ιστότοπο. Καλα να περνας!