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

Fuse Online をインストールするには、クラスター管理者が Fuse Online のカスタムリソース定義を登録して、適切なユーザーにインストール権限を割り当てる必要があります。Fuse Online をインストールするユーザーは、デフォルトの Fuse Online 環境またはカスタマイズされた Fuse Online 環境のどちらをインストールするかを決定する必要があります。Fuse Online カスタマイズ環境を使用する場合には、デフォルトのカスタムリソースファイルを編集する必要があります。

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

重要

Fuse Online インストールプロセスでは、コンテナーイメージの Red Hat カタログである registry.redhat.io にアクセスする必要があります。Fuse Online は、外部コンテナーレジストリー、カスタムレジストリー、または非接続環境でのレジストリーの使用をサポートせず、テストもしません。

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

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

OCP にオンサイトで Fuse Online をインストールするには、クラスター管理者がタスクを実行してから、特定の OpenShift プロジェクトで Fuse Online のインストール権限があるユーザーがタスクを実行して、インストールスクリプトを実行します。以下の図では、ワークフローを紹介します。

Workflow for installing Fuse Online on OCP

クラスター管理者は、Fuse Online のインストール先の OpenShift プロジェクトごとに、特定のプロジェクトで Fuse Online をインストールする権限をユーザーに割り当てる必要があります。

デフォルトの Fuse Online 環境をインストールするには、Fuse Online のインストール権限のあるユーザーがインストールスクリプトをダウンロードして実行します。上記以外の手順を実行する必要はありません。

1.2. Fuse Online リソースをデプロイするためのカスタムリソース定義の登録

Fuse Online のインストールを可能にするため、クラスター管理者はカスタムリソース定義を登録します。管理者は、OpenShift クラスターに対して 1 度だけこれを実行する必要があります。その後、管理者は Fuse Online を該当のプロジェクトにインストールする権限をユーザーに付与します。これは、Fuse Online をインストールする各プロジェクトに対して行います。

前提条件

  • クラスターの管理者権限を持っている必要があります。
  • oc クライアントツールがインストール済みであり、Fuse Online をインストールする OCP クラスターに接続されている必要があります。
  • OCP 環境では、Fuse Online が使用できる永続ボリュームが少なくとも 3 つ必要です。

手順

  1. 以下の場所から Fuse Online インストールスクリプトが含まれるパッケージをダウンロードします。

    https://github.com/syndesisio/fuse-online-install/releases/tag/1.9

  2. ファイルシステムの任意の場所で、ダウンロードしたアーカイブを展開します。fuse-online-install-1.9 ディレクトリーには、Fuse Online をインストールするためのスクリプトとサポートファイルが含まれます。
  3. 以下のコマンドを実行して、このクラスターにすでに登録されているカスタムリソース定義を一覧表示し、適切に接続されたことを確認します。

    oc get crd

    エラーメッセージが表示されなければ、正しく接続されています。

  4. fuse-online-install-1.9 ディレクトリーに移動して以下のコマンドを実行し、クラスターレベルでカスタムリソース定義を登録します。

    bash install_ocp.sh --setup

  5. 以下のコマンドを再度実行して、登録が成功したことを確認します。

    oc get crd

    登録したカスタムリソース定義の出力一覧には、syndesis が含まれているはずです。

  6. Fuse Online をインストールする各プロジェクトで、ユーザーにインストールできる権限を付与します。各プロジェクトに対して以下を行います。

    1. ユーザーが Fuse Online をインストールするプロジェクトに切り替えます。以下に例を示します。

      oc project fuse-online-project

    2. そのプロジェクトに Fuse Online をインストールする権限をユーザーに付与します。たとえば、以下のコマンドは、developer ユーザーに Fuse Online のインストール権限を付与します。このコマンドの実行後、developer ユーザーは現在のプロジェクト fuse-online-project に Fuse Online をインストールできます。

      bash install_ocp.sh --grant developer

      Fuse Online のインストール権限を割り当てる OpenShift プロジェクトごとに、上記の 2 つのコマンドを繰り返します。ユーザーは、クラスターの複数のプロジェクトに Fuse Online をインストールできます。これを有効にするには、別のプロジェクトに切り替え、以下のように同じユーザーを指定します。

      oc project another-fuse-online-project
      bash install_ocp.sh --grant developer

結果

syndesis カスタムリソース定義がクラスターに登録されます。

次のステップ

Fuse Online をインストールする権限があるユーザーは、デフォルトの Fuse Online 環境またはカスタマイズされた Fuse Online 環境のどちらをインストールするかを決定する必要があります。

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

Fuse Online のダウンロードパッケージには、設定可能な Fuse Online 環境アドオン機能およびパラメーター設定のデフォルトを指定する default-cr.yml ファイルが含まれています。Fuse Online のインストールでは、default-cr.yml ファイルを使用して、Fuse Online 環境の設定を制御する syndesis カスタムリソースを作成します。

インストール後の Fuse Online 環境が以下に該当する場合のみ、Fuse Online をインストールする前に default-cr.yml ファイルを編集する必要があります。

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

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

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

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

以下の表に、設定可能なカスタムリソース設定の簡単な説明と、インストール前のみ変更可能であるかどうかを示します。適切に Fuse Online を設定するには、以下の表の情報を活用して、インストール前に default-cr.yml ファイルをどのように変更するか、またはインストール後に syndesis カスタムリソースをどのように変更するかを見極める必要があります。その後、該当する手順にしたがいます。

重要

Camel K ランタイム、Knative リソースへのアクセス、および Data Virtualization はテクノロジープレビュー機能です。テクノロジープレビューの機能は、Red Hat の本番環境のサービスレベルアグリーメント (SLA) ではサポートされず、機能的に完全ではないことがあります。Red Hat では、これらについて実稼働環境での使用を推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストやフィードバックの提供を可能にするために提供されます。Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、https://access.redhat.com/ja/support/offerings/techpreview を参照してください。

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

Camel K ランタイム (テクノロジープレビュー)

Camel K ランタイムの追加情報はこの表の後に記載されています。

インストール前のみ設定

addons:
  camelk:
    enabled: true

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

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

インストール前のみ設定

addons:
  jaeger:
    enabled: true

外部データベース

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

インストール前のみ設定

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

Knative リソースへのアクセス
(テクノロジープレビュー)

Knative リソースへのアクセスを有効にするには、Camel K ランタイムも有効にする必要があります。

インストール前のみ設定

addons:
  camelk:
    enabled: true
  knative:
    enabled: true

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

インストール前のみ設定

spec:
  routeHostname: project.route.com


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

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 ユーティリティーの形式を使用します。間隔の前に @ 記号を指定しないでください。

Data Virtualization
(テクノロジープレビュー)
Data Virtualization 機能の追加情報はこの表の後に記載されています。

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

addons:
  dv:
    enabled: true
      resources:
        memory: 1024Mi

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

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

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

components:
    server:
      features:
        integrationLimit: 0

Maven

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

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

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


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

メモリー

1 つ以上のコンポーネントが使用できるデフォルトのメモリー容量を増やします。各コンポーネントによって独自のメモリー要件が定義されるため、各 Pod には割り当てられるメモリー容量の制限があります。

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

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

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

components:
  database:
    resources:
      memory: 270Mi
  meta:
    resources:
      memory: 300Mi
  server:
    resources:
      memory: 810Mi

監視

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: true

アドオン機能と設定

  • Camel K ランタイムエンジン (テクノロジープレビュー)

    Apache Camel K ランタイムは、OCP でインテグレーションをデプロイおよび再デプロイするときに、ターンアラウンドタイムを短縮します。たとえば、1 - 2 分から数秒にパフォーマンスを改善できます。Camel K がランタイムエンジンとしてインストールされている場合、Camel インテグレーションの Spring Boot ランタイムが Camel K に置き換えられます。

    Apache Camel K は、エンタープライズ統合パターン (Enterprise Integration Patterns) の Apache Camel フレームワークをベースとしたライトウェイトなクラウド統合プラットフォームです。Camel K は Kubernetes、OpenShift、および Knative でネイティブに実行され、特にサーバーレスおよびマイクロサービスアーキテクチャー向けに設計および最適化されています。Camel K は、クラウドでのインテグレーションの実行時に、自動化およびパフォーマンスの最適化を提供します。Camel K では Kubernetes Operator SDK を使用してインテグレーションをデプロイします。たとえば、OCP で自動的にサービスおよびルートが作成されます。

    Camel K は Apache Camel オープンソースコミュニティーのサブプロジェクトです。詳細は、「https://github.com/apache/camel-k」を参照してください。

    Camel K ランタイムが Fuse Online とインストールされている場合、以下の制限が適用されます。

    • Fuse Online エクステンションは Camel K ランタイムによってサポートされません。
    • エクステンションは、Fuse Online のユーザーインターフェースの Customizations には表示されません。
  • Data Virtualization (テクノロジープレビュー)

    Data Virtualization により、Fuse Online の開発者は複数の異なるソースからのデータを統合し、OpenShift でデプロイできる仮想データベースイメージを作成できます。詳細は、Red Hat Integration の Data Virtualization に関するドキュメントを参照してください。

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

    install_ocp.sh スクリプトを実行して Fuse Online をインストールした場合、Fuse Online 環境で強化されたアクティビティー追跡が有効になるのがデフォルトの動作です。OperatorHub を使用する場合は、Fuse Online をインストールする前に強化されたアクティビティー追跡を有効にすることが推奨されます。ユーザーインターフェースを使用すると、有効にできます。

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

    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 のアンインストール」を参照してください。

1.5. Fuse Online をインストールする前にデフォルトのカスタムリソースファイルを編集

デフォルトの Fuse Online 環境をインストールする場合、デフォルトのカスタムリソースファイルを編集する必要はありません。「OCP での Fuse Online のインストール」を参照してください。

Fuse Online のカスタマイズ環境をインストールする場合は、Fuse Online をインストールする前に、default-cr.yml ファイルを編集する必要があります。このファイルは、Fuse Online のダウンロードパッケージに含まれます。Fuse Online のインストール前にのみ指定できるカスタムリソース設定がいくつかあります。「Fuse Online のインストール前にデフォルトのカスタムリソースファイルを編集する必要がある場合」を参照してください。

Fuse Online のインストール前または後に指定できる、その他のカスタムリソース設定があります。「Fuse Online の設定に使用するカスタムリソース属性の説明」を参照してください。

Fuse Online のインストールプロセスでは default-cr.yml ファイルに指定された設定を使用して syndesis カスタムリソースを作成します。syndesis カスタムリソース設定によって、インストールされた Fuse Online 環境の設定が決定されます。

前提条件

  • オンサイトで OCP に Fuse Online をインストールし、実行する計画があります。
  • oc クライアントツールがインストール済みであり、Fuse Online をインストールする OCP クラスターに接続されている必要があります。
  • クラスター管理者権限を持つユーザーは、該当ユーザーがクラスターでアクセス権限を持つプロジェクトに Fuse Online をインストールするための権限を付与済みである必要があります。

手順

  1. Fuse Online のインストールスクリプトが含まれるパッケージをダウンロードしていない場合は、以下を行います。

    1. 以下の場所からダウンロードします。

      https://github.com/syndesisio/fuse-online-install/releases/tag/1.9

    2. ファイルシステムの任意の場所で、ダウンロードしたアーカイブを展開します。fuse-online-install-1.9 ディレクトリーには、Fuse Online をインストールするためのスクリプトとサポートファイルが含まれます。
  2. Fuse Online をインストールする権限を持つアカウントで OpenShift にログインします。以下に例を示します。

    oc login -u developer -p developer

  3. エディターで fuse-online-install-1.9/default-cr.yml ファイルを開きます。
  4. 必要な機能を有効にし、必要なパラメーターを設定するために、default-cr.yml ファイルを編集します。指定の必要がある項目を判断するには、「Fuse Online の設定に使用するカスタムリソース属性の説明」を参照してください。
  5. default-cr.yml ファイルを保存します。

結果

default-cr.yml ファイルに新しい Fuse Online インストールの設定が指定されます。

次のステップ

default-cr.yml ファイルを編集し、外部データベースを指定した場合は、Fuse Online をインストールする前に「外部データベースで Fuse Online をインストールするためのシークレットの作成」の手順にしたがいます。それ以外の場合は、「OCP での Fuse Online のインストール」の手順にしたがいます。

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

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

前提条件

  • コネクションおよびインテグレーションの定義を永続化するために外部データベースを使用ことを指定するために 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 での Fuse Online のインストール」の手順にしたがいます。

1.7. OCP に Fuse Online をインストールするスクリプトの実行

Fuse Online インストールスクリプトを実行すると、Fuse Online ダウンロードパッケージに含まれる default-cr.yml ファイルの設定にしたがって Fuse Online 環境がインストールされます。デフォルトの環境をインストールする場合は、このファイルを編集する必要はありません。カスタマイズされた環境をインストールする場合は、インストールスクリプトを実行する前に default-cr.yml ファイルを編集する必要があります。

前提条件

手順

  1. Fuse Online のインストールスクリプトが含まれるパッケージをダウンロードしていない場合は、以下を行います。

    1. 以下の場所からダウンロードします。

      https://github.com/syndesisio/fuse-online-install/releases/tag/1.9

    2. ファイルシステムの任意の場所で、ダウンロードしたアーカイブを展開します。fuse-online-install-1.9 ディレクトリーには、Fuse Online をインストールするためのスクリプトとサポートファイルが含まれます。
  2. Fuse Online をインストールする権限を持つアカウントで OpenShift にログインします。以下に例を示します。

    $ oc login -u developer -p developer

  3. 以下のように、Fuse Online をインストールする OpenShift プロジェクトに切り替えます。

    $ oc project my-fuse-online-project

    または、インストールスクリプトの実行時に --project my-fuse-online-project のように指定することもできます。

  4. インストールスクリプトをダウンロードしたディレクトリーで、インストールスクリプトを実行します。

    bash install_ocp.sh

    インストールスクリプトのオプションの詳細については $ bash install_ocp.sh --help コマンドを実行してください。

  5. Fuse Online をインストールするために syndesis-operator によって使用された syndesis カスタムリソースに、必要な内容が適切に含まれていることを確認します。

    1. 以下のコマンドを実行して、syndesis カスタムリソースの内容を表示します。

      oc describe syndesis/app

    2. カスタムリソースの内容を確認します。

      含まれていない更新がある場合は、カスタムリソースに構文エラーがある可能性があります。有効なカスタムリソースを定義するには、Fuse Online をアンインストールし、再インストールする必要があります。「OCP プロジェクトからの Fuse Online のアンインストール」を参照してください。

  6. インストールに成功したことを確認します。

    1. https://openshift-route で OpenShift OAuth プロキシーログインページを表示します。

      インストールスクリプトによる OpenShift ルートの算出を選択した場合、実行の最後あたりで算出されたルートが表示されます。openshift-route をスクリプトが提供する値に置き換えます。

      default-cr.yml ファイルを編集して Fuse Online に routeHostname を指定した場合は、openshift-route を指定したルートに置き換えます。

    2. OpenShift コンソールにログインしていない場合は、ログインページが表示されます。OpenShift ユーザー名およびパスワードを入力してログインします。

    Fuse Online のホームページが、すぐに、もしくはOpenShift コンソールへのログイン後に表示されます。