Required
- Linux x86_64
- Java 11
- PostgreSQL 14 or newer
- a correctly configured Kerberos client environment on the host
- network access to PostgreSQL and Kafka
KafkaKombat is a free Kafka UI and Kafka manager for Apache Kafka in Kerberos-based environments. This page collects the practical startup flow: what to prepare in advance, how to install the server distribution, and where to begin if you want Kubernetes packaging through Helm
KafkaKombat is designed for infrastructure where Kerberos is a mandatory part of the access model, not for arbitrary stand-alone demos
KafkaKombat is intended for Apache Kafka environments where Kerberos is not optional, but part of the real production access model. In practice this means SASL/GSSAPI-capable Kafka client runtime, valid krb5.conf, working ticket handling and a deployment model where ordinary UI requests are executed in the Kerberos context of the logged-in user. The product is already used in development and production environments with multiple Kerberos-protected Kafka clusters.
Create the system user and target directory in advance. The installer expects this part to be ready
sudo useradd -r -m -d /opt/kafkakombat kafkakombat
sudo mkdir -p /opt/kafkakombat
sudo chown -R kafkakombat:kafkakombat /opt/kafkakombatBefore running the installer, the PostgreSQL database and user must already exist. Validate connectivity and credentials separately
CREATE USER kafkakombat_admin WITH PASSWORD 'XXXXXXXXXXXXXX';
CREATE DATABASE kafkakombat OWNER kafkakombat_admin;
GRANT ALL PRIVILEGES ON DATABASE kafkakombat TO kafkakombat_admin;KafkaKombat works only in Kerberos-based environments. The host must have a valid krb5.conf, principal, keytab, and working connectivity to the KDC
sudo install -d -m 700 /opt/kafkakombat/security
sudo cp /secure/path/kafkakombat.keytab /opt/kafkakombat/security/
sudo chown kafkakombat:kafkakombat /opt/kafkakombat/security/kafkakombat.keytab
sudo chmod 600 /opt/kafkakombat/security/kafkakombat.keytabThe main installation input usually lives in install/install.config. The installer uses it to generate the final runtime configuration and service files
APP_USER=kafkakombat
APP_GROUP=kafkakombat
JAVA_HOME=/usr/lib/jvm/jdk-11
HTTP_PORT=18999
DB_DRIVER=org.postgresql.Driver
DB_URL=jdbc:postgresql://pg.example.com/kafkakombat
DB_USER=kafkakombat_admin
DB_PASSWORD=CHANGE_ME_DATABASE_PASSWORD
KERBEROS_KRB5CONF_PATH=/etc/krb5.conf
KERBEROS_USER_PRINCIPAL_TEMPLATE={0}@EXAMPLE.COM
KERBEROS_SERVICE_PRINCIPAL=kafka/host.example.com@EXAMPLE.COM
KERBEROS_SERVICE_KEYTAB_SOURCE=/path/to/source/service.keytab
DIRECTORY_URL=ldaps://ldap.example.com:636
DIRECTORY_BIND_DN=uid=service-account,cn=users,cn=accounts,dc=example,dc=com
DIRECTORY_BIND_PASSWORD=CHANGE_ME_DIRECTORY_BIND_PASSWORDAfter installation, secrets should not remain exposed in the working directory. Protect the installation file or remove it after a successful run
The installer prepares the runtime layout, generates the final configuration, creates service files, and can apply SQL schema or DB patches
cd /opt/kafkakombat/install
./install.shAfter installation, validate the application startup, UI accessibility, PostgreSQL connectivity, and the basic Kafka integration path
bin/kafkakombat-service.sh start
bin/kafkakombat-service.sh status
bin/kafkakombat-service.sh restart
bin/kafkakombat-service.sh stopThis helps set the right expectations and keeps infrastructure preparation outside the installer itself
The Helm chart is published as an environment-neutral deployment baseline. It is a good fit when you already have a Kubernetes operating model and a clear secrets delivery approach
install.config into a Kubernetes Secrethelm lint .
helm template kafkakombat . -f values.example.yaml
helm install kafkakombat . -f values.example.yaml --namespace kafkakombat --create-namespaceIf you are evaluating the project for the first time, start with the regular Linux installation flow: validate Kerberos, PostgreSQL, the baseline login path, and Kafka access from the UI. The Helm chart is usually the next step once the application behavior is already confirmed in your environment. Both the server distribution and the Helm chart are available free of charge