3.3. Operator ベースのブローカーデプロイメントの作成

3.3.1. 基本的なブローカーインスタンスのデプロイ

以下の手順では、カスタムリソース (CR) インスタンスを使用して基本的なブローカーデプロイメントを作成する方法を説明します。

注記

前提条件

  • AMQ Broker Operator がすでにインストールされている必要があります。

  • AMQ Broker 7.3 以降では、新しいバージョンの Red Hat Container Registry を使用してコンテナーイメージにアクセスします。この新しいバージョンのレジストリーでは、イメージにアクセスする前に認証されたユーザーである必要がある。本セクションの手順を実行する前に、Red Hat Container Registry Authentication で説明されている手順を完了する必要がある。

手順

Operator が正常にインストールされると、Operator は実行され、CR に関連する変更をリッスンします。以下の手順では、CR インスタンスを使用して基本的なブローカーをプロジェクトにデプロイする方法を説明します。

  1. ブローカーデプロイメントのカスタムリソース (CR) インスタンスの設定を開始します。

    1. OpenShift コマンドラインインターフェイスの使用:

      1. デプロイメントを作成するプロジェクトの管理者権限で OpenShift にログインします。

        oc login -u <user> -p <password> --server=<host:port>
      2. ダウンロードした Operator インストールアーカイブの deploy/crs ディレクトリーに含まれる broker_activemqartemis_cr.yaml というサンプル CR ファイルを開きます。
    2. OpenShift Container Platform Web コンソールの使用

      1. 配置を作成しているプロジェクトの管理者権限でコンソールにログインします。
      2. メインブローカー CRD に基づいて新規 CR インスタンスを起動します。左側のペインで、AdministrationCustom Resource Definitions をクリックします。
      3. ActiveMQArtemis CRD をクリックします。
      4. Instances タブをクリックします。
      5. Create ActiveMQArtemis をクリックします。

        コンソールで、YAML エディターが開き、CR インスタンスを設定できます。

    基本的なブローカーデプロイメントの場合、設定が以下のように表示される可能性があります。この設定は、broker_activemqartemis_cr.yaml サンプル CR ファイルのデフォルトコンテンツです。

    apiVersion: broker.amq.io/v2alpha3
    kind: ActiveMQArtemis
    metadata:
      name: ex-aao
      application: ex-aao-app
    spec:
        version: 7.7.0
        deploymentPlan:
            size: 2
            image: registry.redhat.io/amq7/amq-broker:7.7
            ...
    注記

    metadata セクションで、namespace プロパティーを追加し、OpenShift Container Platform Web コンソールを使用して CR インスタンスを作成する場合にのみ値を指定する必要があります。指定する値は、ブローカーデプロイメントの OpenShift プロジェクトの名前です。

  2. size の値は、デプロイするブローカーの数を指定します。デフォルト値の 2 は、2 つのブローカーを使用してクラスター化されたブローカーのデプロイメントを指定します。ただし、単一のブローカーインスタンスをデプロイするには、値を 1 に変更します。
  3. image 値は、ブローカーの起動に使用するコンテナーイメージを指定します。以下に示すように、この値が Red Hat Container Registry 内の AMQ Broker 7.7 ブローカーコンテナーイメージの最新バージョンを指定していることを確認してください。

    image: registry.redhat.io/amq7/amq-broker:7.7
    注記

    前のステップで、イメージ 属性は、完全なイメージタグ (例: 7.7-2) ではなく、Floating イメージタグ (つまり、7.7) を指定します。このフローティングタグを指定すると、デプロイメントでは 7.7 イメージストリームで利用可能な最新のイメージが使用されます。さらに、このようなフローティングタグを指定すると、Stateful Set の imagePullPolicy 属性が Always に設定されている場合に、Red Hat Container Registry で利用可能になったときに、デプロイメントは自動的に新しい micro イメージバージョンをプルして使用します (例: 7.7-37-7-4 など)。

  4. CR インスタンスをデプロイします。

    1. OpenShift コマンドラインインターフェイスの使用:

      1. CR ファイルを保存します。
      2. ブローカーデプロイメントを作成するプロジェクトに切り替えます。

        $ oc project <project-name>
      3. CR を作成します。

        $ oc create -f <path/to/custom-resource-instance>.yaml
    2. OpenShift Container Platform Web コンソールの使用

      1. CR の設定が完了したら、Create をクリックします。
  5. OpenShift Container Platform Web コンソールで、WorkloadsStatefulSets (OpenShift Container Platform 4.1 以降) または ApplicationsStatefulSets (OpenShift Container Platform 3.11) をクリックします。ex-aao-ss という新しい StatefulSet が表示されます。

    ex-aao-ss Stateful Set セクションをデプロイメントします。CR で定義される単一ブローカーに対応する Pod が 1 つあることが分かります。

    実行中の Pod の Events タブで、ブローカーコンテナーが起動したことを確認できます。Logs タブには、ブローカー自体が実行中であることを示します。

関連情報