VKitM is a Apache Kafka proxy which uses the native Kafka protocol.
Its name is due to how it has been designed: the application acts as an intermediary between the Kafka client and the Kafka cluster, modifying the requests and responses from/to the client. Actually, the client thinks that the connection is to a Kafka cluster (by now, with one node) and doesn't know what's behind (an entirely Kafka cluster).
Right now, the implementation includes a subset of the API Keys but can produce and consume messages.
You can find the source code at GitHub.
DISCLAIMER: This application has been implemented in order to provide another option when a proxy is required. If you use VKitM with a different purpose from the one has been designed it's under your own responsibility.
There are multiple Kafka proxies out there but most of them are HTTP REST based. A well-known REST Proxy is this one.
However, most of them lack of some of the following features I'd like to provide in VKitM:
docker run -p <HOST_PORT>:<CONTAINER_PORT> -v /path/to/conf/directory:/vkitm/conf mmolimar/vkitm
NOTE: path /path/to/conf/directory must contain a file named application.conf with the VKitM configuration.
server {
listeners = "PLAINTEXT://0.0.0.0:19092"
num.network.threads = 3
num.io.threads = 8
zookeeper.connect = "<HOST_ZK_IP>:<HOST_ZK_PORT>"
zookeeper.connection.timeout.ms = 6000
}
producer {
bootstrap.servers = "<HOST_KAFKA_IP>:<HOST_KAFKA_PORT>"
compression.type = "none"
}
consumer {
zookeeper.connect = "<HOST_ZK_IP>:<HOST_ZK_PORT>"
zookeeper.connection.timeout.ms = 6000
group.id = "consumer-group"
}
Content type
Image
Digest
Size
71.7 MB
Last updated
over 9 years ago
docker pull mmolimar/vkitm:0.1