Menu Close

第1章 OCP 4.x での Fuse Online のインストール

Fuse Online は、コアインテグレーション機能をサービスとして提供する、柔軟かつカスタマイズ可能なオープンソースプラットフォームです。

Fuse Online の各インストールは、Fuse Online インスタンス (または環境) と呼ばれます。OpenShift プロジェクトには、必ず 1 つの Fuse Online インスタンスがあります。各 Fuse Online インスタンスには独自の URL があります。単一の OpenShift クラスターに、複数の Fuse Online インスタンスが存在することがあります。

Fuse Online を OpenShift 開発者ユーザーとしてインストールできます (管理者権限は必要ありません)。デフォルトの Fuse Online インスタンスまたはカスタマイズされた Fuse Online インスタンスをインストールできます。カスタマイズされた Fuse Online インスタンスの場合、デフォルトのカスタムリソースを編集する必要があります。

重要

Fuse Online インストールプロセスでは、コンテナーイメージの Red Hat カタログである registry.redhat.io にアクセスする必要があります。

Fuse Online のインストールに関する詳細は、以下を参照してください。

1.1. OCP 4.x に Fuse Online をインストールするのに必要な手順の概要

OCP 4.x に Fuse Online をインストールするための主なステップは次のとおりです。

  1. Red Hat Service Registry 認証を設定する OpenShift シークレットを生成します。
  2. OperatorHub からクラスターのプロジェクト (namespace) に Fuse Online Operator をインストールします。
  3. 任意で、コネクションおよびインテグレーションの定義を永続化するために外部データベースを含める場合は、OpenShift シークレットを作成します。
  4. Fuse Online インスタンスを OpenShift 4.x プロジェクトに追加します。

    任意で、カスタムリソースを編集して、1 つ以上のアドオン機能を有効にしたり、1 つ以上のカスタム設定を実装したりします。

1.1.1. 制限された環境での Fuse Online のインストールに関する考慮事項 (OCP 4.6 以降)

Fuse Online を制限された環境でインストールする前に、以下のタスクを実行する必要があります。

  • プライベートネットワークで利用可能な場所に、すべての Fuse Online イメージをミラーリングします。制限された環境での OpenShift Operator のイメージのインストールに関する詳細は、OpenShift ドキュメントの「ネットワークが制限された環境での Operator Lifecycle Manager の使用」セクションを参照してください。
  • Fuse リポジトリーの内容でカスタム Maven リポジトリーを設定します。詳細は、「How to create an offline Maven repository for Fuse 7?」を参照してください。
  • 「Fuse Online をインストールする前にデフォルトのカスタムリソースファイルを編集」の説明どおりに、Fuse Online カスタムリソースを編集します。

    • 開発者がインテグレーションをビルドおよび実行するときに Fuse Online が必要な依存関係を取得できるようにするため、mavenRepositories 設定を使用してオフラインの Maven リポジトリーを指定します。

      以下の例では、customRepo をオフラインの Maven リポジトリーの名前に置き換え、https://customRepo をオフラインのリポジトリーの URL に置き換えます。

      components:
        server:
          features:
            maven:
              repositories:
                customRepo: https://customRepo
    • enabled の値を false に変更して、todo アドオンを無効にします。

      spec:
        addons:
          todo:
            enabled: false

Fuse Online のインストール後に、任意で https://github.com/syndesisio/todo-example から todo アプリケーションをダウンロードできます。Readme ファイルの手順に従い、リポジトリー URL をプライベートネットワークで利用可能な場所に変更します。

1.2. Fuse Online のインストール前にデフォルトのカスタムリソースファイルを編集する必要がある場合

Fuse Online のインストールには、設定可能な Fuse Online 環境アドオン機能およびパラメーター設定のデフォルトを指定するデフォルトカスタムリソースが含まれています。

インストール後の Fuse Online 環境が以下に該当する場合は、Fuse Online をインストールする前に、デフォルトのカスタムリソースを編集する必要があります。

  • Fuse Online コンソールにアクセスできる OpenShift ルートのために指定する URL を使用する場合。デフォルトでは、インストールプロセスによってこのルートが算出されます。
  • 外部データベースを使用して、コネクションおよびインテグレーション定義を保存する場合。デフォルトでは、内部データベースが使用されます。
  • コネクションやインテグレーション定義の永続化に使用できる内部ストレージの容量を増やす場合。ほとんどの Fuse Online 環境では、デフォルトの 1Gi で十分対応できます。

上記のいずれかが該当する場合に Fuse Online 環境を設定するには、Fuse Online のインストール時にカスタムリソースを編集する必要があります。つまり、インストール後に Fuse Online 環境の設定を変更して、上記を実装することはできません。また、上記の設定を適用して Fuse Online 環境をインストールした場合、その設定を変更することはできません。

1.3. Fuse Online の設定に使用するカスタムリソース属性の説明

インストール前のみに指定できるカスタムリソース属性の他に、インストール前または後に変更できるカスタムリソース属性が複数あります。

表 1 には、設定可能なカスタムリソース設定の簡単な説明が記載されています。また、インストールの前または後、あるいは両方で変更可能であるかどうかを示しています。適切に Fuse Online を設定するには、以下の表の情報を活用して、インストール前にカスタムリソースをどのように変更する必要があるのか、またはインストール後にカスタムリソースをどのように変更するのかを見極める必要があります。その後、該当する手順にしたがいます。

OCP 4.x の場合:

OCP 3.11 の場合:

表1.1 設定可能なカスタムリソース設定

機能/設定設定可能なタイミング指定内容

強化されたアクティビティー追跡

強化されたアクティビティー追跡の追加情報はこの表の後に記載されています。

インストール前のみ設定

addons:
  jaeger:
    enabled: true
    clientOnly: false
    operatorOnly: false

強化されたアクティビティー追跡はデフォルトで有効になっています。Jaeger 設定をカスタマイズする場合は、clientOnly または operatorOnlytrue に設定します。

外部データベース

外部データベースの使用に関する追加情報はこの表の後に記載されています。

インストール前のみ設定

spec:
  components:
    database:
      externalDbURL: postgresql://custom-postgres:5432
      user: db-user-name
      name: db-name


custom-postgres:5432 を PostgreSQL データベースのホスト名およびポートに置き換えます。
db-user-name をそのデータベースにアクセス可能なユーザーアカウントの名前に置き換えます。
db-name をデータベースの名前に置き換えます。

コネクションおよびインテグレーションの 内部ストレージ容量

外部データベースも指定する場合は無視されます。

内部ストレージの増加に関する追加情報はこの表の後に記載されています。

インストール前のみ設定

spec:
  components:
    database:
      resources:
        volumeCapacity: 1Gi
        volumeName: my-volume


1Gi を必要なストレージ量に置き換えます。デフォルトは 1Gi です。

my-volume を内部ストレージに使用するボリュームの名前に置き換えます。これは任意のパラメーターです。

Fuse Online コンソールにアクセスするための OpenShift ルート

インストール前のみ設定

spec:
  routeHostname: project.route.com


project.route.com を Fuse Online コンソールにアクセスできる OpenShift ルートに置き換えます。
例: north-project.6a63.fuse-online.openshiftapps.com

Memory および CPU

1 つ以上のコンポーネントが使用できるデフォルトのメモリー容量を増やします。

各コンポーネントによって独自のメモリー要件が定義されるため、各 Pod には割り当てられるメモリー容量の制限があります。制限および要求設定の詳細は、OpenShift ドキュメントの「Configuring cluster memory to meet container memory and risk requirements」セクションを参照してください。

server コンポーネントの CPU リソースを指定することもできます。

database コンポーネントは、コネクションおよびインテグレーションの定義を格納する内部データベースです。

meta コンポーネントは、サーバーがロードするコネクターなどのビジネスロジックを提供します。

prometheus コンポーネントは、Fuse Online インフラストラクチャーコンポーネントおよび Fuse Online インテグレーションを監視します。

インストール前のみ設定

components:
  server:
    resources:
      limit:
        memory: "1024Mi"
        cpu: "800m"
      request:
        memory: "512Mi"
        cpu: "500m"
  meta:
    resources:
      limit:
        memory: "750Mi"
      request:
        memory: "300Mi"
  database:
    resources:
      limit:
        memory: "300Mi"
      request:
        memory: "300Mi"
  prometheus:
    resources:
      limit:
        memory: "750Mi"
      request:
        memory: "750Mi"

3scale の検出

Red Hat 3scale による検出を可能にするため、Fuse Online API プロバイダーインテグレーションの API を公開します。

詳細: 「3scale で API の検出を有効化する Fuse Online の設定

インストール前または後に設定

components:
    server:
      features:
        managementUrlFor3scale: https://url-for-3scale


3scale ユーザーインターフェースの URL を指定します。

バックアップ

追加の設定ステップは「Fuse Online 環境のバックアップ」を参照。

インストール前または後に設定

spec:
  backup:
    schedule: interval


interval をバックアップの間隔に置き換えます。間隔 および 事前定義のスケジュール には cron ユーティリティーの形式を使用します。間隔の前に @ 記号を指定しないでください。

ノードのアフィニティー許容 (Toleration)

Fuse Online インフラストラクチャーコンポーネントおよびインテグレーション Pod のクラスター内のノードへの配置を決定します。

ノードのアフィニティーを使用すると、配置先のノードのグループに対して Fuse Online Pod のアフィニティーを指定できます。

許容 (Toleration) を使用すると、Fuse Online Pod が実行されるノードを制御し、他のワークロードがそれらのノードを使用しないようにすることができます。

Fuse Online Pod の設定」も参照してください。

インストール前または後に設定

注記: Fuse Online インフラストラクチャーコンポーネントのデプロイメントには infraScheduling を使用します。Fuse Online インテグレーションのデプロイメントでは、infraSchedulingintegrationSchedulingに置き換えます。

spec:
  infraScheduling:
    tolerations:
      key: value
      operator: value
      effect: value


spec:
  infraScheduling:
    affinity:
      nodeAffinity:
        preferredDuringSchedulingIgnoredDuringExecution:
          weight:
          preference:
            matchExpressions:
              key: value
              operator: value
              values:
                value1,
                value2

インテグレーションの制限

稼働中のインテグレーションの最大数を指定します。デフォルトは 0 で、稼働中のインテグレーションの数を制限しません。

インストール前または後に設定

components:
    server:
      features:
        integrationLimit: 0

データベースコネクションプール

サーバーコネクションプール設定を調整して、データベースへのコネクションを管理できます。

データベースプール設定の追加情報は、この表の後に記載されています。

インストール前または後に設定

components:
  server:
    connectionPool:
      connectionTimeout: 30000
      idleTimeout: 600000
      leakDetectionThreshold: 0
      maxLifetime: 1800000
      maximumPoolSize: 10
      minimumIdle: 10

Java Options

syndesis-server および syndesis-meta コンポーネントの Java オプションを指定できます。

Java オプションに応じて、コンポーネントに異なる値を指定できます。たとえば、JVM 関連のパラメーターは syndesis-meta よりも多くのコンピューターリソースを必要とするため、syndesis-server のみに設定できます。

インストール前または後に設定

components:+   server:
    javaOptions:
      -option_name=my_value   meta:
    javaOptions:
      -option_name=my_value

-option_name を Java オプション名に置き換えます。Java オプションの接頭辞 (-D-X、または -XX) を指定することができます。

my_value を、オプションの値に置き換えます。

HTTP プロキシーを設定する場合 (例): components:+   server:
    javaOptions:
      -Dhttp.proxyHost=10.0.0.100 -Dhttp.proxyPort=8800   meta:
    javaOptions:
      -Dhttp.proxyHost=10.0.0.100 -Dhttp.proxyPort=8800`

Maven 引数

Fuse Online インテグレーションをビルドするときに使用する追加の Maven オプションを指定します。

インストール前または後に設定

components:
    server:
      features:
        maven:
          additionalArguments:
            "typeA=stringA typeB=stringB"


例:
          additionalArguments:
            "-Dhttp.proxy=my_proxy -DpropA=valueA"

Maven リポジトリー

Fuse Online 環境がアクセスする必要がある外部 Maven リポジトリーを指定します。

インストール前または後に設定

components:
    server:
      features:
        mavenRepositories:
          customRepo1: https://customRepo1
          customRepo2: https://customRepo2


customRepo をリポジトリーの名前に置き換えます。
各リポジトリーに URL を指定します。

監視

Prometheus を使用した OCP での Fuse Online インテグレーションの監視」も参照。

インストール前または後に設定

addons:
  ops:
    enabled: true

パブリック REST API

追加の設定ステップは「外部ツールによって使用される Fuse Online パブリック REST API の公開」を参照。

インストール前または後に設定

addons:
  publicApi:
    enabled: true
    routeHostname: public-syndesis.192.168.64.63.nip.io


routeHostname を Fuse Online REST API エンドポイントを呼び出すためのパブリックアドレスに設定します。クラスターのセットアップにより、指定する必要のあるパブリックアドレスが決定されます。この例では、ルートのホスト名は minishift クラスターに対して有効です。

ToDo app
サンプルインテグレーションのテスト向け。

インストール前または後に設定

addons:
  todo:
    enabled: false

注記: 制限された環境で Fuse Online をインストールするには、インストールの前に todo アドオンが false (デフォルト) に設定されていることを確認する必要があります。Fuse Online のインストール後に、任意で https://github.com/syndesisio/todo-example から ToDo アプリケーションをダウンロードできます。Readme ファイルの手順に従い、リポジトリー URL をプライベートネットワークで利用可能な場所に変更します。

OCP で稼働している Fuse Online 環境へのサンプルアプリケーションの追加」も参照。

アドオン機能と設定

  • 強化されたアクティビティー追跡

    Fuse Online のインストール時に、Jaeger を使用したアクティビティー追跡はデフォルトで有効になっています。(OperatorHub またはコマンドラインスクリプトを使用して) Fuse Online をインストールする場合、OperatorHub の存在を検出し、OperatorHub のサブスクリプション機能を使用して Jaeger をインストールします。OperatorHub が利用できないという制限された状況では、Fuse Online は独自のインストール機能を使用して Jaeger をインストールします。任意で、「Jaeger 監視用の Fuse Online の設定」のセクションで説明されているように、Fuse Online をインストールする前に Jaeger 設定をカスタマイズできます。

  • コネクションおよびインテグレーションを永続化するための外部データベース

    Fuse Online のデフォルトインストールは、コネクションおよびインテグレーション定義を永続化するために Fuse Online によって使用される内部 PostgreSQL データベースを提供します。この代わりに、Amazon RDS for PostgreSQL などの外部 PostgreSQL データベースの使用を選択できます。

  • 内部ストレージ容量

    ほとんどの Fuse Online 環境では、デフォルトの 1Gi で十分対応できます。Red Hat テクニカルサポートが推奨する場合のみ、新しい Fuse Online インストールのこの設定を増強することが想定されます。これは、稼働している別の Fuse Online 環境で Fuse Online のサーバーエラーが発生し、Red Hat テクニカルサポートが、デフォルトよりも容量が大きいデータベースボリュームで Fuse Online 環境をインストールする必要があると判断した場合です。

    Fuse Online がすでに稼働している OpenShift プロジェクトで Fuse Online の内部ストレージ容量を増やすには、最初に Fuse Online をアンインストールする必要があります。「OCP プロジェクトからの Fuse Online のアンインストール」を参照してください。

  • データベースコネクションプールの設定

    以下の syndesis-server データベースコネクションプールプロパティーを設定できます。

    • connectionTimeout : syndesis-server がプールからのコネクションを待機する最大時間 (ミリ秒単位)。許可される最小コネクションタイムアウトは 250 ミリ秒です。デフォルトは 30000 (30 秒) です。
    • idleTimeout : コネクションが削除されるまで、プールでアイドル状態にすることができる最大時間 (ミリ秒単位)。0 の値は、アイドルコネクションがプールから削除されないことを意味します。許可される最小値は 10000 (10 秒) です。デフォルトは 600000 (10 分) です。
    • leakDetectionThreshold: コネクションリークの可能性を示すメッセージがログに記録される前に、コネクションがプール外にある時間 (ミリ秒単位)。0 を値として指定すると、リーク検出が無効になります。リーク検出の有効化で許容される最小値は 2000 (2 秒) です。デフォルトは 0 です。
    • maxLifetime: プール内のコネクションの最大有効期間 (ミリ秒単位)。許可される最小値は 30000 (30 秒) です。デフォルトは 1800000 (30 分) です。
    • maximumPoolSize: アイドルコネクションと使用中のコネクションの両方を含む、プールが到達できる最大サイズ。デフォルトは 10 です。
    • minimumIdle: プールに保持されるアイドルコネクションの最小数。デフォルト値は maximumPoolSize です。

1.4. Jaeger 監視用の Fuse Online の設定

Jaeger は、分散サービス間のトランザクションをトレースするためのオープンソースソフトウェアです。これは、複雑なマイクロサービス環境の監視およびトラブルシューティングで特に役立ちます。

OperatorHub またはコマンドラインスクリプトを使用して Fuse Online をインストールする場合、Fuse Online インストールは OperatorHub の存在を検出し、OperatorHub のサブスクリプション機能を使用して Jaeger をインストールします。OperatorHub が利用できないという制限された状況では、Fuse Online は独自のインストール機能を使用して Jaeger をインストールします。

デフォルトの Fuse Online 環境では、必要な Jaeger コンポーネントがすべて設定されます。任意で、Fuse Online カスタムリソースを編集して、クライアントのみ/非依存のサーバー設定、またはハイブリッド Jaeger クライアントおよび Jaeger Operator 設定を指定できます。

デフォルトの Jaeger 設定

基本的な追加設定なしの設定には、すべての Jaeger コンポーネントが含まれます。Jaeger の監視機能を試して、Jaeger の動作について学ぶことができます。デフォルト設定では、メモリーのみの制限されたバックエンドストレージ機能を提供します。

デフォルトの Jaeger 設定で Fuse Online をインストールすると、以下のような結果になります。

  • Fuse Online コンポーネントには Jaeger 通信 URL があります。
  • Jaeger Operator がインストールされます。
  • Jaeger カスタムリソースは、アクティビティー監視のデフォルト設定で設定されます。

デフォルトの Jaeger 設定を使用した Fuse Online インストールには、以下の syndesis カスタムリソース仕様があります。

apiVersion: syndesis.io/v1beta2
kind: Syndesis
metadata:
  name: app
spec:
  addons:
    jaeger:
      enabled: true

clientOnly および operatorOnly が指定されていない場合 (デフォルトで falseに設定されている場合)、Fuse Online は提供される Jaeger バックエンドだけでなく、Jaeger サーバー設定によって提供されるデフォルトのメモリーのみのストレージも使用します。

クライアントのみ/非依存のサーバー設定

クライアントのみ/非依存のサーバー設定では、Fuse Online と外部に設定された Jaeger バックエンドとの間の通信用にクライアント URL コネクションのみが設定されます。Jaeger バックエンドのすべての要素は外部にあり、Fuse Online 環境および syndesis-operator には依存しません。これには、Jaeger Operator および Jaeger カスタムリソースが含まれます。

クライアントのみの Jaeger 設定をインストールするには、以下のように Fuse Online をインストールする前にカスタムリソースを編集します。

以下に例を示します。

apiVersion: syndesis.io/v1beta2
kind: Syndesis
metadata:
  name: app
spec:
  addons:
    jaeger:
      enabled: true
      clientOnly: true
      queryUri: http://jaeger-query-hostname:443/api
      collectorUri: http://jaeger-collector-hostname:14268/api/traces

ハイブリッド Jaeger クライアントおよび Operator の設定

ハイブリッド Jaeger クライアントおよび Jaeger Operator 設定では、Fuse Online は Jaeger Operator と Jaeger クライアント機能をインストールします。Jaeger カスタムリソースがインストールされていない。Jaeger サーバー設定を定義する独自の Jaeger カスタムリソースをインストールする必要があります。これにより、Fuse Online が提供する機能を利用し、独自の環境用に Jaeger 設定をカスタマイズすることができます。たとえば、データストレージに Elasticsearch または Cassandra を使用できます。

ハイブリッド Jaeger クライアントと Jaeger Operator 設定をインストールするには、以下を行います。

  • Fuse Onlineをインストールする前に、以下の例のようにカスタムリソースを編集します。

    apiVersion: syndesis.io/v1beta2
    kind: Syndesis
    metadata:
      name: app
    spec:
      addons:
        jaeger:
          enabled: true
          operatorOnly: true
  • 以下の例のように、Jaeger カスタムリソース syndesis-jaeger に名前を付けます。

    apiVersion: jaegertracing.io/v1
    kind: Jaeger
    metadata:
      name: syndesis-jaeger
      ...
    spec:
       ....

    注記: Jaeger カスタムリソースに別の名前を使用する場合は、Client-only/independent サーバー設定セクションに記述されているように、Syndesis カスタムリソースで queryUri および collectorUri を設定します。

syndesis-jaeger という名前の Jaeger カスタムリソースが作成されると、Jaeger インスタンスは Fuse Online インテグレーションからデータを収集します。デフォルトでは、このデータは Fuse Online のアクティビティーログに記録されません。Fuse Online アクティビティーログにこのデータを表示するには、次のサービスを作成します。

oc create -f - <<EOF
 apiVersion: v1
 kind: Service
 metadata:
   labels:
     app: syndesis
     syndesis.io/app: syndesis
     syndesis.io/type: infrastructure
     syndesis.io/component: jaeger
   name: noauth-syndesis-jaeger-query
 spec:
   ports:
     - name: query
       port: 443
       protocol: TCP
       targetPort: 16686
   selector:
     app: jaeger
     app.kubernetes.io/name: syndesis-jaeger
 EOF

1.5. 外部データベースで Fuse Online をインストールするためのシークレットの作成

外部データベースを使用してコネクションおよびインテグレーションの定義を永続化する Fuse Online 環境をインストールする場合は、Fuse Online をインストールする前に、OpenShift シークレットである syndesis-global-config を作成します。

前提条件

  • OCP 3.11 の場合のみ、default-cr.yml ファイルを編集し、コネクションおよびインテグレーションの定義を永続化するために外部データベースの使用を指定する必要があります。
  • Fuse Online がインストールされていない必要があります。
  • oc クライアントツールがインストール済みであり、Fuse Online をインストールする OCP クラスターに接続されている必要があります。
  • クラスター管理者権限を持つユーザーは、該当ユーザーがクラスターでアクセス権限を持つプロジェクトに Fuse Online をインストールするための権限を付与済みである必要があります。

手順

  1. Fuse Online をインストールする権限を持つアカウントで OpenShift にログインします。以下に例を示します。

    oc login -u developer -p developer

  2. 以下が含まれるリソースファイル (例: my-fuse-onling-secret-cr.yml) を作成および保存します。

    apiVersion: v1
    kind: Secret
    metadata:
      name: syndesis-global-config
      namespace: my-fuse-online-project
      type: Opaque
      data:
        POSTGRESQL_PASSWORD: base64-encoded-value

    my-fuse-online-project を、外部データベーであるスを指定する Fuse Online 環境をインストールする予定である OpenShift プロジェクトの名前に置き換えます。

    base64-encoded-value を、外部データベースにアクセスするためのパスワードとして使用する base64 でエンコードされた値に置き換えます。

    OpenShift シークレットについての詳細は「シークレット」を参照してください。

  3. 以下のように、シークレットをクラスターに追加します。

    oc apply -f my-fuse-online-secret-cr.yml

結果

クラスターでは、外部データベースを指定するカスタムリソースとインストールされた Fuse Online 環境で syndesis-global-config シークレットを利用できます。

次のステップ

OCP 4.x の場合、Operator を使用して Fuse Online をインストールする際は、カスタムリソースを編集してコネクションおよびインテグレーションの定義を永続化するために外部データベースの使用を指定します。詳細は、「OperatorHub からの Fuse Online Operator のインストール」を参照してください。

OCP 3.11 の場合は、「Fuse Online をインストールする前にデフォルトのカスタムリソースファイルを編集」の手順にしたがいます。

1.6. Fuse Online のインストール

Fuse Online は、コアインテグレーション機能をサービスとして提供する、柔軟かつカスタマイズ可能なオープンソースプラットフォームです。Fuse Online を OpenShift 開発者ユーザーとしてインストールできます (管理者権限は必要ありません)。

以下は、Operator を使用して Fuse Online をインストールする一般的な手順です。

  1. OpenShift プロジェクト (namespace) にシークレットを作成し、Fuse Online Operator が必要なインストールテンプレートにアクセスできるように、Red Hat コンテナーレジストリーへの認証を設定します。
  2. Fuse Online Operator を OpenShift プロジェクト (namespace) にインストールします。Operator はインストール後に、選択された namespace で実行されます。
  3. インストールされた Operator から Fuse Online のインスタンスを作成します。デフォルト設定でインスタンスを作成するか、インスタンスのカスタムリソースを編集してインスタンスをカスタマイズすることができます。続いて、提供された URL から Fuse Online にアクセスできます。

Operator を使用して OCP 4.x に Fuse Online をインストールする方法の詳細は、以下を参照してください。

1.6.1. Red Hat レジストリーにアクセスするためのシークレットの作成

OCP 4.x では、Fuse Online Operator をインストールする前に、Fuse Online Operator をインストールする OpenShift プロジェクトごとに、シークレットを作成して Red Hat コンテナーレジストリーへの認証を設定する必要があります。

前提条件

  • Fuse Online をインストールする OpenShift クラスターにアクセスできる必要があります。
  • oc クライアントツールがインストール済みであり、Fuse Online をインストールする OCP クラスターに接続されている必要があります。
  • Red Hat カスタマーポータルのアカウントまたは Red Hat Developer Program アカウントのログインクレデンシャル (ユーザー名、パスワード、およびメールアドレス) を把握している必要があります。Red Hat アカウントのユーザー名とパスワードを使用して、Docker レジストリーシークレットを作成したくない場合は、registry service account を使用して認証トークンを作成してください。

手順

  1. ターミナルウィンドウで、管理者または開発者として OpenShift サーバーにログインします。

    たとえば、管理者は以下を実行します。

    oc login -u system:admin

    たとえば、開発者は以下を実行します。

    oc login -u developer -p developer
  2. Operator をインストールする OpenShift プロジェクトに切り替えます。

    oc project fuse-online
  3. Red Hat カスタマーポータルアカウントまたは Red Hat Developer Program アカウントのクレデンシャルを使用して、docker-registry シークレットを作成します。

    oc create secret docker-registry syndesis-pull-secret \
      --docker-server=registry.redhat.io \
      --docker-username=CUSTOMER_PORTAL_USERNAME \
      --docker-password=CUSTOMER_PORTAL_PASSWORD \
      --docker-email=EMAIL_ADDRESS

    コマンドが正常に実行されると、OpenShift は以下の出力を返します。

    secret/syndesis-pull-secret created

次のステップ

Operator のインストール後 (サブスクリプションを作成し、Operator を選択した namespace で実行している後) で、Fuse Online インスタンスを追加する前に、「OperatorHub からの Fuse Online Operator のインストール」 の説明どおりに Operator サービスアカウントに作成したシークレットをリンクする必要があります。

1.6.2. OperatorHub からの Fuse Online Operator のインストール

OpenShift Container Platform Web コンソールを使用して、OperatorHub から Fuse Online Operator をインストールできます。Fuse Online をインストールする各 OpenShift プロジェクト (namespace) について、以下の手順を実行します。

前提条件

  • OpenShift クラスターの管理者権限または開発者権限を持っている必要があります。
  • Red Hat レジストリーにアクセスするためのシークレットの作成」で説明されているように、Red Hat コンテナーレジストリーへの認証が設定されている必要があります。
  • oc クライアントツールがインストール済みであり、Fuse Online をインストールする OCP クラスターに接続されている必要があります。

手順

  1. Web ブラウザーで OpenShift コンソールに移動し、管理者または開発者のクレデンシャルを使用してコンソールにログインします。
  2. 管理者としてログインしている場合には、Operators をクリックした後、OperatorHub をクリックします。

    開発者としてログインしている場合は、Add をクリックしてから From Catalog カードをクリックします。
  3. Filter by keyword フィールドに Fuse Online を入力します。
  4. Red Hat Integration - Fuse Online カードをクリックします。Fuse Online Operator のインストールページが開きます。
  5. Install をクリックします。Install Operator ページが開きます。

    1. 更新チャンネル は Operator の更新ストリームを定義し、サブスクライバーの更新をロールアウトするために使用されます。指定する値は、OCP 4.x のバージョンによって異なります。

      • OCP 4.6 (以降) の場合は、チャンネルを fuse-online-7.n と入力します。n は現在のリリース番号になります。たとえば、Fuse 7.8 の場合は fuse-online-7.8 を入力します。
    2. Installation mode では、クラスターの namespace のリストから namespace (プロジェクト) を 1 つ選択します。「Red Hat レジストリーにアクセスするためのシークレットの作成」で、docker レジストリーシークレットを作成したときに使用したものと同じ namespace を選択します。
    3. Approval Strategy では、Automatic または Manual を選択し、Fuse Online Operator の更新が OpenShift によってどのように対処されるかを設定します。

      • Automatic (自動) 更新を選択した場合、新しいバージョンの Fuse Online Operator が使用できるようになると、人的な介入なしで OpenShfit Operator Lifecycle Manager (OLM) によって、Fuse Online の稼働中のインスタンスが自動的にアップグレードされます。
      • Manual (手動) 更新を選択した場合、Operator の新しいバージョンが使用できるようになると、OLM によって更新リクエストが作成されます。クラスター管理者は、更新リクエストを手動で承認して、Fuse Online Operator を新しいバージョンに更新する必要があります。
  6. Install をクリックし、Fuse Online Operator を指定の namespace (プロジェクト) で利用可能にします。
  7. Fuse Online がプロジェクトにインストールされていることを確認するには、Operators をクリックした後、Installed Operators をクリックして Red Hat Integration - Fuse Online がリストに表示されることを確認します。
  8. ターミナルウィンドウで以下のコマンドを入力し、(「Red Hat レジストリーにアクセスするためのシークレットの作成」で作成した) シークレットを Fuse Online Operator サービスアカウントにリンクします。

    oc secrets link syndesis-operator syndesis-pull-secret --for=pull

次のステップ

Fuse Online Operator のインストール後に、Fuse Online のインスタンスを OpenShift プロジェクトに追加します。

1.6.3. Fuse Online インスタンスの OpenShift 4.x プロジェクトへの追加

Fuse Online Operator を OpenShift 4.x プロジェクトにインストールした後に、Fuse Online のインスタンスを OpenShift プロジェクトに追加します。Fuse Online インスタンスは、開発者が Fuse Online にアクセスするために使用する URL を提供します。

前提条件

  • Fuse Online Operator は現在の OpenShift プロジェクトにインストールされます。
  • OCP 環境では、Fuse Online が使用できる永続ボリュームが少なくとも 3 つ必要です。すべての永続ボリュームには、以下の設定要件が必要です。

    • capacity.storage: 1Gi
    • accessMode: ReadWriteOnce
  • デフォルトの Fuse Online インスタンスまたはカスタマイズされたインスタンスのどちらをインストールするかを決定します。指定できるカスタムリソース設定の詳細は、「インストール前にデフォルトのカスタムリソースを編集する必要がある場合」を参照してください。

手順

  1. ユーザーロールに応じて Create Syndesis ページにアクセスするには、以下の手順に従います。

    • 管理者としてログインしている場合は、以下を実行します。

      1. Operators をクリックした後、Installed Operators をクリックします。
      2. Name 列で、Red Hat Integration - Fuse Online をクリックします。Operator Details ページが開きます。
      3. Provided APIsCreate Instance をクリックします。
    • 開発者としてログインしている場合は、以下を実行します。

      1. Add をクリックしてから Operator Backed カードをクリックします。
      2. Syndesis CRD カードをクリックします。Syndesis CRD ページが開きます。
      3. Create をクリックします。

        Create Syndesis ページが開きます。
  2. 名前を入力するか、または app をデフォルトのままにします。
  3. YAML view オプションを選択して、デフォルトのカスタムリソースを表示します。
  4. 任意手順:カスタムリソースを編集します。

    指定できるカスタムリソース設定の詳細は、「インストール前にデフォルトのカスタムリソースを編集する必要がある場合」および「Fuse Online の設定に使用するカスタムリソース属性の説明」を参照してください。

    Fuse Online のインストールプロセスでは、カスタムリソースで指定した設定を使用して、インストールされた Fuse Online 環境の設定を決定します。

  5. Create をクリックして Fuse Online インスタンスを作成します。OpenShift は、Fuse Online の Pod、サービス、およびその他のコンポーネントを起動します。
  6. Fuse Online の URL を取得するには、以下を行います。

    1. Networking > Routes をクリックします。
    2. 正しいプロジェクトが選択されていることを確認してください。
    3. syndesis 行の Location 列で、Fuse Online の URL をクリックします。
    4. OpenShift ログインクレデンシャルを使用して、Fuse Online 環境にログインします。