コンテンツにスキップ

開発者向け設定オプション

Broker の設定

  • Broker には有効な name を指定できます。 default を使用すると、default という名前の Broker が作成されます。
  • namespace は、クラスター内の既存の名前空間である必要があります。 default を使用すると、default 名前空間に Broker が作成されます。

イベント配信オプション

  • 配信されなかったメッセージのエラー処理と監査には、dead-letter sink を使用できます。配信されなかったメッセージが送信される Kubernetes オブジェクト参照を ref で指定し、配信されなかったメッセージをルーティングするオプションの URI を uri で指定します。
  • 再試行間隔の遅延戦略を定義するために、Backoff policies を設定できます。これは exponential または linear に設定できます。
  • ISO 8601 期間形式を使用して、再試行前の初期遅延を指定するために、Backoff delay を設定できます。
  • retry 設定を使用して、イベントを dead-letter sink に送信する前に、再試行回数を指定できます。
  • spec.delivery は、イベント配信オプションを設定するために使用されます。イベント配信オプションでは、イベントシンクへの配信に失敗したイベントに何が起こるかを指定します。詳細については、イベント配信に関するドキュメントを参照してください。

高度な Broker クラスオプション

eventing.knative.dev/broker.class アノテーションを指定せずに Broker が作成された場合、デフォルトでは config-br-defaults ConfigMap で指定されているように、MTChannelBasedBroker Broker クラスが使用されます。

クラスターに複数の Broker クラスがインストールされており、Broker にデフォルト以外の Broker クラスを使用したい場合は、Broker オブジェクトの eventing.knative.dev/broker.class アノテーションと spec.config を変更できます。

  1. eventing.knative.dev/broker.class アノテーションを設定します。次の例の MTChannelBasedBroker を、使用するクラスタイプに置き換えます。Broker クラスアノテーションは不変であり、Broker の作成後に更新できないことに注意してください。

  2. Broker クラスに必要な設定を定義する ConfigMap (例: MTChannelBasedBroker の場合は一部の Channel 設定) の詳細を使用して、spec.config を設定します。

デフォルトの 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"

当社は、サイトトラフィックを理解するために、アナリティクスとクッキーを使用します。当サイトのご利用に関する情報は、その目的のためにGoogleと共有されます。詳細はこちら