Kubeless is a Kubernetes-native serverless framework that lets you deploy small bits of code without having to worry about the underlying infrastructure plumbing. It leverages Kubernetes resources to provide auto-scaling, API routing, monitoring, troubleshooting, and more.
Exploring Kubeless is a great way to explore this as an architectural pattern on Kubernetes. The combination of a CLI tool, ConfigMaps, pre-baked containers, a controller, and some Custom Resource Definition (CRDs) optionally along with Kafka achieves a clean solution for managing functions.
Kubeless relies on a command-line tool called 'kubeless' to submit functions and perform controlling operations with the Kubeless controller. There is also a user interface to parallel the CLI tool features. A dedicated Kafka system is also added to allow functions to be trigger via publish/subscribe.
You will learn how:
- to install Kubeless on Kubernetes
- functions are deployed and removed
- functions are named, exposed, and invoked
- functions are listed, inspected and monitored
More about the Kubeless architecture is described in the Kubeless documentation.
Kubeless is purely open-source and non-affiliated to any commercial organization. Help and feedback is welcomed.
Kubeless is a Kubernetes-native serverless framework. It runs on top of your Kubernetes cluster and allows you to deploy a small unit of code without having to build container images. With Kubeless you can build advanced applications that tie together services using functions.
Lessons Learned
With these steps you have learned:
- ✔ how to install Kubeless on Kubernetes,
- ✔ how functions are deployed and removed,
- ✔ how functions are named, exposed, and invoked,
- ✔ how functions are listed, inspected and monitored.
References
- Kubeless project landing page
- Kubeless is open source
- Kubeless documentation
- Helm, a package manager for Kubernetes
- Helm chart for Kubeless
- Kubeless UI project
Additional topics may be added to this lesson:
For a deeper understanding of these topics and more join
Jonathan Johnson
at various conferences, symposiums, workshops, and meetups.
Software Architectures ★ Speaker ★ Workshop Hosting ★ Kubernetes & Java Specialist

Steps
Kubeless
Your Kubernetes Cluster
For this scenario, Katacoda has just started a fresh Kubernetes cluster for you. Verify it's ready for your use.
kubectl version --short && \
kubectl get componentstatus && \
kubectl get nodes && \
kubectl cluster-info
The Helm package manager used for installing applications on Kubernetes is also available.
helm version --short
Kubernetes Dashboard
You can administer your cluster with the kubectl
CLI tool or use the visual Kubernetes Dashboard. Use this script to access the protected Dashboard.
token.sh