Talk from Mete Atamel.
Also take a look at his tutorial.
Pronounced “kay native”.
K8s open source building blocks for serverless.
Points out that K8s is all about servers. But Knative hides that.
What is Serverless?
Servers are someone else’s problem
Functions should be idomatic, meaning already familiar to you
Portable to other clouds
Asserts Knative ticks all these boxes.
Gave a bit of Kubernetes Background
How K8s uses a
Service with a stable IP…
Developers want serverless. Operators want Kubernetes. Knative tries to bridge the gap.
Knative is open source github.
Picture: high level Diagram
Uses Istio for network, but he feels Istio is too heavyweight for what they use it for, so they now use Gloo, but even he did not know what that is. (This space is moving so fast).
How to install
Cloud Run or Cloud Run on GKE or Knative Everywhere
A bunch of steps at the command line, mostly with
The different parts of knative run in different namespaces.
One part is Knative Serving?
Rapid deployment of serverless containers. Automatic scaling, traffic routing, including directing per revisions. I guess this means it supports canary, etc.
Picture: Serving Primitives
Going through steps in tutorial
Before we’ve even seen any functions, we have a ton of network stuff to
do. I would like to see the
Dockerfile for the
It’s been a while since I worked with
Fn, but Knative seems to have a
lot more friction. For example, the
Fn command line tool builds the
docker container around your function for you. Here you appear to have
to do that yourself.
He used the term “traffic splitting” instead of “blue green” or some other term.
I don’t understand whey he is doing a bunch of
kubectl apply to set it
up instead of them having Helm chart(s) for this. I can understand
apply for quick updates when the service is already deployed and
you want to update it.
He didn’t mention anything about the overhead, if any, of C# in a serverless environment.
annotations are used to convey autoscaling.
Fun: Show integration with Twilio.
Learned that you can put a comma separated list as the argument to
Connect producers to consumers with stuff in the middle.
Example 1 was not interesting.
Example 2: Integrate Cloud Storage to Vision API
Here comes something like the license plate demo!
All of his examples are in C#. Is that the only language supported?
Enables you to build and push the images within your K8s cluster. This is a novel idea. I talked to Edson Yanaga last night, he was saying this is the thing that makes Jenkins obsolete.
RedHat has a tutorial on this