パブリッシュ/サブスクライブ・クラスターの構成

キュー・マネージャーでトピックを定義します。 トピックをクラスター・トピックにするには、CLUSTER プロパティーを設定します。 このトピックのパブリケーションおよびサブスクリプションに使用するルーティングを選択するには、CLROUTE プロパティーを設定します。

始める前に

一部のクラスター構成では、直接ルーティング型パブリッシュ/サブスクライブのオーバーヘッドに対応できません。 この構成を使用する前に、 パブリッシュ/サブスクライブ・クラスターの設計で詳述されている考慮事項とオプションを検討してください。

クラスターへの変更をクラスター全体に伝搬させるには、少なくとも 1 つの完全リポジトリーが常に使用可能でなければなりません。 この作業を開始する前に、リポジトリーが使用可能であることを確認してください。

パブリッシュ/サブスクライブ・クラスターのルーティング: 動作に関する注意も参照してください。

シナリオ
  • クラスタへのキュー・マネージャの追加」の説明に従って、INVENTORYクラスタがセットアップされています。 これには 3 つのキュー・マネージャーが含まれており、LONDONNEWYORK はどちらも完全リポジトリーを保持し、 PARIS は部分リポジトリーを保持します。

本タスクについて

クラスター内のキュー・マネージャーにトピックを定義する際に、トピックがクラスター・トピックであるかどうかを指定する必要があります。クラスター・トピックである場合、このトピックのパブリケーションおよびサブスクリプションに使用するクラスター内でのルーティングも指定する必要があります。 トピックをクラスター・トピックにするには、 TOPIC オブジェクトの CLUSTER プロパティーをクラスターの名前で構成します。 クラスター内の一つのキュー・マネージャーにクラスター・トピックを定義することによって、トピックをクラスター全体で使用できるようにします。 クラスター内で使用するメッセージ・ルーティングを選択するには、 TOPIC オブジェクトの CLROUTE プロパティーを以下のいずれかの値に設定します。
  • DIRECT
  • TOPICHOST

デフォルトでは、トピック・ルーティングは DIRECTです。 直接ルーティング型クラスター・トピックをキュー・マネージャーに構成すると、クラスター内のすべてのキュー・マネージャーが、クラスター内の他のすべてのキュー・マネージャーを認識するようになります。 各キュー・マネージャーは、パブリッシュ操作およびサブスクライブ操作を実行するときに、クラスター内の他のすべてのキュー・マネージャーに直接接続できます。 直接ルーティング型パブリッシュ/サブスクライブ・クラスターを参照してください。

IBM® MQ 8.0以降、代わりにトピックの経路指定を TOPICHOSTとして構成できるようになりました。 トピック・ホスト・ルーティングを使用する場合は、クラスター内のすべてのキュー・マネージャーが、ルーティング対象のトピック定義をホストするクラスター・キュー・マネージャー (つまり、管理者がトピック・オブジェクトを定義したキュー・マネージャー) を認識するようになります。 パブリッシュ操作およびサブスクライブ操作を行うとき、クラスター内のキュー・マネージャーは、それらのトピック・ホスト・キュー・マネージャーにのみ接続し、相互に直接接続されることはありません。 トピック・ホスト・キュー・マネージャーは、パブリケーションがパブリッシュされるキュー・マネージャーから、一致するサブスクリプションがあるキュー・マネージャーへのパブリケーションの経路指定を担当します。 トピック・ホスト・ルーティング型パブリッシュ/サブスクライブ・クラスターを参照してください。

注: ( CLUSTER プロパティーを設定して) トピック・オブジェクトをクラスター化した後は、 CLROUTE プロパティーの値を変更することはできません。 値を変更するには、その前にオブジェクトのクラスター化を解除 (CLUSTER' ' に設定) する必要があります。 トピックのクラスター化を解除すると、トピック定義はローカル・トピックに変換されます。これによって、パブリケーションがリモート・キュー・マネージャーのサブスクリプションに送信されない期間ができます。この変更を行う場合は、この点を考慮する必要があります。 別のキュー・マネージャーのクラスター・トピックと同じ名前で非クラスター・トピックを定義する効果を参照してください。 クラスター化されているときに CLROUTE プロパティーの値を変更しようとすると、システムはMQRCCF_CLROUTE_NOT_ALTERABLE例外。

手順

  1. トピックをホストするキュー・マネージャーを選択します。

    どのクラスター・キュー・マネージャーでもトピックをホストできます。 3 つのキュー・マネージャー (LONDONNEWYORK、または PARIS) のいずれかを選択し、TOPIC オブジェクトのプロパティーを構成します。 直接ルーティングを使用する場合、どのキュー・マネージャーを選択しても操作に違いは生じません。 トピック・ホスト・ルーティングを使用する場合、選択したキュー・マネージャーには、パブリケーションのルーティングを行う追加の責任が生じます。 そのため、トピック・ホスト・ルーティングにおいては、性能の良いシステムにホストされる、ネットワーク接続の状態が良いキュー・マネージャーを選択してください。

  2. キュー・マネージャーでトピックを定義します
    トピックをクラスター・トピックにするには、トピックを定義するときにクラスター名を使用し、このトピックのパブリケーションおよびサブスクリプションに使用するルーティングを設定します。 例えば、LONDON キュー・マネージャー上に直接ルーティング・クラスター・トピックを作成するには、以下のようにトピックを作成します。
    DEFINE TOPIC(INVENTORY) TOPICSTR('/INVENTORY') CLUSTER(INVENTORY) CLROUTE(DIRECT)
    
    クラスター内の一つのキュー・マネージャーにクラスター・トピックを定義することによって、トピックをクラスター全体で使用できるようにします。

    CLROUTE の使用についての詳細情報は、DEFINE TOPIC (CLROUTE) および パブリッシュ/サブスクライブ・クラスターのルーティング: 動作に関する注意を参照してください。

結果

クラスターは、トピックのパブリケーションおよびサブスクリプションを受信する準備が整いました。

次のタスク

トピック・ホスト・ルーティング型パブリッシュ/サブスクライブ・クラスターを構成した場合には、このトピック用にたいてい 2 つ目のトピック・ホストを追加することになります。 トピックホストルーティングクラスタへのトピックホストの追加」 を参照してください。

お客様の組織が地理的に分散しているなどの理由で、いくつかの別個のパブリッシュ/サブスクライブ・クラスターが存在する場合、一部のクラスター・トピックをすべてのクラスターに伝搬することもできます。 階層でクラスターに接続すると、これを行うことができます。 複数のクラスタのトピック空間を結合する」を参照してください。 あるクラスターから別のクラスターへ流れるパブリケーションを制御することもできます。 複数のクラスタでトピック空間を結合および分離する」を参照してください。