AutoMQ is a stateless Kafka on S3. 10x Cost-Effective. No Cross-AZ Traffic Cost. Autoscale in seconds. Single-digit ms latency. Multi-AZ Availability.
Here are some of our major customers worldwide using AutoMQ.
[!Tip]
Deploying a production-ready AutoMQ cluster is challenging. This Quick Start is only for evaluating AutoMQ features and is not suitable for production use. For production deployment best practices, please contact our community for support.
The docker/docker-compose.yaml
file provides a simple single-node setup for quick evaluation and development:
docker compose -f docker/docker-compose.yaml up -d
This setup features a single AutoMQ node serving as both controller and broker, alongside MinIO for S3 storage. All services operate within a Docker bridge network called automq_net
, allowing you to start a Kafka producer in this network to test AutoMQ:
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"
After testing, you can destroy the setup with:
docker compose -f docker/docker-compose.yaml down
The docker/docker-compose-cluster.yaml
file offers a more complex setup with three AutoMQ nodes, ideal for testing AutoMQ’s cluster features, and can be run in the same way.
There are more deployment options available:
Table Topic is a new feature in AutoMQ that combines stream and table functionalities to unify streaming and data analysis. Currently, it supports Apache Iceberg and integrates with catalog services such as AWS Glue, HMS, and the Rest catalog. Additionally, it natively supports S3 tables, a new AWS product announced at the 2024 re:Invent. Learn more.
AutoMQ is a stateless Kafka alternative that runs on S3 or any S3-compatible storage, such as MinIO. It is designed to address two major issues of Apache Kafka. First, Kafka clusters are difficult to scale out or in due to the stateful nature of its brokers. Data movement is required, and even reassigning partitions between brokers is a complex process. Second, hosting Kafka in the cloud can be prohibitively expensive. You face high costs for EBS storage, cross-AZ traffic, and significant over-provisioning due to Kafka’s limited scalability.
Here are some key highlights of AutoMQ that make it an ideal choice to replace your Apache Kafka cluster, whether in the cloud or on-premise, as long as you have S3-compatible storage:
AutoMQ is a fork of the open-source Apache Kafka. We’ve introduced a new storage engine based on object storage, transforming the classic shared-nothing architecture into a shared storage architecture.
Regarding the architecture of AutoMQ, it is fundamentally different from Kafka. The core difference lies in the storage layer of Apache Kafka and how we leverage object storage to achieve a stateless broker architecture. AutoMQ consists of below key components:
For more on AutoMQ’s architecture, visit AutoMQ Architecture or explore the source code directly.
Star AutoMQ on GitHub for instant updates on new releases.
You can join the following groups or channels to discuss or ask questions about AutoMQ:
If you’ve found a problem with AutoMQ, please open a GitHub Issues.
To contribute to AutoMQ please see Code of Conduct and Contributing Guide.
We have a list of good first issues that help you to get started, gain experience, and get familiar with our contribution process.
The enterprise edition of AutoMQ offers a robust, user-friendly control plane for seamless cluster management, with enhanced availability and observability over the open-source version. Additionally, we offer Kafka Linking for zero-downtime migration from any Kafka-compatible cluster to AutoMQ.
Contact us for more information about the AutoMQ enterprise edition, and we’ll gladly assist with your free trial.
AutoMQ is under the Apache 2.0 license. See the LICENSE file for details.
Apache®, Apache Kafka®, Kafka®, Apache Iceberg®, Iceberg® and associated open source project names are trademarks of the Apache Software Foundation