跳至内容

开发者配置选项

Broker 配置

  • 您可以为您的 Broker 指定任何有效的 name。使用 default 将创建一个名为 default 的 Broker。
  • namespace 必须是集群中已存在的命名空间。使用 default 将在 default 命名空间中创建 Broker。

事件交付选项

  • 您可以使用 dead-letter sink 来处理错误和审核未送达的消息。使用 ref 指定将未送达的消息发送到的 Kubernetes 对象引用,以及一个可选的 URI 来使用 uri 路由未送达的消息。
  • 您可以设置 Backoff 策略 来定义重试尝试之间的延迟策略。它可以是 exponentiallinear
  • 您可以设置 Backoff 延迟 来指定在重试之前等待的初始延迟,使用 ISO 8601 持续时间格式。
  • 您可以使用 retry 配置指定在将事件发送到死信接收器之前进行的重试尝试次数。
  • spec.delivery 用于配置事件交付选项。事件交付选项指定在事件无法交付到事件接收器时发生的情况。有关更多信息,请参阅有关 事件交付 的文档。

高级 Broker 类选项

当 Broker 在没有指定 eventing.knative.dev/broker.class 注释的情况下创建时,默认情况下使用 MTChannelBasedBroker Broker 类,如 config-br-defaults ConfigMap 中所指定。

如果您在集群中安装了多个 Broker 类,并且想要为 Broker 使用非默认 Broker 类,您可以修改 Broker 对象的 eventing.knative.dev/broker.class 注释和 spec.config

  1. 设置 eventing.knative.dev/broker.class 注释。将以下示例中的 MTChannelBasedBroker 替换为您想要使用的类类型。请注意,Broker 类注释是不可变的,因此在创建 Broker 后无法更新。

  2. 使用定义 Broker 类所需配置的 ConfigMap 的详细信息配置 spec.config(例如,在 MTChannelBasedBroker 的情况下,使用一些 Channel 配置)。

有关在整个集群范围内或在每个命名空间范围内配置默认 Broker 类的更多信息,请查看 管理员配置选项

Broker 配置示例

以下是一个基于通道的 Broker 对象的完整示例,它展示了您可以修改的可能配置选项

apiVersion: eventing.knative.dev/v1
kind: Broker
metadata:
  name: default
  namespace: default
  annotations:
    eventing.knative.dev/broker.class: MTChannelBasedBroker
spec:
  config:
    apiVersion: v1
    kind: ConfigMap
    name: config-br-default-channel
    namespace: knative-eventing
  delivery:
    deadLetterSink:
      ref:
        kind: Service
        namespace: example-namespace
        name: example-service
        apiVersion: v1
      uri: example-uri
    retry: 5
    backoffPolicy: exponential
    backoffDelay: "PT1S"

我们使用分析和 Cookie 来了解网站流量。有关您使用我们网站的信息将与 Google 共享,以用于该目的。 了解更多。