Use Kafdrop Web UI with Aiven for Apache Kafka®
Kafdrop is a popular Web UI for Apache Kafka® that allows you to monitor a cluster, view topics and consumer groups with integration into the Schema Registry, with support for Avro, JSON and Protobuf.
Retrieve Aiven for Apache Kafka® SSL certificate files
Aiven for Apache Kafka® by default enables TLS security. The certificates can be manually downloaded from the service overview page in the Aiven console, or via the dedicated Aiven CLI command.
Setup a Kafdrop configuration file
Kafdrop supports both SASL and SSL authentication methods. The following example shows the SSL version which requires a keystore and truststore that can be created following the dedicated documentation.
Once the keystore and truststore are created, you can define a Kafdrop
configuration file named kafdrop.properties
with the following
content, replacing the KEYSTORE_PWD
and TRUSTSTORE_PWD
with the
keystore and truststore passwords respectively:
security.protocol=SSL
ssl.keystore.password=KEYSTORE_PWD
ssl.keystore.type=PKCS12
ssl.truststore.password=TRUSTSTORE_PWD
Run Kafdrop on Docker
You can run Kafdrop in a Docker/Podman container with the following
command, by replacing the KAFKA_SERVICE_URI
with the Aiven for Apache
Kafka® service URI available in the service Overview tab of the Aiven
console, and the client.truststore.jks
and client.keystore.p12
with
the keystores and truststores file names:
docker run -p 9000:9000 \
-e KAFKA_BROKERCONNECT=KAFKA_SERVICE_URI \
-e KAFKA_PROPERTIES="$(cat kafdrop.properties | base64)" \
-e KAFKA_TRUSTSTORE="$(cat client.truststore.jks | base64)" \
-e KAFKA_KEYSTORE="$(cat client.keystore.p12 | base64)" \
obsidiandynamics/kafdrop
If you're also interested in Kafdrop to de-serialize Avro messages
using Karapace schema registry, add
the following two lines to the docker run
command:
-e SCHEMAREGISTRY_AUTH="avnadmin:SCHEMA_REGISTRY_PWD" \
-e SCHEMAREGISTRY_CONNECT="https://SCHEMA_REGISTRY_URI" \
Replace, in the above, the SCHEMA_REGISTRY_PWD
with the schema
registry password and SCHEMA_REGISTRY_URI
with the schema registry URI
that you can find in the Aiven console
service Overview page.
Use Kafdrop
Once Kafdrop starts, you should be able to access it at localhost:9000
You can perform the following tasks with Kafdrop over an Aiven for Apache Kafka® service:
- View and search topics
- Create and delete topics
- View brokers
- view messages