For a serverless framework for Kubernetes, the first results are alexellis/faas, apache/openwhisk (OpenWhisk is a mature, open-source FaaS platform designed to run on Kubernetes, supporting polyglot runtimes, event-driven triggers, auto-scaling including scale-to-zero, and observability—precisely the self-hosted serverless computing setup you need) and vmware-archive/kubeless. fission/fission and nuclio/nuclio round out the shortlist. Compare the match explanations and check the project documentation against your requirements.
Self-hosted frameworks and runtimes for deploying event-driven functions directly within your existing Kubernetes cluster infrastructure.
This project is a Kubernetes serverless framework and OCI container function platform. It provides a system for deploying event-driven functions and microservices as compatible container images onto a Kubernetes cluster. The platform includes an event-driven function orchestrator that triggers executions via HTTP requests or message streams. It features an auto-scaling function manager that adjusts the number of active instances based on real-time demand and scales down to zero during inactivity. A background queuing system is included to process asynchronous tasks and maintain application re
OpenFaaS (this repo) is a mature, Kubernetes-native serverless framework that handles HTTP and event-driven function triggers, auto-scales to zero, supports container-based multi-language runtimes, integrates via CRDs, and provides observability — directly matching your requirements for a self-hosted FaaS platform on Kubernetes.
OpenWhisk is a serverless cloud platform designed for deploying and executing stateless functions in response to API calls or events. It serves as a complete serverless stack, providing an API gateway for functions, a function-as-a-service runtime manager, and an event-driven workflow engine. The platform distinguishes itself through a polyglot execution model that supports multiple language runtimes and allows for the creation of custom runtimes using Docker containers. It enables complex logic through function orchestration and composition, allowing multiple functions to be chained into seq
OpenWhisk is a mature, open-source FaaS platform designed to run on Kubernetes, supporting polyglot runtimes, event-driven triggers, auto-scaling (including scale-to-zero), and observability—precisely the self-hosted serverless computing setup you need.
Kubeless is a Kubernetes-native serverless framework that deploys and runs stateless functions as custom resources managed by an in-cluster controller. It functions as a Function-as-a-Service platform, launching function runtime pods on demand and scaling them to zero when idle to optimise resource usage. Functions are invoked automatically through HTTP requests or a publish-subscribe messaging bus, enabling event-driven execution for workloads and microservices. The platform supports running functions written in Golang, Python, Node.js, Ruby, PHP, .NET, and Ballerina, with the ability to add
Kubeless is a Kubernetes-native FaaS platform that runs functions as custom resources with scale-to-zero, HTTP/pub-sub triggers, and support for multiple languages, directly matching the core requirements, though it lacks a built-in function registry and built-in observability tooling.
Fission is a function-as-a-service platform and serverless framework for Kubernetes. It manages the lifecycle and execution of code snippets as serverless functions, providing an orchestrator that triggers these functions based on HTTP requests, message queues, or scheduled events. The platform features a cold-start optimized runtime that utilizes warm container pools and dynamic loaders to achieve millisecond execution. It includes a native autoscaler to adjust the number of function instances based on real-time traffic demand and supports canary release testing to split incoming traffic bet
Fission is a self-hosted FaaS platform designed specifically for Kubernetes, with event-driven triggers (HTTP, queues, schedules), built-in autoscaling (including scale-to-zero via warm-pool optimization), multi-language runtimes, and Kubernetes-native deployment — directly matching the request for managing serverless functions on your own cluster.
Nuclio is a high-performance serverless framework designed for Kubernetes that automatically executes user functions when events arrive from HTTP endpoints, message queues, or streaming data platforms. It processes hundreds of thousands of events per second per function instance through efficient parallel workers, and can allocate functions to run on either CPU or GPU hardware to match workload requirements for data processing or machine learning tasks. The platform scales function instances down to zero when idle and wakes them on demand based on incoming event load, while providing an event
Nuclio is a Kubernetes-native serverless framework that auto-scales function instances to zero, triggers from HTTP and streaming sources, and supports CPU/GPU execution—directly meeting the need for a self-hosted FaaS platform with event-driven triggers and scale-to-zero.
OpenFaaS is a serverless function platform that provides a container-native framework for deploying and managing event-driven code. It functions as an abstraction layer over container orchestrators, allowing developers to package code into scalable functions that run across Kubernetes clusters or edge computing environments. The platform distinguishes itself through a developer-centric runtime that utilizes standardized language templates and automated build pipelines to simplify the creation of container images. It features a central API gateway that manages request routing, authentication,
OpenFaaS is a mature, container-native FaaS platform designed for Kubernetes that natively supports HTTP and event-driven triggers, scale-to-zero, multi-language runtimes via templates, built-in container image management, and Prometheus-based observability — exactly matching the self-hosted serverless platform this search requires.
Kubernetes-based, scale-to-zero, request-driven compute
Knative Serving is a Kubernetes-native serverless compute platform that provides auto-scaling (including scale-to-zero) and event-driven triggers via CloudEvents, making it a solid fit for running functions on your own cluster, though it relies on external container registries and requires you to package runtimes yourself rather than offering built-in multi-language support.
The container native, cloud agnostic serverless platform.
fn is a container-native serverless platform that can run on your own Kubernetes cluster, supporting event-driven functions with auto-scaling — a solid fit for a self-hosted FaaS setup.
IronFunctions - the serverless microservices platform by
IronFunctions is a self-hosted serverless platform that can run on Kubernetes, supporting multiple languages and event triggers, though its Kubernetes integration may not be as deep as dedicated Kubernetes-native FaaS solutions.
Kubernetes controller for GitHub Actions self-hosted runners
This Kubernetes controller manages GitHub Actions self-hosted runners for CI/CD pipelines, not a FaaS platform for running serverless functions with triggers and event-driven auto-scaling.
This project is a Go language library that provides a programmatic interface for interacting with the Kubernetes API server. It serves as a client for managing cluster resources, offering both typed interfaces for compile-time safety and dynamic interfaces for unstructured data and custom resource management. The library includes a controller framework designed for building event-driven automation. This framework utilizes informers to maintain local resource caches and rate-limited work queues to decouple event detection from state reconciliation. High availability is supported through a lead
This is a Kubernetes client library and controller framework, not a self-hosted serverless platform—it provides building blocks for automation but does not run or manage functions.
Strimzi is a Kubernetes operator that automates the deployment, management, and lifecycle of Apache Kafka clusters on Kubernetes or OpenShift. It uses custom resource definitions and declarative YAML configuration to define Kafka cluster topology, broker placement, and security settings, with operator-based controllers that reconcile the desired state with the actual cluster state. The operator handles rolling updates during cluster upgrades or configuration changes to maintain availability and data integrity, and supports rack-aware broker scheduling across Kubernetes nodes and availability
Strimzi is a Kubernetes operator for managing Apache Kafka clusters, which provides event-driven messaging infrastructure but does not run or manage serverless functions as a FaaS platform would.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| alexellis/faas | 26.2K | Go | NOASSERTION | |
| apache/openwhisk | 6.8K | Scala | Apache-2.0 | |
| vmware-archive/kubeless |
| 6.8K |
| Go |
| Apache-2.0 |
| fission/fission | 8.9K | Go | Apache-2.0 |
| nuclio/nuclio | 5.7K | Go | Apache-2.0 |
| openfaas/faas | 26.1K | Go | other |
| knative/serving | 6.1K | Go | Apache-2.0 |
| fnproject/fn | 5.9K | Go | Apache-2.0 |
| iron-io/functions | 3.2K | Go | Apache-2.0 |
| actions/actions-runner-controller | 6.3K | Go | Apache-2.0 |