Ricerca…


introduzione

Kafka offre strumenti da riga di comando per gestire argomenti, gruppi di consumatori, per consumare e pubblicare messaggi e così via.

Importante : gli script della console di Kafka sono diversi per piattaforme basate su Unix e Windows. Negli esempi, potrebbe essere necessario aggiungere l'estensione in base alla piattaforma.

Linux : script situati in bin/ con estensione .sh .

Windows : script situati in bin\windows\ e con estensione .bat .

Kafka-argomenti

Questo strumento ti consente di elencare, creare, modificare e descrivere argomenti.

Elenco argomenti:

kafka-topics  --zookeeper localhost:2181 --list

Crea un argomento:

kafka-topics  --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

crea un argomento con una partizione e nessuna replica.

Descrivi un argomento:

kafka-topics  --zookeeper localhost:2181 --describe --topic test

Modificare un argomento:

# 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

(Attenzione: Kafka non supporta la riduzione del numero di partizioni di un argomento) (consulta questo elenco di proprietà di configurazione )

Kafka-console-produttore

Questo strumento ti consente di produrre messaggi dalla riga di comando.

Invia messaggi di stringa semplici a un argomento:

kafka-console-producer --broker-list localhost:9092 --topic test
here is a message
here is another message
^D

(ogni nuova riga è un nuovo messaggio, digita ctrl + D o ctrl + C per interrompere)

Invia messaggi con le chiavi:

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

Invia messaggi da un file:

kafka-console-producer --broker-list localhost:9092 --topic test_topic < file.log

Kafka-console-consumer

Questo strumento ti consente di consumare messaggi da un argomento.

per usare la vecchia implementazione consumer, sostituire --bootstrap-server con --zookeeper .

Mostra semplici messaggi:

kafka-console-consumer --bootstrap-server localhost:9092 --topic test 

Consuma vecchi messaggi:

Per vedere i vecchi messaggi, puoi usare l'opzione --from-beginning .

Visualizza i messaggi valore-chiave :

kafka-console-consumer  --bootstrap-server localhost:9092 --topic test-topic \
    --property print.key=true \
    --property key.separator=, 

kafka-semplice-consumer-shell

Questo consumatore è uno strumento di basso livello che ti consente di utilizzare messaggi provenienti da partizioni, offset e repliche specifici.

Parametri utili:

  • parition : la partizione specifica da cui consumare (predefinito a tutti)
  • offset : l'offset iniziale. Usa -2 per consumare messaggi dall'inizio, -1 per consumare alla fine.
  • max-messages : numero di messaggi da stampare
  • replica : la replica, predefinita per il broker-leader (-1)

Esempio:

kafka-simple-consumer-shell  \
    --broker-list localhost:9092 \
    --partition 1 \
    --offset 4 \
    --max-messages 3 \
    --topic test-topic

visualizza 3 messaggi dalla partizione 1 a partire dall'offset 4 dall'argomento argomento-argomento.

Kafka-consumo-gruppi

Questo strumento ti consente di elencare, descrivere o eliminare gruppi di consumatori. Dai un'occhiata a questo articolo per ulteriori informazioni sui gruppi di consumatori.

se usi ancora la vecchia implementazione consumer, sostituisci --bootstrap-server con --zookeeper .

Elenca gruppi di consumatori:

kafka-consumer-groups  --bootstrap-server localhost:9092 --list
octopus

Descrivi un gruppo di consumatori:

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

Note : nell'output sopra,

  • current-offset è l'ultimo offset impegnato dell'istanza consumer,
  • log-end-offset è l'offset più alto della partizione (quindi, sommando questa colonna si ottiene il numero totale di messaggi per l'argomento)
  • lag è la differenza tra l'attuale compensazione del consumatore e l'offset più alto, quindi quanto è indietro il consumatore,
  • owner è il client.id del consumatore (se non specificato, viene visualizzato uno di default).

Elimina un gruppo di consumatori:

la cancellazione è disponibile solo quando i metadati di gruppo sono memorizzati in zookeeper (vecchia consumer api). Con la nuova API consumer, il broker gestisce tutto, inclusa l'eliminazione dei metadati: il gruppo viene eliminato automaticamente quando scade l'ultimo offset impegnato per il gruppo.

kafka-consumer-groups --bootstrap-server localhost:9092 --delete --group octopus


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow