第 5 章 触发器
5.1. 触发器概述 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
代理可与触发器结合使用,用于将事件源发送到事件 sink。事件从事件源发送到代理,作为 HTTP POST
请求。事件进入代理后,可使用触发器根据 CloudEvent 属性 进行过滤,并作为 HTTP POST
请求发送到事件 sink。
如果您将 Knative 代理用于 Apache Kafka,您可以将事件的交付顺序从触发器配置为事件 sink。请参阅为触发器配置事件交付顺序。
5.1.1. 为触发器配置事件交付顺序 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
如果使用 Kafka 代理,您可以将事件的交付顺序从触发器配置为事件 sink。
先决条件
- OpenShift Serverless Operator、Knative Eventing 和 Knative Kafka 安装在 OpenShift Container Platform 集群中。
- Kafka 代理被启用在集群中使用,您也创建了一个 Kafka 代理。
- 您已创建了一个项目,或者具有适当的角色和权限访问项目,以便在 OpenShift Container Platform 中创建应用程序和其他工作负载。
-
已安装 OpenShift (
oc
) CLI。
流程
创建或修改
Trigger
对象并设置kafka.eventing.knative.dev/delivery.order
注解:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 支持的消费者交付保证有:
unordered
- 未排序的消费者是一种非阻塞消费者,它能以未排序的方式提供消息,同时保持正确的偏移管理。
排序的
一个订购的消费者是一个按分区阻止消费者,在提供分区的下一个消息前等待来自 CloudEvent 订阅者成功响应。
默认排序保证是
unordered
。
应用
Trigger
对象:oc apply -f <filename>
$ oc apply -f <filename>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.1.2. 后续步骤 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
- 配置事件交付参数,当事件无法发送到事件 sink 时。