×

创建事件源时,您可以指定一个事件接收器,事件将从源发送到该接收器。事件接收器是可以接收来自其他资源的传入事件的可寻址或可调用的资源。Knative 服务、通道和代理都是事件接收器的示例。还有一个可用的特定 Apache Kafka 接收器类型。

可寻址对象接收并确认通过 HTTP 传递到其status.address.url字段中定义的地址的事件。作为特例,核心 Kubernetes Service对象也满足可寻址接口。

可调用对象能够接收通过 HTTP 传递的事件并转换事件,在 HTTP 响应中返回01个新事件。这些返回的事件可以以与处理来自外部事件源的事件相同的方式进一步处理。

Knative CLI sink 标志

使用 Knative (kn) CLI 创建事件源时,您可以使用--sink标志指定一个接收器,事件将从该资源发送到该接收器。接收器可以是任何可寻址或可调用的资源,可以接收来自其他资源的传入事件。

以下示例创建一个接收器绑定,该绑定使用服务http://event-display.svc.cluster.local作为接收器。

使用 sink 标志的示例命令
$ kn source binding create bind-heartbeat \
  --namespace sinkbinding-example \
  --subject "Job:batch/v1:app=heartbeat-cron" \
  --sink http://event-display.svc.cluster.local \ (1)
  --ce-override "sink=bound"
1 http://event-display.svc.cluster.local中的svc确定接收器是 Knative 服务。其他默认接收器前缀包括channelbroker

您可以通过自定义kn来配置哪些 CR 可以与 Knative (kn) CLI 命令的--sink标志一起使用。