第10章 リファレンス
10.1. カスタムリソース設定リファレンス
カスタムリソース定義 (CRD) は、オペレーターでデプロイされたカスタム OpenShift オブジェクトの設定項目のスキーマです。対応するカスタムリソース (CR) インスタンスをデプロイして、CRD に表示される設定アイテムの値を指定します。
次のサブセクションでは、メインブローカーおよびアドレス CRD に基づいてカスタムリソースインスタンスで設定できる設定項目について詳説します。
10.1.1. ブローカーカスタムリソース設定リファレンス
メインブローカー CRD に基づく CR インスタンスを使用すると、ブローカーを設定して OpenShift プロジェクトにデプロイできます。次の表に、CR インスタンスで設定できる項目を示します。
アスタリスク ( *) でマークされた設定アイテムは、該当するカスタムリソース (CR) でデプロイに必要です。不要なアイテムの値を明示的に指定しない場合には、設定にデフォルト値が使用されます。
エントリー | サブエントリー | 説明と使用法 |
---|---|---|
| ブローカーおよび管理コンソールの接続に必要な管理者ユーザー名。
値を指定しない場合、値は自動的に生成され、シークレットに保存されます。デフォルトのシークレット名の形式は、 型: String 例: my-user デフォルト値: 無作為に、自動生成された値 | |
| ブローカーおよび管理コンソールへの接続に必要な管理者パスワード。
値を指定しない場合、値は自動的に生成され、シークレットに保存されます。デフォルトのシークレット名の形式は、 型: String 例: my-password デフォルト値: 無作為に、自動生成された値 | |
| ブローカーのデプロイメント設定 | |
| Red Hat Container Registry からプルされるブローカーコンテナーイメージの完全パス。デフォルトのコンテナーイメージタグは、AMQ Broker のバージョンと一致します。 型: String 例: registry.redhat.io/amq7/amq-broker:latest デフォルト値: registry.redhat.io/amq7/amq-broker:7.7 | |
| デプロイメントで作成するブローカー Pod の数。
2 以上の値を指定すると、ブローカーのデプロイメントはデフォルトでクラスター化されます。クラスターのユーザー名とパスワードは自動的に生成され、同じシークレットに保存されます (デフォルトで 型: int 例: 1 デフォルト値: 2 | |
| ブローカーへの接続にログイン資格情報が必要かどうかを指定します。 型: Boolean 例: false デフォルト値: true | |
|
デプロイメントでブローカー Pod ごとにジャーナルストレージを使用するかどうかを指定します。 型: Boolean 例: false デフォルト値: true | |
| 非同期 I/O (AIO) と非ブロッキング I/O(NIO) のどちらを使用するかを指定します。 型: String 例: aio デフォルト値: nio | |
| ブローカーデプロイメントの失敗や、意図的にスケールダウンしたことでブローカー Pod がシャットダウンした場合には、ブローカークラスターでまだ実行中の別のブローカー Pod にメッセージを移行するかどうかを指定します。 型: Boolean 例: false デフォルト値: true | |
| デプロイメントの Pod で実行されている各ブローカーコンテナーが消費できるホストノード CPU の最大量 (ミリコア単位)。 型: String Example: "500m" デフォルト値: お使いのバージョンの OpenShift Container Platform と同じデフォルト値を使用します。クラスター管理者に相談してください。 | |
| デプロイメント内の Pod で実行されている各ブローカーコンテナーが消費できるホストノードメモリーの最大量 (バイト単位)。バイト表記 (K、M、G など)、または同等のバイナリー (Ki、Mi、Gi) をサポートします。 型: String Example: "1024M" デフォルト値: お使いのバージョンの OpenShift Container Platform と同じデフォルト値を使用します。クラスター管理者に相談してください。 | |
| デプロイメント内の Pod で実行されている各ブローカーコンテナーが明示的に要求するホストノードの CPU 量 (ミリコア単位)。 型: String Example: "250m" デフォルト値: お使いのバージョンの OpenShift Container Platform と同じデフォルト値を使用します。クラスター管理者に相談してください。 | |
| デプロイメント内の Pod で実行されている各ブローカーコンテナーが明示的に要求するホストノードメモリーの量 (バイト単位)。バイト表記 (K、M、G など)、または同等のバイナリー (Ki、Mi、Gi) をサポートします。 型: String Example: "512M" デフォルト値: お使いのバージョンの OpenShift Container Platform と同じデフォルト値を使用します。クラスター管理者に相談してください。 | |
|
デプロイメントにある各ブローカーが永続ストレージに必要な Persistent Volume Claim (永続ボリューム要求、PVC) のサイズ (バイト単位)。このプロパティーは、 型: String 例: 4Gi デフォルト値: 2Gi | |
| 単一のアクセプターの設定インスタンス。 | |
| アクセプターの名前。 型: String 例: my-acceptor デフォルト値: 該当なし | |
| アクセプターインスタンスに使用するポート番号。 型: int 例: 5672 デフォルト値: 61626 (定義する最初のアクセプター)。その後、デフォルト値は、定義する後続のアクセプターごとに 10 ずつ増えます。 | |
| アクセプターインスタンスで有効にするメッセージングプロトコル。 型: String 例: amqp、core デフォルト値: all | |
|
アクセプターポートで SSL を有効にするかどうかを指定します。 型: Boolean 例: True デフォルト値: false | |
| ブローカーキーストア、トラストストア、および対応するパスワード (すべて Base64 でエンコードされたもの) が保存されるシークレット。
アクセプターでデフォルト名が必要であっても、常にこのシークレットを自分で作成する必要があります。 型: String 例: my-broker-deployment-my-acceptor-secret デフォルト値: <Custom-Resource-name>-<acceptor-name>-secret | |
| TLS/SSL 通信に使用する暗号スイートのコンマ区切りリスト。
クライアントアプリケーションでサポートする最も安全な暗号スイートを指定します。コンマ区切りのリストを使用して、ブローカーとクライアントの両方に共通の暗号スイートのセットを指定する場合、または暗号スイートを指定しない場合には、ブローカーとクライアントは、使用する暗号スイートについて相互に交渉します。指定する暗号スイートがわからない場合は、最初にデバッグモードで実行されているクライアントとのブローカークライアント接続を確立して、ブローカーとクライアントの両方に共通の暗号スイートを確認することをお勧めします。次に、ブローカーで 型: String デフォルト値: 指定なし | |
| TLS/SSL 通信に使用するプロトコルのコンマ区切りリスト。 型: String 例: TLSv1、TLSv1.1、TLSv1.2 デフォルト値: 指定なし | |
|
ブローカーがアクセプターで双方向 TLS が必要であることをクライアントに通知するかどうかを指定します。このプロパティーは、 型: Boolean 例: True デフォルト値: 指定なし | |
|
アクセプターで双方向 TLS が要求されていることを通知するかどうかを指定します。ただし、必須ではありません。このプロパティーは 型: Boolean 例: True デフォルト値: 指定なし | |
| クライアントの証明書のコモンネーム (CN) をホスト名と比較して一致することを確認するかどうかを指定します。このオプションは、双方向 TLS が使用されている場合にのみ適用されます。 型: Boolean 例: True デフォルト値: 指定なし | |
| SSL プロバイダーが JDK であるか OPENSSL であるかを指定します。 型: String 例: OPENSSL デフォルト値: JDK | |
|
受信接続の 型: String 例: some_regular_expression デフォルト値: 指定なし | |
| Open Shift Container Platform の外部のクライアントにアクセプターを公開するかどうかを指定します。 型: Boolean 例: True デフォルト値: false | |
|
型: String 例: jms.queue デフォルト値: 指定なし | |
|
型: String 例: /topic / デフォルト値: 指定なし | |
| アクセプターで許可されている接続の数。この制限に達すると、DEBUG メッセージがログに出力され、接続は拒否されました。使用中のクライアントのタイプによって、接続が拒否されたときに何が起こるかが決まります。 型: integer 例: 2 デフォルト値: 0 (無制限の接続) | |
|
ブローカーが AMQP メッセージを大きなメッセージとして処理するために必要な最小メッセージサイズ (バイト単位)。AMQ メッセージのサイズがこの値以上の場合は、ブローカーはメッセージを、メッセージストレージ用にブローカーが使用する永続ボリューム (PV) の永続ボリューム (デフォルトでは 型: integer 例: 204800 デフォルト値: 102400(100 KB) | |
| 単一のコネクター設定インスタンス。 | |
| コネクターの名前。 型: String 例: my-connector デフォルト値: 該当なし | |
|
作成するコネクターのタイプ。 型: String 例: vm デフォルト値: tcp | |
| 接続するホスト名または IP アドレス。 型: String 例: 192.168.0.58 デフォルト値: 指定なし | |
| コネクターインスタンスに使用されるポート番号。 型: int 例: 22222 デフォルト値: 指定なし | |
|
コネクターポートで SSL を有効にするかどうかを指定します。 型: Boolean 例: True デフォルト値: false | |
| ブローカーキーストア、トラストストア、および対応するパスワード (すべて Base64 でエンコードされたもの) が保存されるシークレット。
コネクターでデフォルト名が必要であっても、このシークレットは常に自分で作成する必要があります。 型: String 例: my-broker-deployment-my-connector-secret デフォルト値: <Custom-Resource-name>-<connector-name>-secret | |
| TLS/SSL 通信に使用する暗号スイートのコンマ区切りリスト。 型: String 注: コネクターの場合、暗号スイートのリストを指定しないことをお勧めします。 デフォルト値: 指定なし | |
| TLS/SSL 通信に使用するプロトコルのコンマ区切りリスト。 型: String 例: TLSv1、TLSv1.1、TLSv1.2 デフォルト値: 指定なし | |
|
コネクターに双方向 TLS が必要であることをブローカがクライアントに通知するかどうかを指定します。このプロパティーは、 型: Boolean 例: True デフォルト値: 指定なし | |
|
コネクターで双方向 TLS が要求されていることを通知するかどうかを指定します。ただし、必須ではありません。このプロパティーは 型: Boolean 例: True デフォルト値: 指定なし | |
| クライアントの証明書のコモンネーム (CN) をホスト名と比較して一致することを確認するかどうかを指定します。このオプションは、双方向 TLS が使用されている場合にのみ適用されます。 型: Boolean 例: True デフォルト値: 指定なし | |
|
SSL プロバイダーが 型: String 例: OPENSSL デフォルト値: JDK | |
|
送信接続の 型: String 例: some_regular_expression デフォルト値: 指定なし | |
| OpenShift Container Platform 外のクライアントにコネクターを公開するかどうかを指定します。 型: Boolean 例: True デフォルト値: false | |
| Operator を一致するアドレスまたはアドレスのセットごとに CR に追加する設定を適用する方法を指定します。 指定できる値は次のとおりです。
型: String 例: replace_all デフォルト値: merge_all | |
| 一致するアドレスまたはアドレスの セット の設定。 | |
|
型: String 例: DROP デフォルト値: PAGE | |
| クライアントが、存在しないアドレスにバインドされているキューにメッセージを送信するとき、またはキューからメッセージを消費しようとするときに、ブローカーが自動的にアドレスを作成するかどうかを指定します。 型: Boolean 例: false デフォルト値: true | |
| ブローカーがデッドレターアドレスおよびキューを自動的に作成し、未配信メッセージを受信するかどうかを指定します。
パラメーターが 型: Boolean 例: True デフォルト値: false | |
| 期限切れのメッセージを受信するため、ブローカーがアドレスとキューを自動的に作成するかどうかを指定します。
パラメーターが 型: Boolean 例: True デフォルト値: false | |
|
このプロパティーは非推奨にされています。代わりに | |
|
このプロパティーは非推奨にされています。代わりに | |
| クライアントがまだ存在していないキューにメッセージを送信するとき、またはキューからメッセージを消費しようとするときに、ブローカーが自動的にキューを作成するかどうかを指定します。 型: Boolean 例: false デフォルト値: true | |
| ブローカーにキューがなくなったときに、ブローカーが自動的に作成されたアドレスを自動的に削除するかどうかを指定します。 型: Boolean 例: false デフォルト値: true | |
| アドレスにキューがない場合に、ブローカーが自動作成されたアドレスを自動削除するまで待機する時間 (ミリ秒単位)。 型: integer 例: 100 デフォルト値: 0 | |
|
このプロパティーは非推奨にされています。代わりに | |
|
このプロパティーは非推奨にされています。代わりに | |
| キューにコンシューマーとメッセージがない場合に、ブローカーが自動作成されたキューを自動削除するかどうかを指定します。 型: Boolean 例: false デフォルト値: true | |
| キューにコンシューマーとメッセージがない場合に、ブローカーが手動で作成されたキューを自動削除するかどうかを指定します。 型: Boolean 例: True デフォルト値: false | |
| キューにコンシューマーがない場合に、ブローカーが自動作成されたキューを自動削除するまで待機する時間 (ミリ秒単位)。 型: integer 例: 10 デフォルト値: 0 | |
| ブローカーがキューを自動的に削除できるかどうかを評価する前に、キューに入れることができるメッセージの最大数。 型: integer 例: 5 デフォルト値: 0 | |
| 設定ファイルを再読み込みすると、このパラメーターで、設定ファイルから削除されたアドレス (とそのキュー) を処理する方法を指定します。以下の値を指定できます。
型: String 例: FORCE デフォルト値: OFF | |
| 設定ファイルを再読み込みすると、この設定は、ブローカーが設定ファイルから削除されたキューを処理する方法を指定します。以下の値を指定できます。
型: String 例: FORCE デフォルト値: OFF | |
| ブローカーが未達の (未配信) メッセージを送信するアドレス。 型: String 例: DLA デフォルト値: None | |
| ブローカーにより、自動作成された dead letter キューの名前に適用される接頭辞。 型: String 例: my DLQ。 デフォルト値: DLQ. | |
| ブローカーにより、自動作成された dead letter キューに適用される接尾辞。 型: String 例: .DLQ デフォルト値: None | |
| 自動作成されたアドレスで使用されるルーティングタイプ。 型: String 例: ANYCAST デフォルト値: MULTICAST | |
| アドレスのキューに対してメッセージディスパッチを開始する前に必要なコンシューマーの数。 型: integer 例: 5 デフォルト値: 0 | |
| コンシューマーのデフォルトのウィンドウサイズ (バイト単位)。 型: integer 例: 300000 デフォルト値: 1048576 (1024*1024) | |
|
型: integer 例: 5 デフォルト値: -1(遅延なし) | |
| アドレス上のすべてのキューがデフォルトで独占キューであるかどうかを指定します。 型: Boolean 例: True デフォルト値: false | |
| メッセージのグループ化に使用するバケットの数。 型: integer 例: 0(メッセージのグループ化は無効) デフォルト値: -1(制限なし) | |
| グループ内のどのメッセージが最初であるかをコンシューマーに示すために使用されるキー。 型: String Example: firstMessageKey デフォルト値: None | |
| 新しいコンシューマーがブローカーに接続するときにグループのリバランスするかどうかを指定します。 型: Boolean 例: True デフォルト値: false | |
| ブローカーがグループのリバランスをしている間、メッセージのディスパッチを一時停止するかどうかを指定します。 型: Boolean 例: True デフォルト値: false | |
| アドレス上のすべてのキューがデフォルトで最後の値のキューであるかどうかを指定します。 型: Boolean 例: True デフォルト値: false | |
| 最後の値のキューに使用するデフォルトのキー。 型: String 例: stock_ticker デフォルト値: None | |
| 任意のタイミングでキューで許可されるコンシューマーの最大数。 型: integer 例: 100 デフォルト値: -1(制限なし) | |
| アドレス上のすべてのキューがデフォルトで non-destructive であるかどうかを指定します。 型: Boolean 例: True デフォルト値: false | |
| コンシューマーがなくなったときにブローカーがキューの内容をパージするかどうかを指定します。 型: Boolean 例: True デフォルト値: false | |
|
自動作成されたキューで使用されるルーティングタイプ。デフォルト値は 型: String 例: ANYCAST デフォルト値: MULTICAST | |
| リングサイズが明示的に設定されていない、一致するキューのデフォルトのリングサイズ。 型: integer 例: 3 デフォルト値: -1(サイズ制限なし) | |
| Prometheus プラグインなどの設定されたメトリクスプラグインが一致するアドレスまたはアドレスのセットのメトリクスを収集するかどうかを指定します。 型: Boolean 例: false デフォルト値: true | |
| 期限切れのメッセージを受信するアドレス。 型: String Example: myExpiryAddress デフォルト値: None | |
| デフォルトの有効期限を使用しているメッセージに適用される有効期限 (ミリ秒単位)。 型: integer 例: 100 デフォルト値: -1(有効期限は適用されません) | |
| ブローカーが自動作成された期限切れキューの名前に適用される接頭辞。 型: String Example: myExp. デフォルト値: EXP. | |
| ブローカーが自動作成された期限切れキューの名前に適用される接尾辞。 型: String 例: .EXP デフォルト値: None | |
| キューが最後の値のみを使用するかどうかを指定します。 型: Boolean 例: True デフォルト値: false | |
| 管理リソースが参照できるメッセージの数を指定します。 型: integer 例: 100 デフォルト値: 200 | |
| アドレス設定と、ブローカーで設定されたアドレスとを照合する文字列。正確なアドレス名を指定するか、ワイルドカード式を使用してアドレス設定をアドレスのセットと照合できます。
ワイルドカード式を 型: String Example: 'myAddresses*' デフォルト値: None | |
| 設定されたデッドレターアドレスにメッセージを送信するまでに、ブローカがメッセージの配信を試行する回数を指定します。 型: integer 例: 20 デフォルト値: 10 | |
| この値より大きい有効期限を使用しているメッセージに適用される有効期限 (ミリ秒単位)。 型: integer 例: 20 デフォルト値: -1(最大有効期限は適用されません) | |
| ブローカーによるメッセージの再配信試行間の最大値 (ミリ秒単位)。 型: integer 例: 100
デフォルト値: デフォルト値は、 | |
|
アドレスの最大メモリーサイズ (バイト単位)。 型: String 例: 10Mb デフォルト値: -1(制限なし) | |
|
ブローカーがメッセージを拒否する前にアドレスが到達できる最大サイズ (バイト単位)。 型: integer 例: 500 デフォルト値: -1(最大サイズなし) | |
| ブローカーがアドレスのメッセージカウンター履歴を保持する日数。 型: integer 例: 5 デフォルト値: 0 | |
| この値よりも短い有効期限を使用しているメッセージに適用される有効期限 (ミリ秒単位)。 型: integer 例: 20 デフォルト値: -1(最小有効期限は適用されません) | |
| ページングナビゲーション中に I/O を最適化するためにメモリー内に保持するページファイルの数。 型: integer 例: 10 デフォルト値: 5 | |
|
ページングサイズ (バイト単位)。 型: String 例: 20971520 デフォルト値: 10485760(約 10.5 MB) | |
| キャンセルされたメッセージを再配信する前にブローカーが待機する時間 (ミリ秒単位)。 型: integer 例: 100 デフォルト値: 0 | |
|
型: number 例: 5 デフォルト値: 1 | |
|
競合を回避するために 型: number 例: 1.1 デフォルト値: 0 | |
| キューの最後のコンシューマーが閉じられてから残りのメッセージを再分配するまでブローカーが待機する時間 (ミリ秒単位) を定義します。 型: integer 例: 100 デフォルト値: -1(未設定) | |
| アドレスに今後作成されるキューに対して保持するメッセージの数。 型: integer 例: 100 デフォルト値: 0 | |
| キューにルーティングされないメッセージは、設定済みのデッドレターアドレスアドレスに送信されます。 型: Boolean 例: True デフォルト値: false | |
| コンシューマーが遅いかどうかをブローカーがチェックする頻度 (秒単位)。 型: integer 例: 15 デフォルト値: 5 | |
|
低速なコンシューマーが特定されたときにどうするのかを指定します。有効なオプションは 型: String 例: KILL デフォルト値: NOTIFY | |
| 最小限許可されるメッセージ消費速度 (秒単位)。この値を下回るとコンシューマーは遅いと見なされます。 型: integer 例: 100 デフォルト値: -1(未設定) | |
| ブローカー管理コンソールの設定。 | |
| 管理コンソールポートを公開するかどうかを指定します。 型: Boolean 例: True デフォルト値: false | |
| 管理コンソールポートで SSL を使用するかどうかを指定します。 型: Boolean 例: True デフォルト値: false | |
|
ブローカーキーストア、トラストストア、および対応するパスワード (すべて Base64 でエンコードされたもの) が保存されるシークレット。 型: String 例: my-broker-deployment-console-secret デフォルト値: 指定なし | |
| 管理コンソールにクライアント認証が必要かどうかを指定します。 型: Boolean 例: True デフォルト値: false | |
| ||
|
型: Boolean 例: True デフォルト値: false | |
|
型: Boolean 例: True デフォルト値: false | |
|
対応するブローカーコンテナーイメージを使用するように Operator が CR を自動更新する先の AMQ Broker のマイナーバージョンを指定します。たとえば、 型: String 例: 7.7.0 デフォルト値: AMQ Broker の現在のバージョン |
10.1.2. アドレスのカスタムリソースの設定リファレンス
アドレス CRD に基づく CR インスタンスを使用して、デプロイメント内のブローカーのアドレスとキューを定義できます。次の表で、設定できる項目の詳細を示します。
アスタリスク ( *) でマークされた設定アイテムは、該当するカスタムリソース (CR) でデプロイに必要です。不要なアイテムの値を明示的に指定しない場合には、設定にデフォルト値が使用されます。
エントリー | 説明と使用法 |
---|---|
| ブローカーで作成されるアドレス名。 型: String 例: address0 デフォルト値: 指定なし |
| ブローカーで作成されるキュー名。 型: String 例: queue0 デフォルト値: 指定なし |
|
デプロイメントのアドレス CR インスタンスを削除するときに、Operator がデプロイメント内のすべてのブローカーの既存のアドレスを削除するかどうかを指定します。デフォルト値は 型: Boolean 例: True デフォルト値: false |
|
使用するルーティングタイプ。 型: String 例: anycast デフォルト値: 指定なし |