The latest release of Knative Eventing, version 0.8 focuses on improving Eventing features. This article thoroughly explains new features to help you quickly understand version 0.8.
Let's deep dive into the key new features of the Knative Eventing version 0.8.
Similar to sequence, Choice defines a function running process. It allows processing events by using a function that is selected based on conditions. The following snippet defines Choice more specifically.
apiVersion: messaging.knative.dev/v1alpha1 kind: Choice metadata: name: check-assignment spec: channelTemplate: apiVersion: messaging.knative.dev/v1alpha1 kind: InMemoryChannel cases: - filter: ref: apiVersion: serving.knative.dev/v1alpha1 kind: Service name: data-assigned subscriber: ref: apiVersion: serving.knative.dev/v1alpha1 kind: Service name: send-notice
Let's take a quick look at the key elements in the preceding snippet:
When underlying implementation is not required, it is possible to create a channel as the default channel.
Create a default channel using the commands below.
Note that the channel is set in
messaging.knative.dev/v1alpha1. The original channel based on the Provisioner model in
eventing.knative.dev will be abandoned in version 0.9.
apiVersion: messaging.knative.dev/v1alpha1 kind: Channel metadata: name: default-channel namespace: default
Control the setting of the default channel by using ConfigMap as shown below.
apiVersion: v1 kind: ConfigMap metadata: name: default-ch-webhook namespace: knative-eventing data: default-ch-config: | clusterDefault: apiVersion: messaging.knative.dev/v1alpha1 kind: InMemoryChannel namespaceDefaults: some-namespace: apiVersion: messaging.knative.dev/v1alpha1 kind: KafkaChannel spec: numPartitions: 2 replicationFactor: 1
This case specifies two default channels:
Additionally, in case of no channel specification, both Brokers and Sequences support the default channel.
After upgrade, the current version supports CloudEvents since version 0.3.
Following are the key monitoring enhancement capabilities:
In the original Broker and Trigger, channels and subscriptions are created by using
GenerateName. Since their names are automatically generated, if the listers data is not up-to-date, the channels or subscriptions may generate multiple times.
In addition, specific names may be used for ApiServerSource, ContainerSource, and original provisioner-based channels.
In addition to the preceding features, there are a few more feature upgrades, such as:
The following are other essential changes in the latest release of Knative Eventing:
github.com/knative/pkgis updated to
knative.dev/pkg. Note that this change may affect the setting of Knative dependency packages used during code development.
eventing.knative.dev/releasebased on the policy in Serving. It is possible to set the value to the release version or devel.
sourceAndTypeattribute will be abandoned soon, and an Attributes field will be added. This field supports both standard CloudEvents attributes and extended attributes.
This article summarizes how Knative Eventing v0.8 focuses on feature improvement. Upgrades indirectly reflect that the Knative Eventing features are becoming increasingly mature. We believe that subsequent version iterations will continue to focus on feature improvement and optimization.
We look forward to hear your thoughts and queries on Knative.
Alibaba Container Service - March 16, 2020
Alibaba Developer - February 3, 2020
Alibaba Developer - September 7, 2020
Alibaba Developer - August 8, 2019
Alibaba Developer - March 3, 2020
Alibaba Clouder - June 23, 2020
Accelerate and secure the development, deployment, and management of containerized applications cost-effectively.Learn More
Alibaba Cloud Container Service for Kubernetes is a fully managed cloud container management service that supports native Kubernetes and integrates with other Alibaba Cloud products.Learn More
Leverage cloud-native database solutions dedicated for FinTech.Learn More
A secure image hosting platform providing containerized image lifecycle managementLearn More
More Posts by Alibaba Container Service