Forutsetninger:
Trinn 1: Oppdater CentOS 7-systemet
Trinn 2: Installer OpenJDK Runtime
Trinn 3: Last ned Apache Kafka
Trinn 4: Start og test Apache Kafka
Apache Kafka er et skalerbart meldingssystem med høy gjennomstrømming som er i stand til effektivt å håndtere en enorm mengde data.
Du kan enten distribuere Kafka på én server eller bygge en distribuert Kafka-klynge for bedre ytelse. Som en startforklaring forklarer denne artikkelen hvordan du installerer Apache Kafka på én enkelt Vultr CentOS 7-serverforekomst.
Forutsetninger:
Før du går videre bør du:
- Distribuer en Vultr CentOS 7-serverforekomst. Avhengig av dine behov, kan det hende du må øke tilgjengelig minne.
- Bruk en sudo-bruker til å logge på fra SSH-terminalen din.
Trinn 1: Oppdater CentOS 7-systemet
Bruk kommandoen nedenfor for å oppdatere systemet til siste stabile status:
sudo yum update -y && sudo reboot
Etter omstarten er fullført, bruk den samme sudo-brukeren til å logge på igjen.
Trinn 2: Installer OpenJDK Runtime
Du må sette opp en virtuell Java-maskin på systemet ditt før du kan kjøre Apache Kafka riktig. Her kan du installere OpenJDK Runtime Environment 1.8.0 ved å bruke YUM:
sudo yum install java-1.8.0-openjdk.x86_64
Bekreft installasjonen din med:
java -version
Utgangen skal ligne:
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)
Du må også sette opp miljøvariablene "JAVA_HOME" og "JRE_HOME":
sudo vi /etc/profile
Legg til følgende linjer til det originale innholdet i filen:
export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk
export JRE_HOME=/usr/lib/jvm/jre
Lagre og avslutt:
:wq
Last inn profilen på nytt for å sette endringene i kraft:
source /etc/profile
Trinn 3: Last ned Apache Kafka
Last ned den siste stabile versjonen av Apache Kafka fra den offisielle nettsiden. I skrivende stund er det 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
Pakk ut arkivet til en foretrukket plassering, for eksempel /opt:
tar -xvf kafka_2.11-0.9.0.1.tgz
sudo mv kafka_2.11-0.9.0.1 /opt
Trinn 4: Start og test Apache Kafka
På dette tidspunktet er Apache Kafka tilgjengelig på systemet ditt. La oss prøvekjøre den.
4.1: Gå inn i Kafka-katalogen
cd /opt/kafka_2.11-0.9.0.1
4.2: Start Zookeeper-serveren
bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
4.3: Endre konfigurasjonen av Kafka-serveren din
vi bin/kafka-server-start.sh
Juster minnebruken i henhold til dine spesifikke systemparametere. Hvis du for eksempel bruker en Vultr-serverforekomst med 768 MB minne i testmiljøet, må du finne følgende linje:
export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
Erstatt den med:
export KAFKA_HEAP_OPTS="-Xmx256M -Xms128M"
Lagre en avslutning:
:wq
4.4: Start Kafka-serveren
bin/kafka-server-start.sh config/server.properties
Hvis alt gikk vellykket, vil du se flere meldinger om Kafka-serverens status, og den siste vil lese:
INFO [Kafka Server 0], started (kafka.server.KafkaServer)
Dette betyr at du har startet Kafka-serveren.
4.5: Opprett en emne "test" i en ny SSH-tilkobling
Åpne en ny SSH-tilkobling, bruk følgende kommandoer for å lage et emne "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
Du kan se emnene dine med følgende kommando:
bin/kafka-topics.sh --list --zookeeper localhost:2181
I vårt tilfelle vil utgangen lese:
test
4.6: Lag meldinger ved å bruke emnet "test"
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
Ved å bruke kommandoen ovenfor kan du legge inn et hvilket som helst antall meldinger du ønsker, for eksempel:
Welcome aboard!
Bonjour!
Hvis du får en feilmelding som ligner på "WARN Error while fetching metadata with correlation id"når du skriver inn en melding, må du oppdatere server.propertiesfilen med følgende informasjon:
port = 9092
advertised.host.name = localhost
4.7: Vis meldinger
Åpne en tredje SSH-tilkobling, og kjør deretter følgende kommandoer:
cd /opt/kafka_2.11-0.9.0.1
bin/kafka-console-consumer.sh --zookeeper localhost:9092 --topic test --from-beginning
Ta-da! Meldingene du produserte tidligere vil vises i den tredje SSH-tilkoblingen. Selvfølgelig, hvis du legger inn flere meldinger fra den andre SSH-tilkoblingen nå, vil du umiddelbart se dem på den tredje SSH-tilkoblingen.
Til slutt kan du trykke Ctrl+C på hver SSH-tilkobling for å stoppe disse skriptene.
Det er det. Du kan lære mer om Apache Kafka på den offisielle nettsiden. Ha det gøy!