Habilitando Sistemas baseados em Event Streaming com Kafka, Kubernetes, Debezium e CDC
First Things First – Algumas definições – Event Driven Microservices
“Collection of loosely-coupled, fine-grained services”
Light-weight Communication
Can be deployed independently, scaled independently, tested independently and that has a single responsability.
Synchronous Communication
Asynchronous Communication
(Event Driven)
Microservices
Comunicação centrada
em eventos
Padrão Pub/Sub
Event Streaming Platform
Redução da dependência e acoplamento
Desafios que nos levam ao Event Streaming
OK Vamos Usar Kafka – Mas como?
Como garantir estabilidade do ecossistema Kafka?
Como garantir eficiência na escalabilidade dos consumidores?
Qual a melhor forma de conectar com bases legadas?
Kubernetes
Strimzi Operator
Change Data Capture
Debezium
BENEFÍCIOS
BENEFÍCIOS
BENEFÍCIOS
Como garantir estabilidade do ecossistema Kafka? Kunernetes + Strimzi
O Strimzi fornece operadores para gerenciar um cluster Kafka em execução em um cluster Kubernetes.
CLUSTER OPERATOR
Gerencia os clusters dos seguintes componentes Kafka:
- Kafka (Zookeeper, Entity Operator, Kafka Exporter, Cruise Control)
- Kafka Connnect
- Kafka MirrorMaker
- Kafka Bridge
USER OPERATOR
O Strimzi define um CRD chamado "KafkaUser" que representa um usuário no Kafka. O operador User monitora os objetos KafkaUser e, com base nas alterações ou eventos, executa as ações apropriadas no cluster do Kafka, como criar, atualizar ou excluir usuários e suas credenciais
O uso de CRDs permite que o operador Topic seja integrado perfeitamente à infraestrutura do Kubernetes, aproveitando a automação e as capacidades de gerenciamento do Kubernetes para o Kafka
TOPIC OPERATOR
O Strimzi define um CRD chamado "KafkaTopic" que representa um tópico no Kafka. O operador Topic do Strimzi monitora os objetos KafkaTopic e, com base nas alterações ou eventos, executa as ações apropriadas no cluster do Kafka, como criar, atualizar ou excluir tópicos. O uso de CRDs permite que o operador Topic seja integrado perfeitamente à infraestrutura do Kubernetes, aproveitando a automação e as capacidades de gerenciamento do Kubernetes para o Kafka
Qual a melhor forma de conectar com bases legadas? BDs com CDC + Kafka Connect + Debezium
Como funciona o CDC nos BDs
CDC Log Based+ Kafka
Obrigado
Contato - LinkedIn