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 -2 do konsumpcji wiadomości od początku, -1 do 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-offset jest ostatnim zatwierdzonym przesunięciem instancji konsumenta,
  • log-end-offset jest najwyższym przesunięciem partycji (stąd suma tej kolumny daje całkowitą liczbę komunikatów dla tematu)
  • lag jest różnicą między bieżącym przesunięciem konsumenta a najwyższym przesunięciem, stąd jak daleko jest do konsumenta,
  • owner jest client.id konsumenta (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


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow