Learn Kubeless - 10 Code Examples & CST Typing Practice Test
Kubeless is a Kubernetes-native serverless framework that allows developers to deploy small, single-purpose functions without managing infrastructure. It leverages Kubernetes resources to handle scaling, routing, and monitoring.
Learn KUBELESS with Real Code Examples
Updated Nov 25, 2025
Code Sample Descriptions
Simple Python HTTP Function
# kubeless/demo/python-http.yaml
apiVersion: kubeless.io/v1beta1
kind: Function
metadata:
name: hello-python
namespace: default
spec:
runtime: python3.8
handler: handler.main
source: |
def main(event, context):
return "Hello Kubeless!"
events:
hello-http:
type: http
metadata:
path: /hello
method: GET
A simple Kubeless YAML configuration to deploy a Python HTTP function.
Node.js HTTP Function
# kubeless/demo/node-http.yaml
apiVersion: kubeless.io/v1beta1
kind: Function
metadata:
name: hello-node
namespace: default
spec:
runtime: nodejs14
handler: handler.main
source: |
module.exports.main = (event, context) => {
return 'Hello from Node.js!';
};
events:
hello-http:
type: http
metadata:
path: /node
method: GET
Kubeless function using Node.js runtime to handle HTTP requests.
Go HTTP Function
# kubeless/demo/go-http.yaml
apiVersion: kubeless.io/v1beta1
kind: Function
metadata:
name: hello-go
namespace: default
spec:
runtime: go1.15
handler: handler.Hello
source: |
package handler
import (
"fmt"
"github.com/kubeless/kubeless/pkg/functions"
)
func Hello(event functions.Event, context functions.Context) string {
return fmt.Sprintf("Hello from Go!")
}
events:
hello-http:
type: http
metadata:
path: /go
method: GET
Kubeless function using Go runtime to handle HTTP requests.
Ruby HTTP Function
# kubeless/demo/ruby-http.yaml
apiVersion: kubeless.io/v1beta1
kind: Function
metadata:
name: hello-ruby
namespace: default
spec:
runtime: ruby2.5
handler: handler.main
source: |
def main(event, context)
"Hello from Ruby!"
end
events:
hello-http:
type: http
metadata:
path: /ruby
method: GET
Deploy a simple Ruby HTTP function with Kubeless.
Python Scheduled Function
# kubeless/demo/python-cron.yaml
apiVersion: kubeless.io/v1beta1
kind: Function
metadata:
name: scheduled-python
namespace: default
spec:
runtime: python3.8
handler: handler.main
source: |
def main(event, context):
print("Scheduled Hello!")
events:
schedule-event:
type: scheduled
metadata:
schedule: "*/5 * * * *"
Python function triggered on a schedule using a CronJob.
Node.js Kafka Function
# kubeless/demo/node-kafka.yaml
apiVersion: kubeless.io/v1beta1
kind: Function
metadata:
name: kafka-node
namespace: default
spec:
runtime: nodejs14
handler: handler.main
source: |
module.exports.main = (event, context) => {
console.log('Received Kafka message:', event.body);
};
events:
kafka-event:
type: kafka
metadata:
topic: test-topic
broker: localhost:9092
Node.js function triggered by a Kafka message.
Python RabbitMQ Function
# kubeless/demo/python-rabbitmq.yaml
apiVersion: kubeless.io/v1beta1
kind: Function
metadata:
name: rabbit-python
namespace: default
spec:
runtime: python3.8
handler: handler.main
source: |
def main(event, context):
print("Received RabbitMQ message:", event.body)
events:
rabbit-event:
type: rabbitmq
metadata:
exchange: test-exchange
queue: test-queue
Python function triggered by RabbitMQ messages.
Python CloudEvent Function
# kubeless/demo/python-cloudevent.yaml
apiVersion: kubeless.io/v1beta1
kind: Function
metadata:
name: cloudevent-python
namespace: default
spec:
runtime: python3.8
handler: handler.main
source: |
def main(event, context):
print("CloudEvent received:", event)
events:
cloudevent:
type: cloudevent
metadata:
source: /source
type: com.example.event
Python function triggered by CloudEvents.
Python HTTP Function with Dependencies
# kubeless/demo/python-http-deps.yaml
apiVersion: kubeless.io/v1beta1
kind: Function
metadata:
name: http-deps-python
namespace: default
spec:
runtime: python3.8
handler: handler.main
source: |
import requests
def main(event, context):
r = requests.get('https://httpbin.org/get')
return r.text
events:
hello-http:
type: http
metadata:
path: /requests
method: GET
Python HTTP function that uses additional dependencies.
Node.js Cron Function
# kubeless/demo/node-cron.yaml
apiVersion: kubeless.io/v1beta1
kind: Function
metadata:
name: scheduled-node
namespace: default
spec:
runtime: nodejs14
handler: handler.main
source: |
module.exports.main = (event, context) => {
console.log('Scheduled Node.js function executed!');
};
events:
schedule-event:
type: scheduled
metadata:
schedule: "0 * * * *"
Node.js function triggered on a schedule using Cron.
Frequently Asked Questions about Kubeless
What is Kubeless?
Kubeless is a Kubernetes-native serverless framework that allows developers to deploy small, single-purpose functions without managing infrastructure. It leverages Kubernetes resources to handle scaling, routing, and monitoring.
What are the primary use cases for Kubeless?
Event-driven microservices. Serverless REST APIs. Background tasks and cron jobs. Data processing pipelines. Integrating Kubernetes-native functions into CI/CD workflows
What are the strengths of Kubeless?
No need for separate serverless infrastructure. Leverages Kubernetes features for deployment and scaling. Supports multiple runtimes and event sources. Lightweight and open-source. Enables DevOps teams to manage functions with familiar tools
What are the limitations of Kubeless?
Requires Kubernetes knowledge. Less feature-rich than cloud-managed serverless (AWS Lambda, Azure Functions). Manual scaling and monitoring setup may be needed. Community smaller than major serverless frameworks. Not ideal for non-Kubernetes environments
How can I practice Kubeless typing speed?
CodeSpeedTest offers 10+ real Kubeless code examples for typing practice. You can measure your WPM, track accuracy, and improve your coding speed with guided exercises.