Anypoint Studio を使用した Amazon S3 Connector 6.2 の設定 - Mule 4

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

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

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

Studio で初めてコネクタを設定する場合は、​「Anypoint Studio を使用したコネクタの設定」​を参照してください。 このトピックを参照した後、コネクタ項目についての詳細情報が必要な場合は、​「Amazon S3 リファレンス」​を参照してください。

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

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

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

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

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

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

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

  2. [Add Dependencies to Project (連動関係をプロジェクトに追加)]​ ウィンドウで、検索項目に「​amazon s3​」と入力します。

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

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

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

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

ソースの設定

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

  • On Deleted Object

    Amazon S3 オブジェクトが削除されたときにアプリケーションへのアクセスを開始する

  • On New Object

    Amazon S3 オブジェクトが作成されたときにアプリケーションへのアクセスを開始する

たとえば、​[On Deleted Object]​ ソースを設定する手順は、次のとおりです。

  1. [Mule Palette (Mule パレット)]​ ビューで、​[Amazon S3] > [On Deleted Object]​ を選択します。

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

  3. [On Deleted Object]​ 設定画面で、必要に応じて ​[Display Name (表示名)]​ 項目の値を変更します。

  4. 次の項目の値を指定します。

    • Bucket name (バケット名)
      中止するマルチパートアップロードが含まれるバケットの名前

    • Notification queue name (通知キュー名)
      S3 バケットで新しいオブジェクトが作成または削除されたときにユーザーに通知するために使用する Amazon SQS キューの名前。 省略した場合、​MULE-S3-TRIGGER-<event-type>-QUEUE-<bucket-name>​ のプレフィックスでデフォルトのキュー名が作成されて使用されます。even-type は ​NEW​ または ​REMOVED​ のどちらかになります。 NOTE: デフォルトキューが (未指定時に) 作成され、ソースが SQS:Received を使用してイベント通知コネクタをポーリングするため、sqs:CreateQueue、sqs: GetQueueAttributes、sqs: SetQueueAttributes、sqs: GetQueueUrl、sqs: ReceiveMessage、sqs: DeleteMessage の SQS 権限が必要です。*

    • Scheduling Strategy (スケジュール戦略)
      ポーリングをトリガーするスケジューラーを設定します。

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

  6. [General (一般)]​ タブで、コネクタの接続情報を指定します。

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

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

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

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

フローにコネクタの操作を追加するときは、そのコネクタで実行するアクションを指定しています。

Amazon S3 の操作を追加するには、次の手順に従います。

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

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

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

コネクタを設定する場合、アプリケーション内のそのコネクタのすべてのインスタンスで使用できるグローバル要素を設定します。 グローバル要素を設定するには、コネクタが対象の Amazon S3 システムにアクセスするために必要な認証ログイン情報を指定する必要があります。 Amazon S3 では、基本認証とロール認証がサポートされています。

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

  1. Studio キャンバスで操作を選択します。

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

  3. [General (一般)]​ タブの ​[Connection (接続)]​ で、設定する​[接続]​方式を選択します。

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

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

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

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

    [Test Connection (接続をテスト)]​ で接続を検証するには、アクション ​s3:ListAllMyBuckets​ に対する AWS IAM の権限が必要です。 この権限がない場合、テストは失敗します。 ただし、アクセス権のあるコネクタと操作は引き続き使用できます。

    Amazon S3 の操作へのアクセスは、ポリシーでさらに詳細に制御されます。 アクセス権がある操作を完了する前にログイン情報を検証できない場合もあります。 これは、バケット名やその他のパラメーターによって異なります。 たとえば、ログイン情報に制限されたポリシーが適用される場合、テスト接続に失敗する可能性があります。

[Connection (S3) (接続 (S3))] 接続種別

[Global Element Properties (グローバル要素のプロパティ)]​ 画面の ​[General (一般)]​ タブで次の情報を入力し、[Connection (S3) (接続 (S3))] 接続種別を設定します。

+

項目 ユーザーアクション

Name (名前)

設定名を入力します。

Connection (接続)

[Connection (接続)]​ を選択します。

Access Key (アクセスキー)

Amazon が提供するアクセスキーを入力します。

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

Amazon が提供するシークレットキーを入力します。

+

S3 互換ストレージの設定例

MinIO プロジェクト​は、Amazon S3 ストレージの一例です。 このストレージをローカルで設定する場合、S3 互換ストレージの URL を ​http://127.0.0.1:9000​ に設定します。

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

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

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

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

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

次のステップ

Studio を設定したら、​「例」​トピックで詳細な設定アイデアを参照してください。