{"id":19459768,"url":"https://github.com/vakinge/kafka-manager","last_synced_at":"2026-05-15T11:16:27.832Z","repository":{"id":92768351,"uuid":"42905128","full_name":"vakinge/kafka-manager","owner":"vakinge","description":null,"archived":false,"fork":false,"pushed_at":"2015-09-22T02:03:53.000Z","size":1572,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-25T12:23:27.229Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Scala","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vakinge.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-09-22T02:01:50.000Z","updated_at":"2019-02-02T04:31:56.000Z","dependencies_parsed_at":"2023-03-13T17:26:15.616Z","dependency_job_id":null,"html_url":"https://github.com/vakinge/kafka-manager","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/vakinge/kafka-manager","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vakinge%2Fkafka-manager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vakinge%2Fkafka-manager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vakinge%2Fkafka-manager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vakinge%2Fkafka-manager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vakinge","download_url":"https://codeload.github.com/vakinge/kafka-manager/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vakinge%2Fkafka-manager/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33064666,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-13T13:14:54.681Z","status":"online","status_checked_at":"2026-05-15T02:00:06.351Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-10T17:34:00.494Z","updated_at":"2026-05-15T11:16:27.813Z","avatar_url":"https://github.com/vakinge.png","language":"Scala","funding_links":[],"categories":[],"sub_categories":[],"readme":"Kafka Manager\n=============\n\nA tool for managing [Apache Kafka](http://kafka.apache.org).\n\nIt supports the following :\n\n - Manage multiple clusters\n - Easy inspection of cluster state (topics, brokers, replica distribution, partition distribution)\n - Run preferred replica election\n - Generate partition assignments with option to select brokers to use\n - Run reassignment of partition (based on generated assignments)\n - Create a topic with optional topic configs (0.8.1.1 has different configs than 0.8.2+)\n - Delete topic (only supported on 0.8.2+ and remember set delete.topic.enable=true in broker config)\n - Topic list now indicates topics marked for deletion (only supported on 0.8.2+)\n - Batch generate partition assignments for multiple topics with option to select brokers to use\n - Batch run reassignment of partition for multiple topics\n - Add partitions to existing topic\n - Update config for existing topic\n - Optionally enable JMX polling for broker level and topic level metrics.\n\nCluster Management\n\n![cluster](/img/cluster.png)\n\n***\n\nTopic List\n\n![topic](/img/topic-list.png)\n\n***\n\nTopic View\n\n![topic](/img/topic.png)\n\n***\n\nBroker List\n\n![topic](/img/broker-list.png)\n\n***\n\nBroker View\n\n![broker](/img/broker.png)\n\n***\n\nRequirements\n------------\n\n1. [Kafka 0.8.1.1 or 0.8.2.0](http://kafka.apache.org/downloads.html)\n2. [sbt 0.13.x](http://www.scala-sbt.org/download.html)\n3. Java 7+\n\nConfiguration\n-------------\n\nThe minimum configuration is the zookeeper hosts which are to be used for kafka manager state.\nThis can be found in the application.conf file in conf directory.  The same file will be packaged\nin the distribution zip file; you may modify settings after unzipping the file on the desired server.\n\n    kafka-manager.zkhosts=\"my.zookeeper.host.com:2181\"\n\nYou can specify multiple zookeeper hosts by comma delimiting them, like so:\n\n    kafka-manager.zkhosts=\"my.zookeeper.host.com:2181,other.zookeeper.host.com:2181\"\n\nAlternatively, use the environment variable `ZK_HOSTS` if you don't want to hardcode any values.\n\n    ZK_HOSTS=\"my.zookeeper.host.com:2181\"\n\nYou can optionally enable/disable the following functionality by modifying the default list in application.conf :\n\n    application.features=[\"KMClusterManagerFeature\",\"KMTopicManagerFeature\",\"KMPreferredReplicaElectionFeature\",\"KMReassignPartitionsFeature\"]\n\n - KMClusterManagerFeature - allows adding, updating, deleting cluster from Kafka Manager\n - KMTopicManagerFeature - allows adding, updating, deleting topic from a Kafka cluster\n - KMPreferredReplicaElectionFeature - allows running of preferred replica election for a Kafka cluster\n - KMReassignPartitionsFeature - allows generating partition assignments and reassigning partitions\n\nDeployment\n----------\n\nThe command below will create a zip file which can be used to deploy the application.\n\n    sbt clean dist\n\nPlease refer to play framework documentation on production deployment.\n\nIf java is not in your path, or you need to build against a specific java version,\nplease use the following (the example assumes oracle java8):\n\n    $ PATH=/usr/local/oracle-java-8/bin:$PATH \\\n      JAVA_HOME=/usr/local/oracle-java-8 \\\n      /path/to/sbt -java-home /usr/local/oracle-java-8 dist clean\n\nThis ensures that the 'java' and 'javac' binaries in your path are first looked up in the\noracle java8 release. Next, for all downstream tools that only listen to JAVA_HOME, it points\nthem to the oracle java8 location. Lastly, it tells sbt to use the oracle java8 location as\nwell.\n\nStarting the service\n--------------------\n\nAfter extracting the produced zipfile, and changing the working directory to it, you can\nrun the service like this:\n\n    $ bin/kafka-manager\n\nBy default, it will choose port 9000. This is overridable, as is the location of the\nconfiguration file. For example:\n\n    $ bin/kafka-manager -Dconfig.file=/path/to/application.conf -Dhttp.port=8080\n\nAgain, if java is not in your path, or you need to run against a different version of java,\nadd the -java-home option as follows:\n\n    $ bin/kafka-manager -java-home /usr/local/oracle-java-8\n\nPackaging\n---------\n\nIf you'd like to create a Debian or RPM package instead, you can run one of:\n\n    sbt debian:packageBin\n\n    sbt rpm:packageBin\n\nCredits\n-------\n\nLogo/favicon used is from [Apache Kafka](http://kafka.apache.org).\n\nMost of the utils code has been adapted to work with [Apache Curator](http://curator.apache.org) from [Apache Kafka](http://kafka.apache.org).\n\n\nLicense\n-------\n\nApache Licensed. See accompanying LICENSE file.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvakinge%2Fkafka-manager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvakinge%2Fkafka-manager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvakinge%2Fkafka-manager/lists"}