Skip to content
This repository has been archived by the owner on Dec 15, 2021. It is now read-only.

vmware-archive/kubeless

Folders and files

NameName
Last commit message
Last commit date

Latest commit

af81a12 · Dec 15, 2021
Oct 5, 2020
Dec 27, 2017
May 3, 2021
Nov 4, 2020
Apr 12, 2021
Jan 8, 2021
Jan 30, 2018
May 23, 2018
Jan 8, 2021
Oct 5, 2020
Sep 8, 2020
Aug 1, 2018
Sep 8, 2017
Jun 7, 2018
Aug 29, 2017
Oct 5, 2020
Aug 25, 2021
Dec 15, 2021
Dec 2, 2020
Dec 2, 2020
Jan 18, 2021
Apr 30, 2018
Apr 10, 2018

Kubeless logo

CircleCI Slack Not Maintained

WARNING: Kubeless is no longer actively maintained by VMware.

VMware has made the difficult decision to stop driving this project and therefore we will no longer actively respond to issues or pull requests. If you would like to take over maintaining this project independently from VMware, please let us know so we can add a link to your forked project here.

Thank You.

Overview

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.

Kubeless stands out as we use a Custom Resource Definition to be able to create functions as custom kubernetes resources. We then run an in-cluster controller that watches these custom resources and launches runtimes on-demand. The controller dynamically injects the functions code into the runtimes and make them available over HTTP or via a PubSub mechanism.

Kubeless is purely open-source and non-affiliated to any commercial organization. Chime in at anytime, we would love the help and feedback !

Tools

Quick start

Check out the instructions for quickly set up Kubeless here.

Building

Consult the developer's guide for a complete set of instruction to build kubeless.

Compatibility Matrix with Kubernetes

Kubeless fully supports Kubernetes versions greater than 1.9 (tested until 1.15). For other versions some of the features in Kubeless may not be available. Our CI run tests against two different platforms: GKE (1.12) and Minikube (1.15). Other platforms are supported but fully compatibiliy cannot be assured.

Roadmap

We would love to get your help, feel free to lend a hand. We are currently looking to implement the following high level features:

  • Add other runtimes, currently Golang, Python, NodeJS, Ruby, PHP, .NET and Ballerina are supported. We are also providing a way to use custom runtime. Please check this doc for more details.
  • Investigate other messaging bus (e.g SQS, rabbitMQ)
  • Optimize for functions startup time
  • Add distributed tracing (maybe using istio)

Community

Issues: If you find any issues, please file it.

Slack: We're fairly active on slack and you can find us in the #kubeless channel.