KFn (Kafka Function) is a framework for building serverless Functions for Apache Kafka. It lets you deploy functions written in Java or any JVM based languages, without having to worry about the underlying infrastructure. KFn leverages Kubernetes ressources to make it happen.
It is an alpha software, don't use in production!
- Support any JVM based languages (Java, Clojure, Scala, etc.)
- Package Function in Docker image
- Use the native Kafka Java consumer and producer, no stdin/stdout nor RPC between the Function and Kafka
- Use Custom Ressource Definition in Kubernetes
- Automatic rolling restart when the config changes
- Autoscaling (still in development)
- Should run on any Kubernetes cluster (v1.11 or newer)
- Installing KFn
- Getting Started with KFn Function Deployement
- Deploy advanced KFn Functions
- Build and Deploy your own KFn Function
- kfn-invoker - The KFn invoker used in the container to invoke the Function
- kfn-examples - Examples
- kfn-template - Templates
- It will be possible to connect to secure Kafka cluster only when secrets will be supported by KFn.