跳至內容

開發人員組態選項

Broker 組態

  • 您可以為您的 Broker 指定任何有效的 name。使用 default 將會建立一個名為 default 的 Broker。
  • namespace 必須是您叢集中現有的命名空間。使用 default 將會在 default 命名空間中建立 Broker。

事件傳遞選項

  • 您可以使用 dead-letter sink 來處理錯誤和稽核未傳遞的訊息。使用 ref 指定未傳遞訊息將被傳送到的 Kubernetes 物件參考,以及使用 uri 指定可選的 URI 來路由未傳遞的訊息。
  • 您可以設定 Backoff policies 來定義重試嘗試之間的延遲策略。它可以是 exponentiallinear
  • 您可以使用 ISO 8601 持續時間格式設定 Backoff delay 來指定重試前的初始延遲。
  • 您可以使用 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. 使用 ConfigMap 的詳細資訊來設定 spec.config,該 ConfigMap 定義了 Broker 類別的必要設定(例如,在 MTChannelBasedBroker 的情況下,使用一些 Channel 設定)。

有關在叢集範圍或每個命名空間的基礎上設定預設 Broker 類別的更多資訊,請查看管理員組態選項

Broker 組態範例

以下是一個基於 Channel 的 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 分享以達到此目的。了解更多。