apache-kafka
narzędzia konsoli kafka
Szukaj…
Wprowadzenie
Kafka oferuje narzędzia wiersza polecenia do zarządzania tematami, grupami konsumentów, do konsumpcji i publikowania wiadomości i tak dalej.
Ważne : skrypty konsoli Kafka są różne dla platform opartych na Uniksie i Windows. W przykładach może być konieczne dodanie rozszerzenia stosownie do platformy.
Linux : skrypty znajdujące się w bin/ z rozszerzeniem .sh .
Windows : skrypty znajdujące się w bin\windows\ iz rozszerzeniem .bat .
kafka-topics
To narzędzie pozwala wyświetlać, tworzyć, zmieniać i opisywać tematy.
Lista tematów:
kafka-topics --zookeeper localhost:2181 --list
Utwórz temat:
kafka-topics --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
tworzy temat z jedną partycją i bez replikacji.
Opisz temat:
kafka-topics --zookeeper localhost:2181 --describe --topic test
Zmień temat:
# 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
(Uwaga: Kafka nie obsługuje zmniejszania liczby partycji tematu) (zobacz tę listę właściwości konfiguracyjnych )
producent konsoli kafka
To narzędzie pozwala tworzyć wiadomości z wiersza polecenia.
Wysyłaj proste wiadomości tekstowe do tematu:
kafka-console-producer --broker-list localhost:9092 --topic test
here is a message
here is another message
^D
(każda nowa linia to nowa wiadomość, wpisz ctrl + D lub ctrl + C, aby zatrzymać)
Wysyłaj wiadomości za pomocą kluczy:
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
Wysyłaj wiadomości z pliku:
kafka-console-producer --broker-list localhost:9092 --topic test_topic < file.log
kafka-konsola-konsument
To narzędzie pozwala Ci zużywać wiadomości z tematu.
aby użyć starej implementacji konsumenta, zamień
--bootstrap-server--zookeeper.
Wyświetlaj proste komunikaty:
kafka-console-consumer --bootstrap-server localhost:9092 --topic test
Zużyj stare wiadomości:
Aby zobaczyć starsze wiadomości, możesz użyć opcji --from-beginning .
Wyświetl komunikaty klucz-wartość :
kafka-console-consumer --bootstrap-server localhost:9092 --topic test-topic \
--property print.key=true \
--property key.separator=,
kafka-simple-Consumer-shell
Ten konsument jest narzędziem niskiego poziomu, które pozwala zużywać wiadomości z określonych partycji, odsunięć i replik.
Przydatne parametry:
-
parition: konkretna partycja do konsumpcji (domyślnie dla wszystkich) -
offset: offset początkowy. Użyj-2do konsumpcji wiadomości od początku,-1do konsumpcji od końca. -
max-messages: liczba wiadomości do wydrukowania -
replica: replika, domyślnie broker-lider (-1)
Przykład:
kafka-simple-consumer-shell \
--broker-list localhost:9092 \
--partition 1 \
--offset 4 \
--max-messages 3 \
--topic test-topic
wyświetla 3 komunikaty z partycji 1, zaczynając od przesunięcia 4 od tematu test-temat.
kafka-grupy konsumenckie
To narzędzie umożliwia wyświetlanie, opisywanie lub usuwanie grup konsumentów. Przeczytaj ten artykuł, aby uzyskać więcej informacji o grupach konsumentów.
jeśli nadal korzystasz ze starej implementacji klienta, zamień
--bootstrap-server--zookeeper.
Lista grup odbiorców:
kafka-consumer-groups --bootstrap-server localhost:9092 --list
octopus
Opisz grupę konsumentów:
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
Uwagi : w wynikach powyżej
-
current-offsetjest ostatnim zatwierdzonym przesunięciem instancji konsumenta, -
log-end-offsetjest najwyższym przesunięciem partycji (stąd suma tej kolumny daje całkowitą liczbę komunikatów dla tematu) -
lagjest różnicą między bieżącym przesunięciem konsumenta a najwyższym przesunięciem, stąd jak daleko jest do konsumenta, -
ownerjestclient.idkonsumenta (jeśli nie jest określony, wyświetlany jest domyślny).
Usuń grupę konsumentów:
usuwanie jest dostępne tylko wtedy, gdy metadane grupy są przechowywane w zookeeper (stary interfejs użytkownika). Dzięki nowemu interfejsowi API dla klientów broker obsługuje wszystko, w tym usuwanie metadanych: grupa jest usuwana automatycznie po wygaśnięciu ostatniego zatwierdzonego przesunięcia dla grupy.
kafka-consumer-groups --bootstrap-server localhost:9092 --delete --group octopus