Coletor de Dados Kafka
O Data Infrastructure Insights usa esse coletor de dados para coletar métricas do Kafka.
Instalação
-
Em Observabilidade > Coletores, clique em +Coletor de Dados. Escolha Kafka.
Selecione o sistema operacional ou plataforma na qual o agente Telegraf está instalado.
-
Se você ainda não instalou um Agente para coleta ou deseja instalar um Agente para um Sistema Operacional ou Plataforma diferente, clique em Mostrar Instruções para expandir o"Instalação do agente" instruções.
-
Selecione a Chave de Acesso do Agente para uso com este coletor de dados. Você pode adicionar uma nova Chave de Acesso do Agente clicando no botão + Chave de Acesso do Agente. Prática recomendada: use uma chave de acesso de agente diferente somente quando quiser agrupar coletores de dados, por exemplo, por sistema operacional/plataforma.
-
Siga as etapas de configuração para configurar o coletor de dados. As instruções variam dependendo do tipo de sistema operacional ou plataforma que você está usando para coletar dados.
Configurar
O plugin Kafka é baseado no plugin Jolokia do Telegraf. Como requisito para coletar informações de todos os corretores do Kafka, o JMX precisa ser configurado e exposto via Jolokia em todos os componentes.
Compatibilidade
A configuração foi desenvolvida no Kafka versão 0.11.0.2.
Configurando
Todas as instruções abaixo pressupõem que o local de instalação do kafka seja '/opt/kafka'. Você pode adaptar as instruções abaixo para refletir seu local de instalação.
Agente Jolokia Jar
Uma versão do arquivo jar do agente Jolokia deve ser"baixado" . A versão testada foi o agente Jolokia 1.6.0.
As instruções abaixo pressupõem que o arquivo jar baixado (jolokia-jvm-1.6.0-agent.jar) esteja no local '/opt/kafka/libs/'.
Corretores Kafka
Para configurar o Kafka Brokers para expor a API Jolokia, você pode adicionar o seguinte em <KAFKA_HOME>/bin/kafka-server-start.sh, logo antes da chamada 'kafka-run-class.sh':
export JMX_PORT=9999 export RMI_HOSTNAME=`hostname -I` export KAFKA_JMX_OPTS="-javaagent:/opt/kafka/libs/jolokia-jvm-1.6.0-agent.jar=port=8778,host=0.0.0.0 -Dcom.sun.management.jmxremote.password.file=/opt/kafka/config/jmxremote.password -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=$RMI_HOSTNAME -Dcom.sun.management.jmxremote.rmi.port=$JMX_PORT"
Observe que o exemplo acima está usando 'hostname -I' para configurar a variável de ambiente 'RMI_HOSTNAME'. Em máquinas com vários IPs, isso precisará ser ajustado para coletar o IP desejado para conexões RMI.
Você pode escolher uma porta diferente para JMX (9999 acima) e Jolokia (8778). Se você tiver um IP interno para bloquear o Jolokia, você pode substituir o "catch all" 0.0.0.0 pelo seu próprio IP. Observe que este IP precisa ser acessível pelo plugin Telegraf. Você pode usar a opção '-Dcom.sun.management.jmxremote.authenticate=false' se não quiser autenticar. Use por sua conta e risco.
Objetos e Contadores
Os seguintes objetos e seus contadores são coletados:
Objeto: | Identificadores: | Atributos: |
---|---|---|
Corretor Kafka |
Agente de namespace de cluster |
Nome do nó IP do nó |
Solução de problemas
Informações adicionais podem ser encontradas em"Apoiar" página.