第8章 リファレンス

8.1. カスタムリソース設定リファレンス

カスタムリソース定義(CRD)は、オペレーターでデプロイされたカスタム OpenShift オブジェクトの設定項目のスキーマです。対応するカスタムリソース(CR)インスタンスをデプロイして、CRD に表示される設定アイテムの値を指定します。

次のサブセクションでは、メインブローカー CRD に基づいてカスタムリソースインスタンスで設定できる設定項目について詳説します。

8.1.1. ブローカーカスタムリソース設定リファレンス

メインブローカー CRD に基づく CR インスタンスを使用すると、ブローカーを設定して OpenShift プロジェクトにデプロイできます。次の表に、CR インスタンスで設定できる項目を示します。

重要

アスタリスク( *)でマークされた設定アイテムは、該当するカスタムリソース(CR)でデプロイに必要です。不要なアイテムの値を明示的に指定しない場合には、設定にデフォルト値が使用されます。

エントリーサブエントリー説明と使用法

adminUser*

 

ブローカーおよび管理コンソールの接続に必要な管理者ユーザー名。

値を指定しない場合、値は自動的に生成され、シークレットに保存されます。デフォルトのシークレット名の形式は、<custom_resource_name>-credentials-secretです。例: my-broker-deployment-credentials-secret

: String

: my-user

デフォルト値: 無作為に、自動生成された値

adminPassword*

 

ブローカーおよび管理コンソールへの接続に必要な管理者パスワード。

値を指定しない場合、値は自動的に生成され、シークレットに保存されます。デフォルトのシークレット名の形式は、<custom_resource_name>-credentials-secretです。例: my-broker-deployment-credentials-secret

: String

: my-password

デフォルト値: 無作為に、自動生成された値

deploymentPlan*

 

ブローカーのデプロイメント設定

 

image*

デプロイメントの各ブローカーに使用されるブローカーコンテナーイメージの完全パス。

CR でimageの値を明示的に指定する必要はありません。プレースホルダーのデフォルト値は、Operator が使用する適切なイメージをまだ決定していないことを示します。

Operator が使用するブローカーコンテナーイメージを選択する方法は、「Operator によるコンテナーイメージの選択方法」を参照してください。

: String

: registry.redhat.io/amq7/amq-broker-rhel8@sha256:979b59325aa0f34eb05625201beba53fccbb83bd5eb80a89dcb5261ae358138f

デフォルト値: placeholder

 

size*

デプロイメントで作成するブローカー Pod の数。

2 以上の値を指定すると、ブローカーのデプロイメントはデフォルトでクラスター化されます。クラスターのユーザー名とパスワードは自動的に生成され、同じシークレットに保存されます (デフォルトでadmin Userおよびadmin Password)。

: int

: 1

デフォルト値: 2

 

requireLogin

ブローカーへの接続にログイン資格情報が必要かどうかを指定します。

: Boolean

: false

デフォルト値: true

 

persistenceEnabled

デプロイメントでブローカー Pod ごとにジャーナルストレージを使用するかどうかを指定します。trueに設定されている場合には、各ブローカー Pod には、Operator が永続ボリューム要求(PVC)を使用して要求できる永続ボリューム(PV) に空きがなければなりません。

: Boolean

: false

デフォルト値: true

 

initImage

ブローカーの設定に使用される Init Container イメージ。

カスタムイメージを提供する場合を除いて、CR でinit Imageの値を明示的に指定する必要はありません。

Operator が使用する組み込みの Init Container イメージの選択方法は、「Operator によるコンテナーイメージの選択方法」を参照してください。

カスタム の Init Container イメージを指定する方法は、「カスタム Init コンテナーイメージの指定」 を参照してください。

: String

: registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b74d03ed852a3731467ffda95266ce49f2065972f1c37bf254f3d52b34c11991

デフォルト値: 指定なし

 

journalType

非同期 I/O (AIO) と非ブロッキング I/O(NIO)のどちらを使用するかを指定します。

: String

: aio

デフォルト値: nio

 

messageMigration

ブローカーデプロイメントの失敗や、意図的にスケールダウンしたことでブローカー Pod がシャットダウンした場合には、ブローカークラスターでまだ実行中の別のブローカー Pod にメッセージを移行するかどうかを指定します。

: Boolean

: false

デフォルト値: true

 

resources.limits.cpu

デプロイメントの Pod で実行されている各ブローカーコンテナーが消費できるホストノード CPU の最大量 (ミリコア単位)。

: String

Example: "500m"

デフォルト値: お使いのバージョンの OpenShift Container Platform と同じデフォルト値を使用します。クラスター管理者に相談してください。

 

resources.limits.memory

デプロイメント内のポッドで実行されている各ブローカーコンテナーが消費できるホストノードメモリーの最大量 (バイト単位)。バイト表記 (K、M、G など)、または同等のバイナリー (Ki、Mi、Gi) をサポートします。

: String

Example: "1024M"

デフォルト値: お使いのバージョンの OpenShift Container Platform と同じデフォルト値を使用します。クラスター管理者に相談してください。

 

resources.requests.cpu

デプロイメント内の Pod で実行されている各ブローカーコンテナーが明示的に要求するホストノードの CPU 量(ミリコア単位)。

: String

Example: "250m"

デフォルト値: お使いのバージョンの OpenShift Container Platform と同じデフォルト値を使用します。クラスター管理者に相談してください。

 

resources.requests.memory

デプロイメント内の Pod で実行されている各ブローカーコンテナーが明示的に要求するホストノードメモリーの量(バイト単位)。バイト表記 (K、M、G など)、または同等のバイナリー (Ki、Mi、Gi) をサポートします。

: String

Example: "512M"

デフォルト値: お使いのバージョンの OpenShift Container Platform と同じデフォルト値を使用します。クラスター管理者に相談してください。

 

storage.size

デプロイメントにある各ブローカーが永続ストレージに必要な Persistent Volume Claim (永続ボリューム要求、PVC) のサイズ (バイト単位)。このプロパティーは、persistenceEnabledtrue に設定されている場合にのみ適用されます。指定する値には単位が含まれている必要があります。バイト表記 (K、M、G など)、または同等のバイナリー (Ki、Mi、Gi) をサポートします。

: String

: 4Gi

デフォルト値: 2Gi

 

jolokiaAgentEnabled

デプロイメント内のブローカーに対して Jolokia JVM エージェントを有効にするかどうかを指定します。このプロパティーの値がtrueに設定されている場合には、Fuse Console はブローカーのランタイムデータを検出して表示できます。

: Boolean

: True

デフォルト値: false

 

managementRBACEnabled

デプロイメント内のブローカーに対してロールベースのアクセス制御 (RBAC) を有効にするかどうかを指定します。Fuse Console を使用するには、値をfalseに設定する必要があります。これは、Fuse Console が独自のロールベースのアクセス制御を使用しているためです。

: Boolean

: false

デフォルト値: true

コンソール

 

ブローカー管理コンソールの設定。

 

expose

デプロイメントの各ブローカーの管理コンソールポートを公開するかどうかを指定します。

: Boolean

: True

デフォルト値: false

 

sslEnabled

管理コンソールポートで SSL を使用するかどうかを指定します。

: Boolean

: True

デフォルト値: false

 

sslSecret

ブローカーキーストア、トラストストア、および対応するパスワード (すべて Base64 でエンコードされたもの) が保存されるシークレット。ssl Secretの値を指定しない場合には、コンソールはデフォルトのシークレット名を使用します。デフォルトのシークレット名は、 <custom_resource_name> -console-secretの形式です。

: String

: my-broker-deployment-console-secret

デフォルト値: 指定なし

 

useClientAuth

管理コンソールにクライアント認証が必要かどうかを指定します。

: Boolean

: True

デフォルト値: false

acceptors.acceptor

 

単一のアクセプターの設定インスタンス。

 

name*

アクセプターの名前。

: String

: my-acceptor

デフォルト値: 該当なし

 

ポート

アクセプターインスタンスに使用するポート番号。

: int

: 5672

デフォルト値: 61626 (定義する最初のアクセプター)。その後、デフォルト値は、定義する後続のアクセプターごとに 10 ずつ増えます。

 

protocols

アクセプターインスタンスで有効にするメッセージングプロトコル。

: String

: amqp、core

デフォルト値: all

 

sslEnabled

アクセプターポートで SSL を有効にするかどうかを指定します。true に設定されている場合は、 ssl Secretで指定されているシークレット名を調べて、TLS/SSL に必要な資格情報を探します。

: Boolean

: True

デフォルト値: false

 

sslSecret

ブローカーキーストア、トラストストア、および対応するパスワード (すべて Base64 でエンコードされたもの) が保存されるシークレット。

ssl Secret にカスタムシークレット名を指定しない場合には、アクセプターはデフォルトのシークレット名を想定します。デフォルトのシークレット名の形式は、 <custom_resource_name>- <acceptor_name>-secretです。

アクセプターでデフォルト名が必要であっても、常にこのシークレットを自分で作成する必要があります。

: String

: my-broker-deployment-my-acceptor-secret

Default value: <custom_resource_name>-<acceptor_name>-secret

 

enabledCipherSuites

TLS/SSL 通信に使用する暗号スイートのコンマ区切りリスト。

クライアントアプリケーションでサポートする最も安全な暗号スイートを指定します。コンマ区切りのリストを使用して、ブローカーとクライアントの両方に共通の暗号スイートのセットを指定する場合、または暗号スイートを指定しない場合には、ブローカーとクライアントは、使用する暗号スイートについて相互に交渉します。指定する暗号スイートがわからない場合は、最初にデバッグモードで実行されているクライアントとのブローカークライアント接続を確立して、ブローカーとクライアントの両方に共通の暗号スイートを確認することをお勧めします。次に、ブローカーで enabledCipherSuitesを設定します。

: String

デフォルト値: 指定なし

 

enabledProtocols

TLS/SSL 通信に使用するプロトコルのコンマ区切りリスト。

: String

: TLSv1、TLSv1.1、TLSv1.2

デフォルト値: 指定なし

 

needClientAuth

ブローカーがアクセプターで双方向 TLS が必要であることをクライアントに通知するかどうかを指定します。このプロパティーは、wantClientAuthをオーバーライドします。

: Boolean

: True

デフォルト値: 指定なし

 

wantClientAuth

アクセプターで双方向 TLS が要求されていることを通知するかどうかを指定します。ただし、必須ではありません。このプロパティーはneedClientAuthにオーバーライドされます。

: Boolean

: True

デフォルト値: 指定なし

 

verifyHost

クライアントの証明書のコモンネーム (CN) をホスト名と比較して一致することを確認するかどうかを指定します。このオプションは、双方向 TLS が使用されている場合にのみ適用されます。

: Boolean

: True

デフォルト値: 指定なし

 

sslProvider

SSL プロバイダーが JDK であるか OPENSSL であるかを指定します。

: String

: OPENSSL

デフォルト値: JDK

 

sniHost

受信接続の server_name の拡張子と照合するための正規表現。名前が一致しない場合には、アクセプターへの接続は拒否されます。

: String

: some_regular_expression

デフォルト値: 指定なし

 

expose

Open Shift Container Platform の外部のクライアントにアクセプターを公開するかどうかを指定します。

OpenShift 外部にあるクライアントにアクセプターを公開すると、Operator はデプロイメント内のブローカー Pod ごとに専用のサービスとルートを自動作成します。

: Boolean

: True

デフォルト値: false

 

anycastPrefix

anycast ルーティングタイプを使用することを指定するためにクライアントが使用するプレフィックス。

: String

: jms.queue

デフォルト値: 指定なし

 

multicastPrefix

multicast ルーティングタイプを使用する必要があることを指定するためにクライアントが使用するプレフィックス。

: String

: /topic /

デフォルト値: 指定なし

 

connectionsAllowed

アクセプターで許可されている接続の数。この制限に達すると、DEBUG メッセージがログに出力され、接続は拒否されました。使用中のクライアントのタイプによって、接続が拒否されたときに何が起こるかが決まります。

: integer

: 2

デフォルト値: 0 (無制限の接続)

 

amqpMinLargeMessageSize

ブローカーが AMQP メッセージを大きなメッセージとして処理するために必要な最小メッセージサイズ (バイト単位)。AMQ メッセージのサイズがこの値以上の場合は、ブローカーはメッセージを、メッセージストレージ用にブローカーが使用する永続ボリューム(PV)の永続ボリューム (デフォルトでは /opt/<custom_resource_name>/data/large-messages) にメッセージを保存します。値を-1に設定すると、AMQP メッセージの大きなメッセージ処理が無効になります。

: integer

: 204800

デフォルト値: 102400(100 KB)

connectors.connector

 

単一のコネクター構成インスタンス。

 

name*

コネクターの名前。

: String

: my-connector

デフォルト値: 該当なし

 

type

作成するコネクターのタイプ。 tcpまたはvm

: String

: vm

デフォルト値: tcp

 

host*

接続するホスト名または IP アドレス。

: String

: 192.168.0.58

デフォルト値: 指定なし

 

port*

コネクターインスタンスに使用されるポート番号。

: int

: 22222

デフォルト値: 指定なし

 

sslEnabled

コネクターポートで SSL を有効にするかどうかを指定します。true に設定されている場合は、 ssl Secretで指定されているシークレット名を調べて、TLS/SSL に必要な資格情報を探します。

: Boolean

: True

デフォルト値: false

 

sslSecret

ブローカーキーストア、トラストストア、および対応するパスワード (すべて Base64 でエンコードされたもの) が保存されるシークレット。

ssl Secret にカスタムシークレット名を指定しない場合には、コネクターはデフォルトのシークレット名を想定します。デフォルトのシークレット名の形式は、 <custom_resource_name>- <connector_name>-secretです。

コネクターでデフォルト名が必要であっても、このシークレットは常に自分で作成する必要があります。

: String

: my-broker-deployment-my-connector-secret

Default value: <custom_resource_name>-<connector_name>-secret

 

enabledCipherSuites

TLS/SSL 通信に使用する暗号スイートのコンマ区切りリスト。

: String

: コネクターの場合、暗号スイートのリストを指定しないことをお勧めします。

デフォルト値: 指定なし

 

enabledProtocols

TLS/SSL 通信に使用するプロトコルのコンマ区切りリスト。

: String

: TLSv1、TLSv1.1、TLSv1.2

デフォルト値: 指定なし

 

needClientAuth

コネクターに双方向 TLS が必要であることをブローカがクライアントに通知するかどうかを指定します。このプロパティーは、wantClientAuthをオーバーライドします。

: Boolean

: True

デフォルト値: 指定なし

 

wantClientAuth

コネクターで双方向 TLS が要求されていることを通知するかどうかを指定します。ただし、必須ではありません。このプロパティーはneedClientAuthにオーバーライドされます。

: Boolean

: True

デフォルト値: 指定なし

 

verifyHost

クライアントの証明書のコモンネーム (CN) をホスト名と比較して一致することを確認するかどうかを指定します。このオプションは、双方向 TLS が使用されている場合にのみ適用されます。

: Boolean

: True

デフォルト値: 指定なし

 

sslProvider

SSL プロバイダーがJDKであるかOPENSSLであるかを指定します。

: String

: OPENSSL

デフォルト値: JDK

 

sniHost

送信接続のserver_name拡張子と照合するための正規表現。名前が一致しない場合には、コネクター接続は拒否されます。

: String

: some_regular_expression

デフォルト値: 指定なし

 

expose

OpenShift Container Platform 外のクライアントにコネクターを公開するかどうかを指定します。

: Boolean

: True

デフォルト値: false

addressSettings.applyRule

 

Operator を一致するアドレスまたはアドレスのセットごとに CR に追加する設定を適用する方法を指定します。

指定できる値は次のとおりです。

merge_all

CR で指定されるアドレス設定、同じアドレスまたはアドレスのセットに一致するデフォルト設定の両方の場合:

  • デフォルト設定で指定されるプロパティー値を CR で指定されたプロパティー値に置き換えます。
  • CR またはデフォルト設定で一意で指定されるプロパティー値を保持します。これらはそれぞれ最終マージされた設定の組み込みます。

CR で指定されるアドレス設定または特定のアドレスセットに一意になるデフォルト設定の場合は、これらを最終でマージされた設定に含めます。

merge_replace

CR に指定されたアドレス設定、同じアドレスまたはアドレスセットに一致するデフォルト設定について、最終的なマージされた設定の CR に指定された設定を含めます。それらのプロパティーが CR で指定されていない場合でも、デフォルト設定に指定されたプロパティーを含めないでください。

CR で指定されるアドレス設定または特定のアドレスセットに一意になるデフォルト設定の場合は、これらを最終でマージされた設定に含めます。

replace_all
デフォルト設定に指定されたすべてのアドレス設定を CR で指定されたアドレス設定に置き換えます。最後にマージされた設定は、CR で指定したものと完全に対応します。

: String

: replace_all

デフォルト値: merge_all

addressSettings.addressSetting

 

一致するアドレスまたはアドレスの セット の設定。

 

addressFullPolicy

maxSizeBytesで構成されたアドレスがいっぱいになったときにどうなるかを指定します。利用可能なポリシーは以下のとおりです。

PAGE
完全アドレスに送信されたメッセージはディスクにページングされます。
DROP
完全アドレスに送信されたメッセージは通知なしに破棄されます。
FAIL
完全アドレスに送信されたメッセージはドロップされ、メッセージプロデューサーでは例外が発生します。
BLOCK

メッセージプロデューサーは、それ以上メッセージを送信しようとするとブロックします。

BLOCK ポリシーは、AMQP、OpenWire、およびコアプロトコルでのみ機能します。これらのプロトコルはフロー制御をサポートしているためです。

: String

: DROP

デフォルト値: PAGE

 

autoCreateAddresses

クライアントが、存在しないアドレスにバインドされているキューにメッセージを送信するとき、またはキューからメッセージを消費しようとするときに、ブローカーが自動的にアドレスを作成するかどうかを指定します。

: Boolean

: false

デフォルト値: true

 

autoCreateDeadLetterResources

ブローカーがデッドレターアドレスおよびキューを自動的に作成し、未配信メッセージを受信するかどうかを指定します。

パラメーターが true に設定されている場合には、ブローカはデッドレターアドレスと関連するデッドレターキューを自動的に作成します。自動的に作成されたアドレスの名前は、 dead Letter Addressに指定した値と一致します。

: Boolean

: True

デフォルト値: false

 

autoCreateExpiryResources

期限切れのメッセージを受信するため、ブローカーがアドレスとキューを自動的に作成するかどうかを指定します。

パラメーターがtrueに設定されている場合、ブローカーは自動的に有効期限アドレスと関連する有効期限キューを作成します。自動的に作成されたアドレスの名前は、 expiry Addressに指定した値と一致します。

: Boolean

: True

デフォルト値: false

 

autoCreateJmsQueues

このプロパティーは非推奨にされています。代わりにautoCreateQueuesを使用してください。

 

autoCreateJmsTopics

このプロパティーは非推奨にされています。代わりにautoCreateQueuesを使用してください。

 

autoCreateQueues

クライアントがまだ存在していないキューにメッセージを送信するとき、またはキューからメッセージを消費しようとするときに、ブローカーが自動的にキューを作成するかどうかを指定します。

: Boolean

: false

デフォルト値: true

 

autoDeleteAddresses

ブローカーにキューがなくなったときに、ブローカーが自動的に作成されたアドレスを自動的に削除するかどうかを指定します。

: Boolean

: false

デフォルト値: true

 

autoDeleteAddressDelay

アドレスにキューがない場合に、ブローカーが自動作成されたアドレスを自動削除するまで待機する時間(ミリ秒単位)。

: integer

: 100

デフォルト値: 0

 

autoDeleteJmsQueues

このプロパティーは非推奨にされています。代わりに autoDeleteQueuesを使用してください。

 

autoDeleteJmsTopics

このプロパティーは非推奨にされています。代わりに autoDeleteQueuesを使用してください。

 

autoDeleteQueues

キューにコンシューマーとメッセージがない場合に、ブローカーが自動作成されたキューを自動削除するかどうかを指定します。

: Boolean

: false

デフォルト値: true

 

autoDeleteCreatedQueues

キューにコンシューマーとメッセージがない場合に、ブローカーが手動で作成されたキューを自動削除するかどうかを指定します。

: Boolean

: True

デフォルト値: false

 

autoDeleteQueuesDelay

キューにコンシューマーがない場合に、ブローカーが自動作成されたキューを自動削除するまで待機する時間(ミリ秒単位)。

: integer

: 10

デフォルト値: 0

 

autoDeleteQueuesMessageCount

ブローカーがキューを自動的に削除できるかどうかを評価する前に、キューに入れることができるメッセージの最大数。

: integer

: 5

デフォルト値: 0

 

configDeleteAddresses

設定ファイルを再読み込みすると、このパラメーターで、設定ファイルから削除されたアドレス(とそのキュー)を処理する方法を指定します。以下の値を指定できます。

OFF
設定ファイルの再読み込み時には、ブローカーはアドレスを削除しません。
FORCE
ブローカは、設定ファイルの再読み込み時にアドレスとそのキューを削除します。キューにメッセージがある場合は、それらも削除されます。

: String

: FORCE

デフォルト値: OFF

 

configDeleteQueues

設定ファイルを再読み込みすると、この設定は、ブローカーが設定ファイルから削除されたキューを処理する方法を指定します。以下の値を指定できます。

OFF
設定ファイルの再読み込み時には、ブローカーはキューを削除しません。
FORCE
設定ファイルの再読み込み時には、ブローカーはキューを削除します。キューにメッセージがある場合は、それらも削除されます。

: String

: FORCE

デフォルト値: OFF

 

deadLetterAddress

ブローカーが未達の (未配信) メッセージを送信するアドレス。

: String

: DLA

デフォルト値: None

 

deadLetterQueuePrefix

ブローカーにより、自動作成されたデッドレターキューの名前に適用されるプレフィックス。

: String

: my DLQ。

デフォルト値: DLQ.

 

deadLetterQueueSuffix

ブローカーにより、自動作成されたデッドレターキューに適用されるサフィックス。

: String

: .DLQ

デフォルト値: None

 

defaultAddressRoutingType

自動作成されたアドレスで使用されるルーティングタイプ。

: String

: ANYCAST

デフォルト値: MULTICAST

 

defaultConsumersBeforeDispatch

アドレスのキューに対してメッセージディスパッチを開始する前に必要なコンシューマーの数。

: integer

: 5

デフォルト値: 0

 

defaultConsumerWindowSize

コンシューマーのデフォルトのウィンドウサイズ (バイト単位)。

: integer

: 300000

デフォルト値: 1048576 (1024*1024)

 

defaultDelayBeforeDispatch

defaultConsumersBeforeDispatchに指定された値に達していない場合に、ブローカーがメッセージをディスパッチするまで待機するデフォルトの時間(ミリ秒単位)。

: integer

: 5

デフォルト値: -1(遅延なし)

 

defaultExclusiveQueue

アドレス上のすべてのキューがデフォルトで独占キューであるかどうかを指定します。

: Boolean

: True

デフォルト値: false

 

defaultGroupBuckets

メッセージのグループ化に使用するバケットの数。

: integer

: 0(メッセージのグループ化は無効)

デフォルト値: -1(制限なし)

 

defaultGroupFirstKey

グループ内のどのメッセージが最初であるかをコンシューマーに示すために使用されるキー。

: String

Example: firstMessageKey

デフォルト値: None

 

defaultGroupRebalance

新しいコンシューマーがブローカーに接続するときにグループのリバランスするかどうかを指定します。

: Boolean

: True

デフォルト値: false

 

defaultGroupRebalancePauseDispatch

ブローカーがグループのリバランスをしている間、メッセージのディスパッチを一時停止するかどうかを指定します。

: Boolean

: True

デフォルト値: false

 

defaultLastValueQueue

アドレス上のすべてのキューがデフォルトで最後の値のキューであるかどうかを指定します。

: Boolean

: True

デフォルト値: false

 

defaultLastValueKey

最後の値のキューに使用するデフォルトのキー。

: String

: stock_ticker

デフォルト値: None

 

defaultMaxConsumers

任意のタイミングでキューで許可されるコンシューマーの最大数。

: integer

: 100

デフォルト値: -1(制限なし)

 

defaultNonDestructive

アドレス上のすべてのキューがデフォルトで non-destructive であるかどうかを指定します。

: Boolean

: True

デフォルト値: false

 

defaultPurgeOnNoConsumers

コンシューマーがなくなったときにブローカーがキューの内容をパージするかどうかを指定します。

: Boolean

: True

デフォルト値: false

 

defaultQueueRoutingType

自動作成されたキューで使用されるルーティングタイプ。デフォルト値は MULTICAST です。

: String

: ANYCAST

デフォルト値: MULTICAST

 

defaultRingSize

リングサイズが明示的に設定されていない、一致するキューのデフォルトのリングサイズ。

: integer

: 3

デフォルト値: -1(サイズ制限なし)

 

enableMetrics

Prometheus プラグインなどの設定されたメトリクスプラグインが一致するアドレスまたはアドレスのセットのメトリクスを収集するかどうかを指定します。

: Boolean

: false

デフォルト値: true

 

expiryAddress

期限切れのメッセージを受信するアドレス。

: String

Example: myExpiryAddress

デフォルト値: None

 

expiryDelay

デフォルトの有効期限を使用しているメッセージに適用される有効期限(ミリ秒単位)。

: integer

: 100

デフォルト値: -1(有効期限は適用されません)

 

expiryQueuePrefix

ブローカーが自動作成された期限切れキューの名前に適用されるプレフィックス。

: String

Example: myExp.

デフォルト値: EXP.

 

expiryQueueSuffix

ブローカーが自動作成された期限切れキューの名前に適用されるサフィックス。

: String

: .EXP

デフォルト値: None

 

lastValueQueue

キューが最後の値のみを使用するかどうかを指定します。

: Boolean

: True

デフォルト値: false

 

managementBrowsePageSize

管理リソースが参照できるメッセージの数を指定します。

: integer

: 100

デフォルト値: 200

 

match*

アドレス設定と、ブローカーで構成されたアドレスとを照合する文字列。正確なアドレス名を指定するか、ワイルドカード式を使用してアドレス設定をアドレスのセットと照合できます。

ワイルドカード式を match プロパティーの値として使用する場合には、値を単一引用符で囲む必要があります (例: 'myOAddresses*')。

: String

Example: 'myAddresses*'

デフォルト値: None

 

maxDeliveryAttempts

設定されたデッドレターアドレスにメッセージを送信するまでに、ブローカがメッセージの配信を試行する回数を指定します。

: integer

: 20

デフォルト値: 10

 

maxExpiryDelay

この値より大きい有効期限を使用しているメッセージに適用される有効期限(ミリ秒単位)。

: integer

: 20

デフォルト値: -1(最大有効期限は適用されません)

 

maxRedeliveryDelay

ブローカーによるメッセージの再配信試行間の最大値 (ミリ秒単位)。

: integer

: 100

デフォルト値: デフォルト値は、redelivery Delayの値の 10 倍です。デフォルト値は0

 

maxSizeBytes

アドレスの最大メモリーサイズ(バイト単位)。address Full PolicyPAGINGBLOCK、またはFAILに設定されている場合に使用されます。K、Mb、GB などのバイト表記もサポートしています。

: String

: 10Mb

デフォルト値: -1(制限なし)

 

maxSizeBytesRejectThreshold

ブローカーがメッセージを拒否する前にアドレスが到達できる最大サイズ(バイト単位)。address-full-policyBLOCKに設定されている場合に使用されます。AMQP プロトコルの場合のみmaxSizeBytesと組み合わせて動作します。

: integer

: 500

デフォルト値: -1(最大サイズなし)

 

messageCounterHistoryDayLimit

ブローカーがアドレスのメッセージカウンター履歴を保持する日数。

: integer

: 5

デフォルト値: 0

 

minExpiryDelay

この値よりも短い有効期限を使用しているメッセージに適用される有効期限(ミリ秒単位)。

: integer

: 20

デフォルト値: -1(最小有効期限は適用されません)

 

pageMaxCacheSize

ページングナビゲーション中に I/O を最適化するためにメモリー内に保持するページファイルの数。

: integer

: 10

デフォルト値: 5

 

pageSizeBytes

ページングサイズ (バイト単位)。KMbGBなどのバイト表記もサポートします。

: String

: 20971520

デフォルト値: 10485760(約 10.5 MB)

 

redeliveryDelay

キャンセルされたメッセージを再配信する前にブローカーが待機する時間(ミリ秒単位)。

: integer

: 100

デフォルト値: 0

 

redeliveryDelayMultiplier

redelivery Delayの値に適用する倍率。

: number

: 5

デフォルト値: 1

 

redeliveryCollisionAvoidanceFactor

競合を回避するためにredelivery Delayの値に適用する倍率。

: number

: 1.1

デフォルト値: 0

 

redistributionDelay

キューの最後のコンシューマーが閉じられてから残りのメッセージを再分配するまでブローカーが待機する時間 (ミリ秒単位) を定義します。

: integer

: 100

デフォルト値: -1(未設定)

 

retroactiveMessageCount

アドレスに今後作成されるキューに対して保持するメッセージの数。

: integer

: 100

デフォルト値: 0

 

sendToDlaOnNoRoute

キューにルーティングされないメッセージは、設定済みのデッドレターアドレスアドレスに送信されます。

: Boolean

: True

デフォルト値: false

 

slowConsumerCheckPeriod

コンシューマーが遅いかどうかをブローカーがチェックする頻度 (秒単位)。

: integer

: 15

デフォルト値: 5

 

slowConsumerPolicy

低速なコンシューマーが特定されたときにどうするのかを指定します。有効なオプションは KILL または NOTIFY です。KILLはコンシューマーの接続を強制終了します。これは、同じ接続を使用するすべてのクライアントスレッドに影響を与えます。NOTIFYCONSUMER_SLOW 管理通知をクライアントに送信します。

: String

: KILL

デフォルト値: NOTIFY

 

slowConsumerThreshold

最小限許可されるメッセージ消費速度 (秒単位)。この値を下回るとコンシューマーは遅いと見なされます。

: integer

: 100

デフォルト値: -1(未設定)

upgrades

  
 

enabled

version の値を更新して、AMQ Broker の新しいターゲットを指定する場合は、Operator が deployment Plan.imageの値をそのバージョンの AMQ Broker に対応するブローカーコンテナーイメージに自動更新できるようにするかどうかを指定します。

: Boolean

: True

デフォルト値: false

 

minor

バージョンの値を AMQ Broker のあるマイナーバージョンから別の マイナー バージョン に更新する際に、Operator が deploymentPlan.image 値を自動的に更新することを許可するかどうかを指定します(例: 7 .8.0 から 7. 9.3 )。

: Boolean

: True

デフォルト値: false

version

 

対応するブローカーコンテナーイメージを使用するように Operator が CR を自動更新する先の AMQ Broker のマイナーバージョンを指定します。たとえば、versionの値を 7.6.0から7.7.0に変更した場合 (およびupgrades.enabledupgrades.minorの両方がtrueに設定されている場合)、Operator はdeployment Plan.imageregistry.redhat.io/amq7/amq-broker-rhel8:7.8-x の形式のブローカーイメージに更新します

: String

: 7.7.0

デフォルト値: AMQ Broker の現在のバージョン

8.1.2. アドレスのカスタムリソースの設定リファレンス

アドレス CRD に基づく CR インスタンスを使用して、デプロイメント内のブローカーのアドレスとキューを定義できます。次の表で、設定できる項目の詳細を示します。

重要

アスタリスク( *)でマークされた設定アイテムは、該当するカスタムリソース(CR)でデプロイに必要です。不要なアイテムの値を明示的に指定しない場合には、設定にデフォルト値が使用されます。

エントリー説明と使用法

addressName*

ブローカーで作成されるアドレス名。

: String

: address0

デフォルト値: 指定なし

queueName

ブローカーで作成されるキュー名。queueName が指定されていない場合、CR はアドレスのみを作成します。

: String

: queue0

デフォルト値: 指定なし

removeFromBrokerOnDelete*

デプロイメントのアドレス CR インスタンスを削除するときに、Operator がデプロイメント内のすべてのブローカーの既存のアドレスを削除するかどうかを指定します。デフォルト値はfalseです。これは、CR を削除するときに Operator が既存のアドレスを削除しないことを意味します。

: Boolean

: True

デフォルト値: false

routingType*

使用するルーティングタイプ。anycast または multicast

: String

: anycast

デフォルト値: multicast

8.1.3. セキュリティーのカスタムリソースの設定リファレンス

セキュリティー CRD に基づく CR インスタンスを使用して、デプロイメント内のブローカーのセキュリティー構成を定義できます。これには、次のものが含まれます。

  • ユーザーとロール
  • Properties Login Moduleguest Login Modulekeycloak Login Module などのログインモジュール
  • ロールベースのアクセス制御
  • コンソールアクセス制御
注記

オプションの多くは、ブローカーのセキュリティー保護 で説明されているブローカーのセキュリティーの概念を理解する必要があります

次の表で、設定できる項目の詳細を示します。

重要

アスタリスク( *)でマークされた設定アイテムは、該当するカスタムリソース(CR)でデプロイに必要です。不要なアイテムの値を明示的に指定しない場合には、設定にデフォルト値が使用されます。

エントリーサブエントリー説明と使用法

loginModules

 

1 つ以上のログインモジュール設定。

ログインモジュールは、次のいずれかのタイプになります。

  • Properties Login Module: ブローカーユーザーを直接定義できます。
  • guestLoginModule - ログイン認証情報がないユーザーや、認証情報が認証に失敗するユーザーの場合は、ゲストアカウントを使用してブローカーへの制限されたアクセスを付与できます。
  • keycloak Login Module - Red Hat シングルサインオンを使用してブローカーを保護できます。

propertiesLoginModule

name*

ログインモジュールの名前。

: String

: my-login

デフォルト値: 該当なし

 

users.name*

ユーザーの名前。

: String

: jdoe

デフォルト値: 該当なし

 

users.password*

ユーザーのパスワード。

: String

: パスワード

デフォルト値: 該当なし

 

users.roles

ロールの名前。

: String

: viewer

デフォルト値: 該当なし

guestLoginModule

name*

ゲストログインモジュールの名前。

: String

: guest-login

デフォルト値: 該当なし

 

guestUser

ゲストユーザーの名前。

: String

: myguest

デフォルト値: 該当なし

 

guestRole

ゲストユーザーのロールの名前。

: String

: guest

デフォルト値: 該当なし

keycloakLoginModule

name

KeycloakLoginModule の名前

: String

: sso

デフォルト値: 該当なし

 

moduleType

KeycloakLoginModule のタイプ (directAccess または bearerToken)

: String

: bearerToken

デフォルト値: 該当なし

 

設定

以下の設定項目は Red Hat シングルサインオンに関連しており、詳細情報はOpen IDConnectのドキュメントから入手できます。

 

configuration.realm*

KeycloakLoginModule のレルム

: String

: myrealm

デフォルト値: 該当なし

 

configuration.realmPublicKey

レルムの公開鍵

: String

デフォルト値: 該当なし

 

configuration.authServerUrl*

keycloak 認証サーバーの URL

: String

デフォルト値: 該当なし

 

configuration.sslRequired

SSL が必要かどうかを指定します

: String

有効な値は、「all」、「external」、および「none」です。

 

configuration.resource*

リソース名

アプリケーションの client-id各アプリケーションには、アプリケーションを識別するために使用される client-id があります。

 

configuration.publicClient

パブリッククライアントかどうかを指定します。

: Boolean

デフォルト値: false

: false

 

configuration.credentials.key

認証情報キーを指定します。

: String

デフォルト値: 該当なし

: String

デフォルト値: 該当なし

 

configuration.credentials.value

認証情報の値を指定します

: String

デフォルト値: 該当なし

 

configuration.useResourceRoleMappings

リソースロールマッピングを使用するかどうかを指定します

: Boolean

: false

 

configuration.enableCors

CORS(Cross-Origin Resource Sharing)を有効にするかどうかを指定します。

CORS プリフライトリクエストを処理します。また、アクセストークンを調べて、有効な発信元を判別します。

: Boolean

デフォルト値: false

 

configuration.corsMaxAge

CORS 最大有効期限

CORS が有効な場合は、Access-Control-Max-Age ヘッダーの値が設定されます。

 

configuration.corsAllowedMethods

CORS で利用可能なメソッド

CORS が有効な場合は、Access-Control-Allow-Methods ヘッダーの値が設定されます。これはコンマ区切りの文字列である必要があります。

 

configuration.corsAllowedHeaders

CORS で利用可能なヘッダー

CORS が有効な場合は、Access-Control-Allow-Headers ヘッダーの値を設定します。これはコンマ区切りの文字列である必要があります。

 

configuration.corsExposedHeaders

CORS 公開ヘッダー

CORS が有効な場合は、Access-Control-Expose-Headers ヘッダーの値を設定します。これはコンマ区切りの文字列である必要があります。

 

configuration.exposeToken

アクセストークンを公開するかどうかを指定します

: Boolean

デフォルト値: false

 

configuration.bearerOnly

ベアラートークンを検証するかどうかを指定します

: Boolean

デフォルト値: false

 

configuration.autoDetectBearerOnly

ベアラートークンのみを自動検出するかどうかを指定します

: Boolean

デフォルト値: false

 

configuration.connectionPoolSize

接続プールのサイズ

: Integer

デフォルト値: 20

 

configuration.allowAnyHostName

ホスト名を許可するかどうかを指定します

: Boolean

デフォルト値: false

 

configuration.disableTrustManager

トラストマネージャーを無効にするかどうかを指定します

: Boolean

デフォルト値: false

 

configuration.trustStore*

トラストストアのパス

これは、ssl-required が none、または disable-trust-manager が true でない限り、必須です。

 

configuration.trustStorePassword*

トラストストアのパスワード

これは、トラストストアが設定され、トラストストアにパスワードが必要な場合は必須です。

 

configuration.clientKeyStore

クライアントキーストアのパス

: String

デフォルト値: 該当なし

 

configuration.clientKeyStorePassword

クライアントのキーストアパスワード

: String

デフォルト値: 該当なし

 

configuration.clientKeyPassword

クライアントキーのパスワード

: String

デフォルト値: 該当なし

 

configuration.alwaysRefreshToken

トークンを常に更新するかどうかを指定します

: Boolean

: false

 

configuration.registerNodeAtStartup

起動時にノードを登録するかどうかを指定します

: Boolean

: false

 

configuration.registerNodePeriod

ノードの再登録期間

: String

デフォルト値: 該当なし

 

configuration.tokenStore

トークンストアのタイプ (session または Cookie)

: String

デフォルト値: 該当なし

 

configuration.tokenCookiePath

クッキーストアのクッキーパス

: String

デフォルト値: 該当なし

 

configuration.principalAttribute

UserPrincipal 名を入力する OpenID Connect ID Token 属性。

UserPrincipal 名を入力する OpenID Connect ID Token 属性。トークン属性が null の場合、デフォルトは sub に設定されます。使用できる値は sub、preferred_username、email、name、nickname、given_name、family_name です。

 

configuration.proxyUrl

プロキシー URL

 

configuration.turnOffChangeSessionIdOnLogin

ログインに成功したときにセッション ID を変更するかどうかを指定します

: Boolean

: false

 

configuration.tokenMinimumTimeToLive

アクティブなアクセストークンを更新するまでの最小時間

: Integer

デフォルト値: 0

 

configuration.minTimeBetweenJwksRequests

新しい公開鍵取得の Keycloak への要求 2 件の間で最小限あける間隔

: Integer

デフォルト値: 10

 

configuration.publicKeyCacheTtl

新しい公開鍵取得の Keycloak への要求 2 件の間で最大あけることのできる間隔

: Integer

デフォルト値: 86400

 

configuration.ignoreOauthQueryParameter

ベアラートークン処理の access_token クエリパラメーターの処理をオフにするかどうか

: Boolean

: false

 

configuration.verifyTokenAudience

トークンにオーディエンスとしてこのクライアント名(リソース)が含まれているかどうかを検証します

: Boolean

: false

 

configuration.enableBasicAuth

Basic 認証をサポートするかどうか

: Boolean

デフォルト値: false

 

configuration.confidentialPort

SSL/TLS を介した安全な接続で Keycloak サーバーが使用する機密ポート

: Integer

: 8443

 

configuration.redirectRewriteRules.key

リダイレクト URI の照合に使用される正規表現。

: String

デフォルト値: 該当なし

 

configuration.redirectRewriteRules.value

置換文字列

: String

デフォルト値: 該当なし

 

configuration.scope

Direct Access Grants Login Module の OAuth2 スコープパラメーター

: String

デフォルト値: 該当なし

securityDomains

 

ブローカーのセキュリティードメイン

 

brokerDomain.name

ブローカードメイン名

: String

: activemq

デフォルト値: 該当なし

 

brokerDomain.loginModules

1 つ以上のログインモジュール。各エントリーは、上記の login Modules セクションで事前に定義されている必要があります。

 

brokerDomain.loginModules.name

ログインモジュールの名前

: String

: prop-module

デフォルト値: 該当なし

 

brokerDomain.loginModules.flag

PropertiesLoginModuleと同じように、requiredrequisitesufficient および optional が有効な値です。

: String

: sufficient

デフォルト値: 該当なし

 

brokerDomain.loginModules.debug

Debug

 

brokerDomain.loginModules.reload

Reload

 

consoleDomain.name

ブローカードメイン名

: String

: activemq

デフォルト値: 該当なし

 

consoleDomain.loginModules

シングルログインモジュール構成。

 

consoleDomain.loginModules.name

ログインモジュールの名前

: String

: prop-module

デフォルト値: 該当なし

 

consoleDomain.loginModules.flag

PropertiesLoginModuleと同じように、requiredrequisitesufficient および optional が有効な値です。

: String

: sufficient

デフォルト値: 該当なし

 

consoleDomain.loginModules.debug

Debug

: Boolean

: false

 

consoleDomain.loginModules.reload

Reload

: Boolean

: True

デフォルト: false

securitySettings

 

broker.xml または management.xml に追加する別のセキュリティー設定

 

broker.match

セキュリティー設定セクションのアドレス一致パターン。一致パターンの構文の詳細は、 AMQ Broker のワイルドカード構文を参照してください。

 

broker.permissions.operationType

権限の設定 で説明されている、セキュリティー設定の操作タイプ。

: String

: createAddress

デフォルト値: 該当なし

 

broker.permissions.roles

権限の設定 で説明されているように、セキュリティー設定はこれらのロールに適用されます。

: String

: root

デフォルト値: 該当なし

securitySettings.management

 

management.xmlを構成するためのオプション。

 

hawtioRoles

ブローカーコンソールへのログインを許可されたロール。

: String

: root

デフォルト値: 該当なし

 

connector.host

管理 API に接続するためのコネクターホスト。

: String

: myhost

デフォルト値: localhost

 

connector.port

管理 API に接続するためのコネクターポート。

: integer

: 1099

デフォルト値: 1099

 

connector.jmxRealm

管理 API の JMX レルム。

: String

: activemq

デフォルト値: activemq

 

connector.objectName

管理 API の JMX オブジェクト名。

: String

: connector:name = rmi

デフォルト: connector:name = rmi

 

connector.authenticatorType

管理 API 認証タイプ。

: String

: パスワード

デフォルト: password

 

connector.secured

管理 API 接続が保護されているかどうか。

: Boolean

: True

デフォルト値: false

 

connector.keyStoreProvider

管理コネクターのキーストアプロバイダー。Connector.secured = "true" を設定した場合に必要です。デフォルト値は JKS です。

 

connector.keyStorePath

キーストアの場所。Connector.secured = "true" を設定した場合に必要です。

 

connector.keyStorePassword

管理コネクターのキーストアパスワード。Connector.secured = "true" を設定した場合に必要です。

 

connector.trustStoreProvider

管理コネクターのトラストストアプロバイダー connector.secured = "true"を設定した場合に必要です。

: String

: JKS

デフォルト: JKS

 

connector.trustStorePath

管理コネクターのトラストストアの場所。Connector.secured = "true" を設定した場合に必要です。

: String

デフォルト値: 該当なし

 

connector.trustStorePassword

管理コネクターのトラストストアパスワード。Connector.secured = "true" を設定した場合に必要です。

: String

デフォルト値: 該当なし

 

connector.passwordCodec

管理コネクターのパスワードコーデック。構成ファイルでのパスワードの暗号化 で説明されているように使用するパスワードコーデックの完全修飾クラス名。

 

authorisation.allowedList.domain

allowedList のドメイン

: String

デフォルト値: 該当なし

 

authorisation.allowedList.key

allowedList のキー

: String

デフォルト値: 該当なし

 

authorisation.defaultAccess.method

defaultAccessList のメソッド

: String

デフォルト値: 該当なし

 

authorisation.defaultAccess.roles

defaultAccess リストのロール

: String

デフォルト値: 該当なし

 

authorisation.roleAccess.domain

roleAccess リストのドメイン

: String

デフォルト値: 該当なし

 

authorisation.roleAccess.key

roleAccess リストのキー

: String

デフォルト値: 該当なし

 

authorisation.roleAccess.accessList.method

roleAccess リストの方法

: String

デフォルト値: 該当なし

 

authorisation.roleAccess.accessList.roles

roleAccess リストのロール

: String

デフォルト値: 該当なし

 

applyToCrNames

このセキュリティー設定を、現在の名前空間の指定された CR で定義したブローカーに適用します。* または空の文字列の値は、すべてのブローカーに適用することを意味します。

: String

: my-broker

デフォルト値: 現在の名前空間の CR で定義したすべてのブローカー。