Klaw is fully opensource. 🥳
Klaw is a self-service Apache Kafka® Topic Management/Governance tool/portal. It is a web application which automates the process of creating and browsing Apache Kafka topics, acls, avro schemas, connectors by introducing roles/authorizations to users of various teams of an organization.
With several downloads every week, many more companies which did not adopt a solution, can happily move away from managing Apache Kafka configs in excelsheets, confluence, wiki pages, git etc.
Not required but to get the latest experience we recommend also building the React UI. Latest:
Pre-20th of August 2024
If in doubt of the version you require locally you can see the information in here under engines.
Formatting can be tricky so to keep a consistent java code format throughout we use the spotless maven plugin. Run the below command to format your code changes.
For the versions available, see the tags on this repository.
Topics (approval): Create, Update, Delete, Promote
Acls (approval): Create,Delete
Connectors (approval): Create
Avro Schemas (approval): Create
Topic Overview :
View created, completed, declined, all Topic requests
View created, completed, declined, all Acl requests
View created, completed, declined, all Connector requests
View created, completed, declined, all Avro schema requests
Synchronization (migration) from and to Apache Kafka clusters (Topics, Acls, Schemas and Connectors)
Reconciliation and email notifications on differences between Klaw and Clusters
Restore configuration (topics, acls)
Login
Configure Clusters and Environments
Users, Teams & Authorizations
Topic naming conventions
Excel report (for your team and all teams, depending on the role)
Analytics
Multi tenancy
Apache Kafka Connectivity
Audit
Email notifications when
Help Wizard to setup Klaw
./docs
coral
: ./coral/docs
We encourage everyone to ask question, if you have a question someone else definitely does too.
The Klaw team will cross post questions and answers across both forums. The Klaw Community Support forum, which is hosted and supported by Aiven directly, has more visibility for other interested parties, so we would encourage questions to be asked there. We will respond and answer questions in both GitHub discussions and the Community Forum.
Optional step : For new React UI assets, make sure pnpm is pre installed which is required to build coral assets.
Builds two artifacts core/target/klaw-
and follow steps defined at https://klaw-project.io/docs or run the binaries like below
java -jar core/target/klaw-
java -jar cluster-api/target/cluster-api-
Or run bin/run-klaw.sh for Mac/Linux
make
git clone git@github.com:aiven/klaw.git
make
to install dependencies and setup both Klaw Core and the Klaw-Cluster-Apimake edit-core-config
for Klaw Core or make edit-cluster-api-config
for Klaw-Cluster-APImake run-core
and make run-cluster-api
in different terminal windows or you can run make -j2 run-core run-cluster-api
to execute both (NOTE: this will mix output and make debugging harder)docker
Each official release is available on docker in the two repositories. The klaw-core docker hub page contains an example docker-compose file which will help download and deploy Klaw. The cluster-api can also be found separately on docker hub.
This project also has the ability to build and deploy local docker images using scripts provided in Klaw/docker-scripts .
Klaw is licensed under the Apache license, version 2.0. Full license text is available in the LICENSE.md file.
Please note that the project explicitly does not require a CLA (Contributor License Agreement) from its contributors.
Bug reports and patches are very welcome, please post them as GitHub issues and pull requests at https://github.com/aiven/klaw . Any possible vulnerabilities or other serious issues should be reported directly to the maintainers opensource@aiven.io.
Apache Kafka is either a registered trademark or trademark of the Apache Software Foundation in the United States and/or other countries. All product and service names used in this page are for identification purposes only and do not imply endorsement.
Klaw (formerly Kafkawize) is maintained by, Aiven open source developers.
Recent contributors are listed on the GitHub project page, https://github.com/aiven/klaw/graphs/contributors
Copyright (c) 2024 Aiven Oy and klaw project contributors.