開発者向け設定オプション¶
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
を変更できます。
-
eventing.knative.dev/broker.class
アノテーションを設定します。次の例のMTChannelBasedBroker
を、使用するクラスタイプに置き換えます。Broker クラスアノテーションは不変であり、Broker の作成後に更新できないことに注意してください。 -
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"