第2章 Fuse Online
Fuse Online は、コードを作成せずに複数の異なるアプリケーションやサービスの統合を可能にする Web ブラウザーインターフェースを提供します。また、複雑なユースケースで必要な場合にコードを追加できる機能も提供します。
Fuse Online では、OpenShift のインテグレーションは Apache Camel を使用する Spring Boot として実行されます。Camel-K はテクノロジープレビューのため、追加のランタイムとして使用できます。
2.1. Fuse Online ディストリビューション
Fuse Online は Red Hat の Web ベースのインテグレーションプラットフォームです。Syndesis は Fuse Online のオープンソースプロジェクトです。Fuse Online は以下のような OpenShift 環境で実行されます。
ホスト環境 | インストール |
OpenShift Online | Red Hat が Red Hat インフラストラクチャーに Fuse Online をインストールし、提供します。 |
OpenShift Container Platform | お客様がインストールし、管理します。 |
2.2. Fuse Online 7.4 の新機能
Fuse Online 7.4 は以下の新機能を提供します。
本リリースでは、以下のコネクターが新たに導入されました。
- Amazon Simple Notification Service (SNS): SNS トピックにメッセージを送信します。
- Amazon Simple Queue Service (SQS): SNS キューからメッセージを取得したり、SNS キューにメッセージを送信します。
前リリースではテクノロジープレビューであった以下のコネクターがサポートされるようになりました。
Fuse Online を OpenShift Container Platform (OCP) にてオンプレミスで実行している場合、以下の新機能を使用できます。
- 新しいパブリックエンドポイント は、インテグレーションに適用せずに新しい環境ラベルを作成します。
- 定義された環境ラベルのリストを返すエンドポイント が、環境ラベルでタグ付けされたインテグレーションの数を任意で返すようになりました。
2.3. Fuse Online 7.4 での変更点
Fuse Online 7.4 では 7.3 の機能が以下のように変更されました。
Google スプレッドシートコネクター の機能が以下のように強化されました。
- フローの途中にある Google スプレッドシートコネクションのスプレッドシート値を取得できるようになりました。
- 最初のコネクションでスプレッドシート値を取得するときに、見出しの行番号を指定できるようになりました。これにより、コネクションはデータ取得元のスプレッドシートから列名を取得することができます。これにより、データの取得元であるスプレッドシートから列名を取得できるようになりました。行オブジェクトを返すようコネクションを設定した場合、データマッパーは前リリースで表示された文字ラベル (A、B、C など) ではなく意味のある列名を表示できます。
最初のコネクションでスプレッドシート値を取得する場合、Max results フィールドの新しいデフォルト値は 0 になります。ポーリングによって返すことができる行または列の数を制限しない場合は、デフォルト値を使用します。Max results の設定は、結果メトリクスのメジャーディメンションの設定に適用されます。メジャーディメンションにコネクションが返すデータを制限するには、整数を指定します。
たとえば、メジャーディメンションが列で、その Max results が 25 に設定された場合、ポーリングによって 25 行以下の値が返されます。
Twitter コネクションの新しいアクションは次のとおりです。
- Retrieve は、Twitter コネクションがアクセスできるユーザーアカウントに送信されたダイレクトメッセージ (プライベートメッセージ) を取得します。このアクションは、シンプルなインテグレーションで Twitter の最初のコネクションによって実行されます。
- Send は、指定した Twitter ユーザー名にメッセージを送信します。以前のインテグレーションステップからメッセージの内容をマップしたり、アクションを設定するときにメッセージを指定することができます。Send アクションは、フローの途中にある Twitter コネクションや、シンプルなインテグレーションの最後のコネクションである Twitter コネクションによって実行されます。
カスタム REST API クライアントコネクター のセキュリティーの強化
カスタム REST API クライアントコネクターが API キーを使用してセキュリティーを提供するようになりました。OpenAPI ドキュメントが API キーセキュリティーを指定する場合、API クライアントコネクターの作成時に Fuse Online は API キーの詳細の一部を入力するよう要求します。カスタムコネクターからコネクションを作成する場合、Fuse Online は API キーの値を入力するよう要求します。
データベースを更新するコネクションへの入力が、パラメーター値のコレクションになりました。新しいパラメーターである Batch update が、コネクションによるデータベースの更新方法を決定します。
- No はデフォルト値で、パラメーター値の 1 つのセットのみを許可し、SQL ステートメントを 1 度のみ実行します。
- Yes は SQL ステートメントを 1 度実行し、batch update 操作を使用してすべてのコレクションメンバーのデータベースを更新します。
詳細は以下を参照してください。
2.4. OpenShift Online で実行されている既存インテグレーションのアップグレード
Fuse 7.4 のリリース時、OpenShift Online の Fuse Online インフラストラクチャーは自動的にアップグレードされます。インフラストラクチャーのアップグレード中、OpenShift Online で実行されている既存のインテグレーションはすべてアップグレード中およびアップグレード後の実行が継続されます。しかし、既存のインテグレーションは古いバージョンの Fuse ライブラリーおよび依存関係で実行を継続します。
Fuse Online のインフラストラクチャーが新しいリリースにアップグレードされたことを知らせる電子メールのメッセージを受け取った後、既存のインテグレーションを再パブリッシュ (再起動だけではなく) してアップグレードします。これはできるだけ早期に行ってください。
Fuse Online 環境でインテグレーションを再パブリッシュするには、左側のナビゲーションパネルで Integrations をクリックします。その後、インテグレーションごとに以下を行います。
- インテグレーションエントリーの右側で をクリックし、Edit を選択します。
- Fuse Online で編集するインテグレーションが表示されたら、右上の Publish をクリックします。
パブリッシュを行うと、最新の Fuse Online 依存関係を使用して再ビルドが強制されます。
インテグテーションの要素に、更新の必要がある新しい依存関係がある場合、Fuse Online ユーザーインターフェースに警告が表示されます。
2.5. 重要事項
Fuse Online ディストリビューションの Fuse 7.4 リリースにおける重要事項
- 本リリースでは、Kafka へのコネクションは SSL をサポートしません。これは、今後のリリースで変更される予定です。
- Fuse Online アカウントは、同時に実行可能なインテグレーションの数が制限されています。詳細は、価格プランを参照してください。Fuse Online の評価版のアカウントをご使用の場合は、1 度に 1 つのインテグレーションのみを実行できます。
- Fuse Online にアップロードする OpenAPI スキーマに出入力タイプが定義されていないことがあります。Fuse Online が出入力タイプを指定しない OpenAPI からカスタム API クライアントを作成した場合、API クライアントが処理できるフィールドにインテグレーションデータをマップするインテグレーションや、API クライアントが処理したフィールドから統合データをマップするインテグレーションを作成できません。インテグレーションにカスタム API を起点または終点とするマッピングが必要な場合、OpenAPI スキーマをアップロードするときに Review/Edit をクリックして API デザインツールの Apicurio を開き、出入力タイプの仕様を追加します。
- カスタム API クライアントコネクターまたは API プロバイダーインテグレーションに使用する OpenAPI ドキュメントは、循環スキーマ参照を持つことができません。たとえば、リクエストまたは応答ボディーを指定する JSON スキーマは、そのスキーマ自体を全体的に参照することはできず、任意数の中間スキーマを介してそれ自体を部分的に参照することもできません。
- 以前のリリースでは、Split results が Yes に設定された場合のみ、スプレッドシート値を取得した Google スプレッドシートコネクションで Max results の設定が順守されました。この依存関係は存在しないようになりました。
2.6. テクニカルサポートの利用
テクニカルサポートを利用するには、Fuse Online の左ナビゲーションパネルで Support をクリックします。Support ページを使用して、すべてのインテグレーションに関する診断情報や、選択した 1 つまたは複数のインテグレーションに関する診断情報をダウンロードします。このページには、サポートチケットを作成するためのリンクや、ダウンロードした診断情報を提供するためのリンクもあります。
2.7. テクノロジープレビューの機能
本リリースには、以下に示すテクノロジープレビュー機能が含まれています。
テクノロジープレビューの機能は、Red Hat の本番環境のサービスレベルアグリーメント (SLA) ではサポートされず、機能的に完全ではないことがあるため、Red Hat は本番環境での使用は推奨しません。テクノロジープレビューの機能は、最新の技術をいち早く提供して、開発段階で機能のテストやフィードバックの収集を可能にするために提供されます。詳細は、「テクノロジプレビュー機能のサポート範囲」を参照してください。
Data Virtualization
オンサイトの OpenShift Container Platform 上で実行される Fuse Online の開発環境では、データ仮想化はコンテナーネイティブなサービスです。これは、リレーショナルデータベース、ファイル、Web サービス、SaaS リポジトリーなどの、複数の異なるソースからデータを統合します。Fuse Online では、開発者はソースデータの論理ビューをカスタムで定義する仮想データベースイメージを作成できます。作成後、そのイメージを OpenShift にデプロイすることができます。アプリケーションは、標準の OData、REST、または JDBC インターフェース上で仮想データベースに接続し、SQL をサポートしないものも含め、すべてのデータソースで SQL クエリーを実行することができます。
Data Virtualization を有効にするには、「OCP での Fuse のインストール」を参照してください。
以下に対するコネクターです。
- Box
- IMAP または POP3 メール
- Jira
- SMTP メール
Conditional Flows (条件付きフロー) ステップをシンプルなインテグレーションのフローまたは API プロバイダーのインテグレーションオペレーションフローに追加できるようになりました。Conditional Flows ステップを追加するときに、インテグレーションの 1 つ以上の条件を指定し、ランタイムにインテグレーションデータに対して評価を行います。その後、条件が true に評価されるときに実行するインテグレーションのフローを作成します。実行中、評価の結果が true である場合にその条件に対して指定したフローをインテグレーションが実行します。条件付きフローには、シンプルなインテグレーションフローまたは API プロバイダーオペレーションフローに追加可能な同じコネクションとステップがあります。
データマッパーでは、条件式を指定し、1 つのデータマッピングに適用することができます。たとえば、条件式はソースフィールドの評価や、ソースフィールドが空の場合にターゲットフィールドに入力する方法を指定できます。指定できる式の限定セットは、Microsoft Excel の式に似ています。
- Camel-K は追加のランタイムとして使用できます。
OAuth を使用する REST API クライアントでは、API クライアントコネクターの作成時に、そのコネクターから作成するコネクションのデフォルト OAuth2 の動作を変更することができます。OpenAPI 仕様への Fuse Online ベンダーエクステンションは以下をサポートします。
- クライアントクレデンシャルをパラメーターとして提供。
- HTTP レスポンスステータスコードを基にした新しいアクセストークンの取得。