akhq
Kafka GUI for Apache Kafka to manage topics, topics data, consumers group, schema registry, connect and more...
Top Related Projects
Quick Overview
AKHQ (Apache Kafka HQ) is a web-based tool for managing and monitoring Apache Kafka clusters. It provides a user-friendly interface for browsing topics, consumer groups, and schemas, as well as performing administrative tasks such as creating topics and managing ACLs.
Pros
- Intuitive web interface for easy Kafka cluster management
- Supports multiple Kafka clusters and authentication methods
- Provides real-time monitoring and alerting capabilities
- Offers schema registry integration and management
Cons
- Requires additional setup and maintenance compared to command-line tools
- May introduce security concerns if not properly configured
- Limited customization options for advanced users
- Potential performance impact on large-scale Kafka clusters
Getting Started
To run AKHQ using Docker:
docker run -p 8080:8080 -e AKHQ_CONFIGURATION='
akhq:
connections:
docker-kafka-server:
properties:
bootstrap.servers: "kafka:9092"
' tchiotludo/akhq
Access the AKHQ web interface at http://localhost:8080
.
For more advanced configurations, create a application.yml
file:
akhq:
connections:
local-kafka-server:
properties:
bootstrap.servers: "localhost:9092"
schema-registry:
url: "http://localhost:8081"
Then run AKHQ with the configuration file:
docker run -p 8080:8080 -v /path/to/application.yml:/app/application.yml tchiotludo/akhq
For detailed setup instructions and configuration options, refer to the official documentation at https://akhq.io/docs/.
Competitor Comparisons
Open-Source Web UI for Apache Kafka Management
Pros of kafka-ui
- More modern and intuitive user interface
- Better support for Kafka Connect and Schema Registry
- Active development with frequent updates and new features
Cons of kafka-ui
- Less mature project with potential stability issues
- Fewer advanced features for topic and consumer group management
- Limited support for older Kafka versions
Code Comparison
kafka-ui (React-based frontend):
const TopicList = () => {
const { data, isLoading } = useTopics();
return (
<Table>
{data.map(topic => (
<TopicRow key={topic.name} topic={topic} />
))}
</Table>
);
};
AKHQ (Vue.js-based frontend):
<template>
<div class="topic-list">
<table>
<tr v-for="topic in topics" :key="topic.name">
<td>{{ topic.name }}</td>
</tr>
</table>
</div>
</template>
Both projects use modern frontend frameworks, but kafka-ui's React-based approach may offer better performance and maintainability for complex UIs. AKHQ's Vue.js implementation is simpler and potentially easier for newcomers to understand.
Kafka Web UI
Pros of Kafdrop
- Lightweight and easy to set up
- Simple, intuitive user interface
- Supports viewing consumer group information
Cons of Kafdrop
- Limited features compared to AKHQ
- Less active development and community support
- Lacks advanced management capabilities
Code Comparison
Kafdrop (Java):
@GetMapping("/topic/{name:.+}")
public String topicDetails(@PathVariable("name") String topicName,
@RequestParam(value = "view", required = false) String view,
Model model) {
final var topic = kafkaMonitor.getTopic(topicName)
.orElseThrow(() -> new TopicNotFoundException(topicName));
model.addAttribute("topic", topic);
model.addAttribute("consumers", kafkaMonitor.getConsumers(topic));
return "topic-detail";
}
AKHQ (Kotlin):
@Get("/{cluster}/topic/{topicName}")
fun topic(cluster: String, topicName: String): HttpResponse<Any> {
val topic = topicRepository.findByName(cluster, topicName)
val data = topicRepository.getData(cluster, topicName, Optional.empty(), Optional.empty(), 100)
return HttpResponse.ok(
mapOf(
"topic" to topic,
"data" to data
)
)
}
Both repositories provide web-based management interfaces for Apache Kafka. Kafdrop offers a simpler, more lightweight solution, while AKHQ provides a more comprehensive set of features and management capabilities. The code comparison shows similar approaches to handling topic details, with AKHQ using Kotlin and offering more flexibility in its implementation.
CMAK is a tool for managing Apache Kafka clusters
Pros of CMAK
- More mature project with longer development history
- Wider adoption and larger community support
- Extensive documentation and user guides
Cons of CMAK
- Less frequent updates and slower development cycle
- More complex setup and configuration process
- Heavier resource usage, especially for large Kafka clusters
Code Comparison
CMAK (Scala):
def getClusterContext(clusterName: String): KafkaAdminClient = {
kafkaAdminClientMap.getOrElseUpdate(clusterName, {
KafkaAdminClient(KafkaAdminClientActorConfig(clusterName, config))
})
}
AKHQ (Java):
@Inject
public KafkaModule(KafkaConfiguration kafkaConfiguration) {
this.kafkaConfiguration = kafkaConfiguration;
this.clustersMap = new ConcurrentHashMap<>();
}
Both projects aim to provide management and monitoring tools for Apache Kafka clusters. CMAK, formerly known as Kafka Manager, offers a more established solution with broader community support. However, AKHQ provides a more modern and lightweight alternative with a focus on ease of use and frequent updates. The code comparison shows different approaches to managing Kafka client connections, with CMAK using Scala and AKHQ using Java.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
AKHQ (previously known as KafkaHQ)
Kafka GUI for Apache Kafka to manage topics, topics data, consumers group, schema registry, connect and more...
Documentation
- The official AKHQ documentation can be found under: akhq.io
From AKHQ project creator
Who's using AKHQ
- Archer Aviation
- Adeo
- Avlino
- Auchan Retail
- BARMER
- Bell
- Best buy
- BMW Group
- Boulanger
- BPCE-IT
- CEVA Logistics
- Decathlon
- Depop
- Doximity
- Fresha
- Galeries Lafayette
- GetYourGuide
- GrtGaz
- Kitopi
- Klarna
- La Redoute
- Leroy Merlin
- MAIF
- ManoMano
- NEXT Technologies
- Nuxeo
- Pipedrive
- TUI
- TVG
- Vodeno
- Baloise
- Michelin
Credits
Many thanks to:
- JetBrains for their free OpenSource license.
- Apache, Apache Kafka, Kafka, and associated open source project names are trademarks of the Apache Software Foundation. AKHQ is not affiliated with, endorsed by, or otherwise associated with the Apache Software.
License
Apache 2.0 © tchiotludo
Top Related Projects
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot