Ferramentas Kafka - Tipos de ferramentas Kafka - Arquitetura e componentes Kafka

Índice:

Anonim

Introdução às ferramentas Kafka

O Kafka Tools é uma coleção de várias ferramentas que permitem gerenciar nosso Cluster Kafka. As ferramentas são baseadas principalmente na linha de comando, mas também estão disponíveis ferramentas baseadas na interface do usuário que podem ser baixadas e instaladas.

Podemos usar as ferramentas Kafka para executar várias operações, como:

  • Liste os Clusters Kafka disponíveis e seus corretores, tópicos e consumidores.
  • Pode imprimir as mensagens de vários tópicos na saída padrão. As ferramentas baseadas na interface do usuário podem definitivamente fornecer melhor legibilidade.
  • Adicione e solte tópicos dos corretores.
  • Adicione novas mensagens nas partições.
  • Veja todas as compensações de nossos consumidores.
  • Crie partições dos nossos tópicos.
  • Listar todos os grupos de consumidores, descrever os grupos de consumidores, excluir informações do grupo de consumidores e redefinir as compensações do grupo de consumidores.

Se quisermos usar uma ferramenta baseada na interface do usuário, podemos usar a Kafka Tool, que pode ser baixada da seguinte página da web:

http://www.kafkatool.com/download.html

Este aplicativo está disponível gratuitamente para uso pessoal, mas precisamos adquirir uma licença para uso comercial. O bom disso é sua disponibilidade para sistemas Mac, Windows e Linux.

Os 3 principais tipos de ferramentas Kafka

As ferramentas Kafka são categorizadas em Ferramentas do sistema e Ferramentas de aplicativo.

1. Ferramentas do Sistema

As Ferramentas do sistema podem ser executadas usando a seguinte sintaxe.

Sintaxe:

bin/kafka-run-class.sh package.class - - options

Algumas das ferramentas do sistema são as seguintes:

  • Ferramenta de migração Kafka: Essa ferramenta é usada para migrar o Kafka Broker de uma versão para outra.
  • Verificador de compensação do consumidor: Essa ferramenta pode exibir Grupo de consumidores, tópico, partições, Off-set, logSize, Owner para o conjunto especificado de tópicos e grupo de consumidores.
  • Espelho Maker: Esta ferramenta é usada para espelhar um Kafka Cluster para outro.

2. Ferramentas de Replicação

Essas são ferramentas de design basicamente de alto nível, fornecidas para durabilidade e disponibilidade.

Algumas das ferramentas de replicação são:

  • Ferramenta Criar tópico: essa ferramenta é usada para criar tópicos com o número padrão de partições e o fator de replicação.
  • Ferramenta Listar tópicos: é usada para listar as informações de uma determinada lista de tópicos. O melhor dessa ferramenta é que, se nenhum tópico já estiver disponível na linha de comando, ele consultará o Zookeeper para buscar a lista de tópicos primeiro e depois imprimir as informações sobre eles. Ele lista vários campos, como nome do tópico, partições, líder, réplicas etc.
  • Ferramenta Adicionar Partição: Essa ferramenta é usada para adicionar partições a um tópico necessário para lidar com o crescimento do volume de dados no tópico. Mas observe que, precisamos especificar as partições ao criar o tópico. Essa ferramenta nos permite adicionar réplicas manuais para as partições adicionadas.

3. Ferramentas Diversas

Agora vamos discutir algumas ferramentas diversas:

uma. Ferramenta Kafka-Topics

Esta ferramenta é usada para criar, listar, alterar e descrever tópicos.

Exemplo: Criação de tópico: bin/kafka-topics.sh --zookeeper zk_host:port/chroot --create --topic topic_name --partitions 30 --replication-factor 3 --config x=y

b. Ferramenta Kafka-Console-Consumidor

Essa ferramenta pode ser usada para ler dados de tópicos Kafka e gravá-los na saída padrão

Exemplo: bin/kafka-console-consumer --zookeeper zk01.example.com:8080 --topic topic_name>/code>

c. Ferramenta Kafka-console-produtor

Essa ferramenta pode ser usada para gravar dados em um tópico Kafka da Saída padrão.

Exemplo: bin/kafka-console-producer --broker-list kafka03.example.com:9091 --topic topic_name

d. Ferramenta Kafka-consumer-groups

Essa ferramenta pode ser usada para listar todos os grupos de consumidores, descrever um grupo de consumidores, excluir informações do grupo de consumidores ou redefinir as compensações do grupo de consumidores. Essa ferramenta é usada principalmente para descrever grupos de consumidores e depurar problemas de compensação do consumidor.

Exemplo: Vendo deslocamentos em um cluster não seguro: bin/kafka-consumer-groups --new-consumer --bootstrap-server broker01.example.com:9092 --describe --group group_name

Arquitetura Kafka

Vários componentes das ferramentas Kafka

Os principais componentes do Kafka são os seguintes:

1. Corretor

Cada nó em um Kafka Cluster é um broker que armazena os dados. Normalmente, existem vários corretores para equilibrar a carga corretamente. Um corretor armazena mensagens na forma de tópicos que podem ser acessados ​​por produtores (por escrito) e consumidores (por leitura). Os tópicos são criados para separar os dados de um aplicativo dos outros. Como os corretores são apátridas, eles precisam da ajuda do Zookeeper para manter seu estado de cluster. Um broker pode lidar com TBs de mensagens sem nenhum impacto no desempenho. A eleição do líder do corretor Kafka é feita pelo tratador.

2. Produtor

É a unidade que envia mensagens para os corretores. Pode haver vários produtores gerando dados em uma velocidade muito alta e independentemente um do outro. Os produtores não recebem um aviso dos corretores e enviam dados a uma taxa que pode ser tratada pelos corretores. Eles podem procurar corretores e começar a enviar mensagens assim que os corretores iniciam. O produtor é responsável por escolher qual mensagem atribuir a qual partição dentro do tópico. Isso pode ser feito de maneira round-robin simplesmente para balancear a carga ou pode ser feito de acordo com alguma função de partição semântica (digamos, com base em alguma chave na mensagem).

3. tratador

É a unidade que gerencia e coordena os corretores. O tratador notifica um produtor ou consumidor no caso de adição ou falha de um corretor. Cada intermediário envia solicitações de pulsação para o tratador em um intervalo regular, desde que esteja ativo. O tratador também mantém informações sobre os tópicos e as compensações dos consumidores.

4. Consumidor

É a unidade que lê as mensagens dos tópicos. Um consumidor pode se inscrever e ler em mais de um tópico. Um consumidor pode trabalhar em paralelo com outros consumidores (nesse caso, cada partição será lida por apenas um consumidor), formando um grupo de consumidores. Não funciona em sincronização com os produtores. O Consumidor deve manter quantas mensagens ele leu usando o deslocamento da partição. Se um consumidor aceitar um deslocamento de partição específico, isso implica que já consumiu as mensagens anteriores na partição.

Conclusão

Neste artigo, aprendemos como podemos usar várias ferramentas Kafka para gerenciar nosso cluster Kafka com eficiência. Também aprendemos sobre os vários componentes do ecossistema Kafka e como eles interagem entre si.

Artigos recomendados

Este é um guia para ferramentas Kafka. Aqui discutimos os tipos de ferramentas Kafka, vários componentes do Kafka e a arquitetura Kafka. Você também pode consultar o seguinte artigo para saber mais -

  1. Principais aplicativos Kafka
  2. Explicação da arquitetura de Big Data
  3. Principais ferramentas de ciência de dados
  4. Diferenças entre Kafka e Spark