Repolode
AutoMQ

AutoMQ/automq

Sistema de streaming stateless compatível com Kafka, que armazena dados no S3 ou em armazenamento de objetos compatível, em vez de discos locais.

Alternativa open source a:Amazon MSKConfluent Cloud

Estrelas
10,917
Forks
797
Issues abertas
66
Último commit
há 10 horas

O que é?

O AutoMQ é um fork do Apache Kafka que substitui a camada de armazenamento em disco local por armazenamento de objetos, como Amazon S3 ou MinIO. Os brokers não mantêm estado persistente, então não é preciso mover partições quando o cluster aumenta ou diminui, e o projeto afirma que o processo leva segundos.

O projeto é voltado a equipes que executam Kafka na nuvem e enfrentam custos elevados de armazenamento EBS, cobranças por tráfego entre zonas de disponibilidade (AZs) e excesso de provisionamento. Um write-ahead log (WAL) e camadas de cache (LogCache, BlockCache) mantêm eficientes os caminhos de escrita e leitura enquanto os dados ficam no armazenamento de objetos. Um auto-balancer integrado move tráfego e partições entre brokers, dispensando uma ferramenta separada, como o Cruise Control. Um roteador com reconhecimento de rack direciona os clientes de cada zona de disponibilidade aos metadados de partição locais para evitar cobranças por tráfego entre AZs na AWS e no GCP.

O AutoMQ é 100% compatível com o protocolo Kafka e exporta métricas do Prometheus e do OpenTelemetry. A edição open source usa o S3 diretamente por padrão, o que, segundo o projeto, acrescenta centenas de milissegundos de latência; latência de poucos milissegundos está disponível na edição enterprise. Há arquivos Docker Compose para ambientes de avaliação com um ou três nós.

Recursos principais

  • 01Compatível com o protocolo Kafka, com a camada de armazenamento do Kafka substituída por armazenamento de objetos compatível com S3.
  • 02Brokers stateless que aumentam ou diminuem sem movimentar os dados das partições.
  • 03Auto-balancer integrado que redistribui partições e tráfego entre brokers.
  • 04Roteamento com reconhecimento de rack para evitar cobranças por tráfego entre AZs na AWS e no GCP.
  • 05Exportação de métricas do Prometheus e do OpenTelemetry.
  • 06Configurações do Docker Compose para avaliação com um ou três nós.

Casos de uso

  • Substituir um cluster Apache Kafka autogerenciado na nuvem para reduzir custos de armazenamento e de tráfego entre AZs.
  • Executar cargas de trabalho de streaming que exigem escalabilidade frequente diante de tráfego variável.
  • Usar clientes Kafka com um backend compatível com S3 no local, como o MinIO.
  • Avaliar streaming compatível com Kafka em uma máquina local antes de uma implantação em produção.

Início rápido

  1. 1

    Baixe o arquivo do Docker Compose e inicie a configuração de nó único

    curl -O https://raw.githubusercontent.com/AutoMQ/automq/refs/tags/1.5.5/docker/docker-compose.yaml && docker compose -f docker-compose.yaml up -d
  2. 2

    Execute um teste de produtor Kafka com o AutoMQ na rede do Docker

    docker run --network automq_net automqinc/automq:latest /bin/bash -c "/opt/automq/kafka/bin/kafka-producer-perf-test.sh --topic test-topic --num-records=1024000 --throughput 5120 --record-size 1024 --producer-props bootstrap.servers=server1:9092 linger.ms=100 batch.size=524288 buffer.memory=134217728 max.request.size=67108864"
  3. 3

    Pare e remova a configuração após o teste

    docker compose -f docker-compose.yaml down

Antes de usar

  • O início rápido é apenas para avaliação e não é adequado para uso em produção.
  • A operação padrão no S3 oferece latência de centenas de milissegundos; latência de um dígito em milissegundos está disponível na versão Enterprise.
  • Requer Docker, Docker Compose v2, pelo menos 4 GB de RAM e as portas 9092 e 9000 livres.

Tópicos

Perguntas frequentes

O que é automq?
Sistema de streaming stateless compatível com Kafka, que armazena dados no S3 ou em armazenamento de objetos compatível, em vez de discos locais. O AutoMQ é um fork do Apache Kafka que substitui a camada de armazenamento em disco local por armazenamento de objetos, como Amazon S3 ou MinIO. Os brokers não mantêm estado persistente, então não é preciso mover partições quando o cluster aumenta ou diminui, e o projeto afirma que o processo leva segundos.
automq é gratuito? Qual é a licença?
automq é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
automq ainda é mantido?
Manutenção ativa. O último commit de automq foi em 19 de out. de 2026.
Para que posso usar automq?
Substituir um cluster Apache Kafka autogerenciado na nuvem para reduzir custos de armazenamento e de tráfego entre AZs. Executar cargas de trabalho de streaming que exigem escalabilidade frequente diante de tráfego variável. Usar clientes Kafka com um backend compatível com S3 no local, como o MinIO. Avaliar streaming compatível com Kafka em uma máquina local antes de uma implantação em produção.
Como instalar automq?
Baixe o arquivo do Docker Compose e inicie a configuração de nó único: curl -O https://raw.githubusercontent.com/AutoMQ/automq/refs/tags/1.5.5/docker/docker-compose.yaml && docker compose -f docker-compose.yaml up -d Execute um teste de produtor Kafka com o AutoMQ na rede do Docker: docker run --network automq_net automqinc/automq:latest /bin/bash -c "/opt/automq/kafka/bin/kafka-producer-perf-test.sh --topic test-topic --num-records=1024000 --throughput 5120 --record-size 1024 --producer-props bootstrap.servers=server1:9092 linger.ms=100 batch.size=524288 buffer.memory=134217728 max.request.size=67108864" Pare e remova a configuração após o teste: docker compose -f docker-compose.yaml down
Onde consigo automq?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/AutoMQ/automq

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados