Anypoint Studio を使用した Amazon Kinesis Data Streams Connector 1.0 の設定 - Mule 4

Anypoint Studio (Studio) エディターは、Mule アプリケーション、プロパティ、および設定ファイルの設計と更新に役立ちます。

Studio でコネクタを追加および設定する手順は、次のとおりです。

「アプリケーションログの表示」​で説明されているように、コネクタを実行するときに、アプリケーションログを表示して問題を確認できます。

Studio で初めてコネクタを設定する場合は、​「Anypoint Studio を使用したコネクタの設定」​を参照してください。

Mule プロジェクトを作成する

Studio で、コネクタを追加および設定する新しい Mule プロジェクトを作成します。

  1. Studio で、​[File (ファイル)] > [New (新規)] > [Mule Project (Mule プロジェクト)]​ を選択します。

  2. Mule プロジェクトの名前を入力して、​[Finish (完了)]​ をクリックします。

コネクタを Mule プロジェクトに追加する

Amazon Kinesis Data Streams 用 Anypoint Connector (Amazon Kinesis Data Streams Connector) を Mule プロジェクトに追加して、XML コードにコネクタの名前空間およびスキーマの場所を自動的に入力し、プロジェクトの ​pom.xml​ ファイルに必須の連動関係を追加します。

  1. [Mule Palette (Mule パレット)]​ ビューで、​[(X) Search in Exchange ((X) Exchange 内を検索)]​ をクリックします。

  2. [Add Modules to Project (モジュールをプロジェクトに追加)]​ で、検索項目に「​kinesis​」と入力します。

  3. [Available modules (使用可能なモジュール)]​ で ​[Amazon Kinesis Data Streams Connector]​ をクリックします。

  4. [Add (追加)]​ をクリックします。

  5. [Finish (完了)]​ をクリックします。

Studio でコネクタを Mule プロジェクトに追加しても、Studio ワークスペースの他のプロジェクトはそのコネクタを使用できません。

ソースの設定

ソースは、指定された条件が満たされたときにフローを開始します。 次のソースのいずれかを設定して、Amazon Kinesis Data Streams Connector で使用できます。

  • Listener

    特定のデータストリームをサブスクライブできます。このソースは、Kinesis Client Library (KCL) を使用して、データストリーム内の指定された初期ポイントからリスンします。動的にサイズ設定されたレコードのバッチを返しますが、最大サイズを設定することもできます。

  • [HTTP] > [Listener]

    設定されたホストとポートで要求を受信するたびにフローを開始する

  • Scheduler

    時間ベースの条件が満たされたときにフローを開始する

たとえば、Amazon Kinesis の ​Listener​ ソースを設定するには、次の手順を実行します。

  1. [Mule Palette (Mule パレット)]​ ビューで、​[Kinesis]​ を選択します。

  2. [Listener]​ を Studio キャンバスにドラッグします。

  3. [Listener]​ プロパティウィンドウで、必要に応じて ​[Display Name (表示名)]​ 項目の値を変更します。

  4. [Connector configuration (コネクタ設定)]​ 項目の横にあるプラス記号 (​+​) をクリックして、アプリケーション内の Amazon Kinesis Connector のすべてのインスタンスで使用できるグローバル要素を設定します。

  5. [General (一般)]​ タブで、次の項目を入力します。

    項目 説明

    Name (名前)

    このコネクタインスタンスの参照に使用される名前。

    Access Key (アクセスキー)

    Amazon が提供するアクセスキー。

    Secret Key (シークレットキー)

    Amazon が提供するシークレットキー。

    Region Endpoint (リージョンエンドポイント)

    Web サービスの URL エントリポイント。

    Role (ロール)

    IAM ロール (該当する場合)

  6. [Security (セキュリティ)]​ タブで、必要に応じてコネクタの TLS 情報を指定します。

  7. [Advanced (詳細)]​ タブで、必要に応じて再接続戦略を含む再接続情報を指定します。

  8. [Test Connection (接続をテスト)]​ をクリックして、Mule が指定されたサーバーに接続できることを確認します。

  9. [OK]​ をクリックします。

  10. [Listener]​ プロパティウィンドウの ​[Listener Params (リスナーパラメーター)]​ セクションで、必要に応じて項目の値を入力します。

フローにコネクタの操作を追加する

フローにコネクタの操作を追加すると、そのコネクタで実行する特定の操作をすぐに定義できます。

次の操作を使用できます。

  • Checkpoint​: Kinesis データストリーム内の現在の位置を追跡します。

  • Seek​: ソース (リスナー) の読み取り位置を移動します

    ストリームの前方への移動はスムーズですが、後方に移動すると、Kinesis Client Library (KCL) インスタンスが内部で再起動されます。そのため、ストリームを後方に移動する操作は慎重に使用してください。

  • Put Record​: Kinesis データストリームにレコードを配置します。

    グローバル設定 ​[Advanced (詳細)]​ タブの ​[Aggregation Enabled (集約有効化)]​ 項が ​true​ (デフォルト) の場合、複数のレコードが結合され、1 つの Kinesis Data Streams レコードに保存されます。

    レコードには、バイナリデータ、パーティションキー、および明示的ハッシュキーが含まれます。明示的ハッシュキーの値は通常、レコードパーティションキーの MD5 関数を使用して計算されますが、​[Explicit Hash Key (明示的ハッシュキー)]​ 項目を使用して値を上書きできます。この操作では、スループットが向上する Kinesis Producer Library (KPL) を使用します。

Amazon Kinesis Data Streams Connector の操作を追加するには、次の手順に従います。

  1. [Mule Palette (Mule パレット)]​ ビューで ​[Kinesis]​ を選択し、目的の操作を選択します。

  2. その操作を Studio キャンバスの入力元の右にドラッグします。

コネクタのグローバル要素を設定する

コネクタを設定する場合、アプリケーション内のそのコネクタのすべてのインスタンスで使用できるグローバル要素を設定することをお勧めします。グローバル要素を設定するには、コネクタが対象 Amazon Kinesis Data Streams システムにアクセスするために必要な認証ログイン情報を提供する必要があります。

Amazon Kinesis Data Streams Connector では、アクセスキー認証がサポートされます。この認証は、AWS Identity and Access Management (IAM) の ​[Access Key (アクセスキー)]​ および ​[Secret Key (シークレットキー)]​ 項目を使用します。

グローバル要素を設定する場合、ANT スタイルのプロパティプレースホルダーを含む設定ファイルを参照するか (推奨)、グローバル設定プロパティに認証ログイン情報を入力できます。プロパティプレースホルダーを使用する利点とその設定方法については、​「Anypoint Connector 設定」​を参照してください。

グローバル要素を設定する手順は、次のとおりです。

  1. Studio キャンバスでコネクタの名前を選択します。

  2. 操作の設定画面で、​[Connector configuration (コネクタ設定)]​ 項目の横にあるプラス記号 (​+​) をクリックし、グローバル要素設定項目にアクセスします。

  3. [General (一般)]​ タブで、次の項目を設定します。

    項目 説明

    Name (名前)

    コネクタインスタンスの参照に使用される名前。

    Access Key (アクセスキー)

    Amazon が提供するアクセスキー。

    Secret Key (シークレットキー)

    Amazon が提供するシークレットキー。

    Region Endpoint (リージョンエンドポイント)

    Web サービスの URL エントリポイント。

    Role (ロール)

    IAM ロール (該当する場合)

  4. [Advanced (詳細)]​ タブで、必要に応じてプロキシおよび再接続情報 (再接続戦略を含む) を指定します。

  5. [Test Connection (接続をテスト)]​ をクリックして、Mule が指定されたサーバーに接続できることを確認します。

  6. [OK]​ をクリックします。

アプリケーションログの表示

問題を確認するため、アプリケーションログを次の方法で表示できます。

  • アプリケーションを Anypoint Platform から実行している場合、アプリケーションログ出力は Anypoint Studio のコンソールウィンドウに表示されます。

  • コマンドラインから Mule を使用してアプリケーションを実行している場合、アプリケーションログ出力は OS コンソールに表示されます。

アプリケーションのログファイル (​log4j2.xml​) でログファイルパスがカスタマイズされていない場合、デフォルトの場所 ​MULE_HOME/logs/<app-name>.log​ でアプリケーションログを表示することもできます。ログパスは、アプリケーションログファイル ​log4j2.xml​ で設定できます。

次のステップ

グローバル要素と接続情報を設定したら、コネクタの他の項目を設定します。