Member-only story
Explore Knative Eventing
I did some experiments on Knative Eventing with some practical coding recently. This paper summarised what I have done for future referencing purposes.
The components involved and developed are shown in the following diagram.
Monitor a Minio based object storage with a ContainerSource as the event source. Once a new image file is uploaded to a bucket, a cloud event will be triggered and send to Knative Eventing. Upon the events comes, the broker will send the event to the event consumer which is interested in it by subscribing through trigger filtering.
The consumers are all based on Knative Serving Service. The first consumer is the standard event display that is used to monitor and debug events. Upon the event comes, the 2nd consumer will get the object image file from Minio, resize the image and push the resized image into another bucket. The 3rd consumer will call the Watson Visual Recognition API to classify the image and send back the tags of the image as a reply event to the broker.
The Knative Eventing is based on version 0.60 as released in Kabanero. The Kubernetes cluster is Openshift 3.11.