Operator を使用した AMQ Interconnect サイトの作成

Red Hat AMQ 2021.Q2

AMQ Interconnect 2.0 テクノロジープレビューでの使用

概要

本ガイドでは、Skupper Operator の使用方法について説明します。

前書き

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。これは大規模な取り組みであるため、これらの変更は今後の複数のリリースで段階的に実施されます。詳細は、Red Hat CTO である Chris Wright のメッセージをご覧ください。

重要

AMQ Interconnect 2.0 テクノロジープレビューの機能は、Red Hat の本番環境のサービスレベルアグリーメント (SLA) ではサポートされず、機能的に完全ではないことがあります。Red Hat では、これらについて実稼働環境での使用を推奨していません。

テクノロジープレビューの機能は、最新の技術をいち早く提供して、開発段階で機能のテストやフィードバックの収集を可能にするために提供されます。Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、https://access.redhat.com/ja/support/offerings/techpreview を参照してください。

第1章 OpenShift での Skupper Operator の使用

Skupper Operator は、OpenShift で AMQ Interconnect サイトを作成し、管理します。

Skupper Operator をデプロイする場合、2 つのオプションがあります。

すべての namespace
クラスターで作成されたすべての Skupper サイトは、調整のために共通の サイトコントローラー Pod を共有します。
特定の namespace
サイトコントローラー Pod は、site ConfigMap を適用する各 namespace に作成されます。これは、「CLI を使用した AMQ Interconnect サイトの設定」で説明されているように skupper init と同じです。

以下の方法のいずれかを使用して Skupper Operator をデプロイできます。

注記

Operator をインストールするには、OpenShift クラスターの管理者権限が必要です。

Operator のインストール後に、「Skupper Operator を使用したサイトの作成」 で説明されているように、ConfigMap をデプロイしてサイトを作成できます。

1.1. CLI を使用した Operator のインストール

本セクションの手順では、kubectl コマンドラインインターフェース (CLI) を使用して、指定の OpenShift クラスターに最新バージョンの Skupper Operator をインストールし、デプロイする方法を説明します。

手順

  1. クラスター管理者として OpenShift にログインします。以下に例を示します。

    $ kubectl login -u system:admin
  2. 「Red Hat コンテナーレジストリーの認証 」で説明されている手順を実行します。
  3. すべての namespace の Operator サブスクリプションを作成するには、以下を実行します。

    1. 以下の内容で、subscription.yaml という名前のファイルを作成します。

      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: skupper-operator
        namespace: openshift-operators
      spec:
        channel: alpha
        installPlanApproval: Automatic
        name: skupper-operator
        source: redhat-operators
        sourceNamespace: openshift-marketplace
        startingCSV: skupper-operator.v0.6.0
    2. サブスクリプション YAML を適用します。

      $ kubectl apply -f subscription.yaml
  4. 特定の namespace の Operator サブスクリプションを作成するには、その namespace で Operator グループを作成してから、サブスクリプションを作成する必要があります。

    1. 以下の内容で、operator-group.yaml という名前のファイルを作成します。

      kind: OperatorGroup
      apiVersion: operators.coreos.com/v1
      metadata:
        name: skupper-operator
        namespace: my-namespace
      spec:
        targetNamespaces:
        - my-namespace

      my-namespace は、サイトを作成する namespace の名前になります。

    2. Operator グループ YAML を適用します。

      $ kubectl apply -f operator-group.yaml
    3. 以下の内容で、subscription.yaml という名前のファイルを作成します。

      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: skupper-operator
        namespace: my-namespace
      spec:
        channel: alpha
        installPlanApproval: Automatic
        name: skupper-operator
        source: redhat-operators
        sourceNamespace: openshift-marketplace
        startingCSV: skupper-operator.v0.6.0

      my-namespace は、サイトを作成する namespace の名前になります。

    4. サブスクリプション YAML を適用します。

      $ kubectl apply -f subscription.yaml

1.2. OpenShift コンソールを使用した Skupper Operator のインストール

このセクションの手順では、OperatorHub を使用して、指定の OpenShift namespace に最新バージョンの Skupper Operator をインストールし、デプロイする方法を説明します。

OpenShift 4.1 以降では、Operator Lifecycle Manager (OLM) を使用することにより、ユーザーはクラスター全体で実行されるすべての Operator およびそれに関連するサービスのライフサイクルをインストール、更新、および一般的に管理することができます。これは、Kubernetes のネイティブアプリケーション (Operator) を効果的かつ自動化されたスケーラブルな方法で管理するために設計されたオープンソースツールキットである Operator Framework の一部です。

前提条件

  • cluster-admin アカウントを使用して OpenShift 4.1 クラスターへアクセスします。

手順

  1. OpenShift Web コンソールで、OperatorsOperatorHub に移動します。
  2. 利用可能な Operator の一覧から Skupper Operator を選択してから Install をクリックします。
  3. Operator Installation ページで、2 つの Installation mode オプションを利用できます。

    • クラスター上のすべての namespace
    • クラスター上の特定の namespace

      この例では、クラスター上の特定の namespace を選択します。

  4. Operator をインストールする namespace を選択してから Install をクリックします。

    Installed Operators ページページが表示され、Operator のインストールのステータスが表示されます。

  5. AMQ Interconnect Operator が表示され、StatusSucceeded に変更されるまで待機します。
  6. インストールに成功しない場合は、エラーのトラブルシューティングを行ってください。

    1. Installed Operators ページで、Skupper Operator をクリックします。
    2. Subscription タブを選択し、失敗またはエラーを表示します。

Operator のインストールについての詳細は、OpenShift ドキュメントを参照してください。

1.3. Skupper Operator を使用したサイトの作成

  1. 作成するサイトの ConfigMap を定義する YAML ファイルを作成します。

    たとえば、skupper-site.yaml を作成します。

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: skupper-site
      namespace: my-namespace

    「コンソールを使用した AMQ Interconnect サイトのモニタリング」の説明にしたがってコンソールのクレデンシャルを取得するか、以下のようにユーザー名を追加し、任意で skupper-site.yaml にパスワードを指定して、コンソール認証情報を取得できます

    data:
      console-user: "admin"
      console-password: "changeme"
  2. YAML を適用して、使用する namespace に skupper-site という名前の ConfigMap を作成します。

    $ kubectl apply -f skupper-site.yaml
  3. Skupper ルーターおよびサービスコントローラー Pod が実行されていることを確認して、サイトが作成されていることを確認します。

    $ kubectl get pods
    
    NAME                                          READY   STATUS    RESTARTS   AGE
    skupper-router-8c6cc6d76-27562                1/1     Running   0          40s
    skupper-service-controller-57cdbb56c5-vc7s2   1/1     Running   0          34s
    注記

    Operator を単一 namespace にデプロイしている場合、追加のサイトコントローラー Pod も実行されます。

改訂日時: 2021-08-22 20:27:04 +1000