8.4.4. AMQ Broker 管理コンソールのルートの作成

クラスタリングテンプレートでは、デフォルトで AMQ Broker 管理コンソールは公開されません。これは、OpenShift プロキシーがクラスター内の各ブローカー間で負荷分散を実行し、特定のタイミングで接続されるブローカーコンソールを制御できないためです。

以下の手順は、独自の管理コンソールインスタンスに接続するようにクラスター内の各ブローカーを設定する方法を示しています。これを行うには、クラスター内の各ブローカー Pod に専用のサービスとルートの組み合わせを作成します。

前提条件

手順

  1. StatefulSet セレクターを使用して Pod 間を選択し、クラスターの各 Pod に通常のサービスを作成します。これを実行するには、以下のようなサービステンプレートを .yaml 形式でデプロイします。

    apiVersion: v1
    kind: Service
    metadata:
      annotations:
        description: 'Service for the management console of broker pod XXXX'
      labels:
        app: application2
        application: application2
        template: amq-broker-74-persistence-clustered-ssl
      name: amq2-amq-console-XXXX
      namespace: amq74-p-c-ssl-2
    spec:
      ports:
        - name: console-jolokia
          port: 8161
          protocol: TCP
          targetPort: 8161
      selector:
        deploymentConfig: application2-amq
        statefulset.kubernetes.io/pod-name: application2-amq-XXXX
      type: ClusterIP

    上記のテンプレートの XXXX は、サービスに関連付けるブローカー Pod の ordinal 値に置き換えます。たとえば、サービス をクラスターの最初の Pod に関連付けるには、XXXX0 に設定します。サービスと 2 つ目の Pod を関連付けるには、XXXX1 に設定するなどです。

    クラスターにある各ブローカー Pod のテンプレートのインスタンスを保存してデプロイします。

    注記

    上記のテンプレートのサンプルでは、セレクターは Kubernetes で定義される Pod 名を使用します。

  2. 各ブローカー Pod にルートを作成し、AMQ Broker 管理コンソールが SSL を使用して Pod に接続できるようにします。

    RoutesCreate Route の順にクリックします。

    Edit Route ページが表示されます。

    1. Services ドロップダウンメニューで、以前に作成したブローカーサービスで、ルートの関連付け先を選択します(例: amq2-amq-console-0 )。
    2. Target Port8161 に設定し、AMQ Broker 管理コンソールへのアクセスを有効にします。
    3. TLS パラメーターを表示するには、Secure route チェックボックスを選択します。

      1. TLS Termination ドロップダウンメニューから、Passthrough を選択します。

        ここで選択する内容では、OpenShift ルーターが復号化および再送信せずに AMQ Broker との通信をすべてリレーします。

    4. Create をクリックします。

      ブローカー Pod の 1 つに関連付けられたルートを作成する場合には、生成される .yaml ファイルには以下のような行が含まれます。

      spec:
        host: amq2-amq-console-0-amq74-p-c-ssl-2.apps-ocp311.example.com
        port:
          targetPort: console-jolokia
        tls:
          termination: passthrough
        to:
          kind: Service
          name: amq2-amq-console-0
          weight: 100
        wildcardPolicy: None
  3. 特定のブローカーインスタンスの管理コンソールにアクセスするには、上記の ホスト URL を Web ブラウザーにコピーします。

関連情報