3 min read

Knative OSS Weekly #49

This week I was away for JBCNConf, a conference that I've joined every year since the conference started in 2015. This year I did a very unusual presentation comparing Go and Java in the context of Kubernetes, where I've presented tools like KubeBuilder, Java-Operator-SDK, and Metacontroller with Knative Functions, I am adding the slides and resources at the end of this blog post.  Before going into the Knative-related sessions at JBCNConf, let's do the 'good-first-issue's for the week:

There were 4 sessions where Knative was mentioned (including mine) and a workshop:

As I've mentioned before, in my presentation, I've created a Metacontroller and Knative Functions example, but I couldn't stop there, I've created a Pull Request to the MetaController project itself so Java developers can easily get started with MetaController instead of building fully-fledged K8s controllers.

Metacontroller and Knative Functions

While working for my presentation at JBCNConf, I wanted to implement the same controller using different languages and frameworks to be able to compare. The use case I've implemented is pretty simple, the controller reconciles a new type of resource called Conference, and each Conference resource represents a set of services composing a conference application instance. This application is composed of 4 independent services, so the controller is in charge of monitoring these services by interacting with their APIs, and if and only if all the services are up, the controller should create a new Deployment to run a set of production tests.

I've created 4 different implementations for this controller using 3 different projects; you can find these on GitHub.

A quick and special mention to the implementation for MetaController and Knative Functions, because there is no official example with Java, I've submitted a PR to the metacontroller project with a simplification of the example using spring-boot and Knative Functions: https://github.com/metacontroller/metacontroller/pull/565

This example will require maintenance, documentation, and improvements; if you are interested in helping me with that, please feel free to reach out.

AMA about Serverless in Kubernetes

This next Thursday, 28th July, at 6pm UK time, I will be joining Whitney, Viktor, and Daniel in an Ask Me Anything session about Serverless on Kubernetes. Save the date!


Slides and Pictures

[slideshare id=252237812&doc=jbcnconf2022-220719135150-25b52798]