Kafka na plataforma
O Kafka é o sistema de filas que fica por baixo de toda pipeline. Para usar pipelines você não precisa saber nada dele — os tópicos são criados automaticamente. A área Kafka do console existe para quem precisa de controle direto: administrar os clusters, inspecionar tópicos ou usar conectores do ecossistema Kafka Connect.
Brokers
Um broker é o cluster Kafka em si — o serviço que guarda as mensagens. Em Kafka → Brokers você cria e acompanha os clusters da sua empresa: quantos nós, quanto disco, qual o estado de saúde de cada um.
Toda pipeline precisa de um broker para funcionar, já que é nele que os tópicos das peças vivem.
Tópicos
Platform → Tópicos lista todos os tópicos do broker, incluindo os que as pipelines criaram sozinhas. Para cada um você vê o número de partições, quanto dado está retido e quanto cada grupo de consumo ainda tem para ler.
Essa última informação — o lag — é a medida mais direta de saúde de uma integração: lag perto de zero significa que o Output está acompanhando o Input.
Kafka Connect não é Input/Output
Esta é a confusão mais comum da plataforma, então vale ser direto:
| Input / Output | Kafka Connect | |
|---|---|---|
| O que é | Peças de uma pipeline | Mecanismo do ecossistema Kafka para mover dados |
| Onde fica | Platform → Pipelines | Kafka → Kafka Connect e Platform → Conectores |
| Como se configura | No editor visual da pipeline | Como um conector, com sua própria configuração |
| Quando usar | Sempre que houver um Input/Output para o sistema | Só quando não houver |
São dois caminhos diferentes para o mesmo objetivo. Um Output de PostgreSQL não tem nada a ver com um conector JDBC do Kafka Connect, embora ambos gravem em banco.
As telas da área Kafka Connect:
| Tela | Para que serve |
|---|---|
| Kafka Connect | Cria e administra os clusters que executam os conectores |
| Conexões | Cadastra as conexões com os sistemas externos |
| Plugins | Instala os conectores disponíveis no cluster |
| Conectores (em Platform) | Cria e acompanha cada conector em execução |
Pipeline ou Kafka Connect?
Use Pipeline. Esta é a resposta na quase totalidade dos casos, e não é uma preferência de estilo — é o caminho que a plataforma suporta de ponta a ponta.
Kafka Connect fica reservado para uma única situação: quando não existe um Input ou Output para o sistema que você precisa integrar. Se existe, use pipeline.
Por que pipeline é melhor
| O que você ganha | |
|---|---|
| Configuração visual | Você monta arrastando peças e preenchendo campos com nome e explicação. Não há JSON de conector para escrever nem propriedade para descobrir na documentação de terceiros. |
| Validação antes de subir | O desenho é conferido na publicação, e cada peça confere a própria configuração ao subir — tabela que não existe, chave sem índice único, credencial inválida. O erro aparece na hora, com a mensagem do que está errado. |
| Observabilidade integrada | Métricas, logs, lag por tópico e estado de cada peça, na mesma tela, sem configurar nada. |
| Transformação no meio do caminho | Um Transform resolve filtro, conversão e enriquecimento com código Go próprio. No Kafka Connect isso exige encadear transformações de terceiros. |
| Versionamento e rollback | Cada publicação gera uma versão, registrada em Git, e uma versão anterior pode ser republicada. Veja Publicar uma pipeline. |
| Escala automática | Cada peça escala sozinha conforme o volume. |
| Secrets integrados | Credenciais vêm do cofre pelo nome, sem valor em arquivo de configuração. |
| Suporte | É o caminho que a equipe da plataforma acompanha e evolui. Um conector da comunidade depende do mantenedor dele. |
E se o que eu preciso não estiver na lista?
Antes de partir para o Kafka Connect, vale checar duas saídas que costumam resolver:
- Um Transform pode falar com o sistema por conta própria — ele é código Go, então uma chamada HTTP a uma API resolve muitos casos.
- O Output HTTP entrega em qualquer sistema que aceite uma requisição.
Se mesmo assim não houver caminho, aí sim use Kafka Connect — e vale abrir um pedido para o Input ou Output que faltou.
Conexões Kafka
Os Inputs e Outputs de Kafka podem apontar para um cluster diferente do padrão da pipeline. Esse cluster externo é cadastrado em Kafka → Conexões e depois escolhido pelo nome na configuração da peça — é assim que se lê de um Kafka de outro time ou se publica para fora.
A conexão escolhida na peça é o padrão. Ela pode ser sobrescrita por uma variável na aba Variáveis do deploy, o que permite apontar a mesma pipeline para clusters diferentes em homologação e em produção sem mexer no desenho. Veja Publicar uma pipeline.