apache-kafka
kafka console gereedschap
Zoeken…
Invoering
Kafka biedt opdrachtregelhulpmiddelen om onderwerpen, consumentengroepen te beheren, berichten te consumeren en te publiceren, enzovoort.
Belangrijk : Kafka-consolescripts zijn verschillend voor op Unix gebaseerde en Windows-platforms. In de voorbeelden moet u mogelijk de extensie toevoegen op basis van uw platform.
Linux : scripts in bin/ met .sh extensie.
Windows : scripts in bin\windows\ en met de extensie .bat .
kafka-topics
Met deze tool kunt u onderwerpen weergeven, maken, wijzigen en beschrijven.
Lijst onderwerpen:
kafka-topics --zookeeper localhost:2181 --list
Maak een onderwerp aan:
kafka-topics --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
maakt een onderwerp met één partitie en geen replicatie.
Beschrijf een onderwerp:
kafka-topics --zookeeper localhost:2181 --describe --topic test
Een onderwerp wijzigen:
# change configuration
kafka-topics --zookeeper localhost:2181 --alter --topic test --config max.message.bytes=128000
# add a partition
kafka-topics --zookeeper localhost:2181 --alter --topic test --partitions 2
(Let op: Kafka biedt geen ondersteuning voor het verminderen van het aantal partities van een onderwerp) (zie deze lijst met configuratie-eigenschappen )
kafka-console-producent
Met deze tool kunt u berichten maken vanaf de opdrachtregel.
Stuur eenvoudige stringberichten naar een onderwerp:
kafka-console-producer --broker-list localhost:9092 --topic test
here is a message
here is another message
^D
(elke nieuwe regel is een nieuw bericht, typ ctrl + D of ctrl + C om te stoppen)
Verzend berichten met sleutels:
kafka-console-producer --broker-list localhost:9092 --topic test-topic \
--property parse.key=true \
--property key.separator=,
key 1, message 1
key 2, message 2
null, message 3
^D
Verzend berichten vanuit een bestand:
kafka-console-producer --broker-list localhost:9092 --topic test_topic < file.log
kafka-console-consumer
Met deze tool kun je berichten van een onderwerp gebruiken.
vervang de
--bootstrap-serverdoor--zookeeperom de oude consumentenimplementatie te gebruiken.
Geef eenvoudige berichten weer:
kafka-console-consumer --bootstrap-server localhost:9092 --topic test
Oude berichten consumeren:
Om oudere berichten te zien, kunt u de --from-beginning gebruiken.
Toon sleutel-waarde berichten :
kafka-console-consumer --bootstrap-server localhost:9092 --topic test-topic \
--property print.key=true \
--property key.separator=,
kafka-simple-consumer-shell
Deze consument is een tool op laag niveau waarmee u berichten van specifieke partities, offsets en replica's kunt gebruiken.
Handige parameters:
-
parition: de specifieke partitie om van te consumeren (standaard op alles) -
offset: de beginoffset. Gebruik-2om berichten vanaf het begin te consumeren,-1om vanaf het einde te consumeren. -
max-messages: aantal af te drukken berichten -
replica: de replica, standaard voor de makelaar-leider (-1)
Voorbeeld:
kafka-simple-consumer-shell \
--broker-list localhost:9092 \
--partition 1 \
--offset 4 \
--max-messages 3 \
--topic test-topic
toont 3 berichten van partitie 1 beginnend bij offset 4 van onderwerp test-onderwerp.
kafka-consumer-groepen
Met deze tool kunt u consumentengroepen weergeven, beschrijven of verwijderen. Lees dit artikel voor meer informatie over consumentengroepen.
Als u nog steeds de oude consumentenimplementatie gebruikt, vervangt u
--bootstrap-serverdoor--zookeeper.
Lijst consumentengroepen:
kafka-consumer-groups --bootstrap-server localhost:9092 --list
octopus
Beschrijf een consumentengroep:
kafka-consumer-groups --bootstrap-server localhost:9092 --describe --group octopus
GROUP TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG OWNER
octopus test-topic 0 15 15 0 octopus-1/127.0.0.1
octopus test-topic 1 14 15 1 octopus-2_/127.0.0.1
Opmerkingen : in de bovenstaande output,
-
current-offsetis de laatste gecommitteerde offset van de consumentinstantie, -
log-end-offsetis de hoogste offset van de partitie (vandaar dat het optellen van deze kolom je het totale aantal berichten voor het onderwerp geeft) -
lagis het verschil tussen de huidige offset van de consument en de hoogste offset, dus hoe ver achter de consument is, -
owneris declient.idvan de consument (indien niet opgegeven, wordt een standaard weergegeven).
Een consumentengroep verwijderen:
verwijdering is alleen beschikbaar wanneer de metagegevens van de groep zijn opgeslagen in zookeeper (oude consumenten-api). Met de nieuwe consumenten-API regelt de makelaar alles, inclusief het verwijderen van metagegevens: de groep wordt automatisch verwijderd wanneer de laatste gecommitteerde offset voor de groep verloopt.
kafka-consumer-groups --bootstrap-server localhost:9092 --delete --group octopus