Application Integration と Apigee プロキシ統合ターゲットを使ってみる

このチュートリアルでは、Apigee プロキシ ウィザードを使用して、統合ターゲットを持つプロキシを作成する方法について説明します。プロキシは、既存の統合からの API トリガー参照を利用して、統合の一連の手順を開始します。

以下の手順では、プロキシが呼び出されたときに統合を正常に実施するために統合ターゲット プロキシを構成する方法について説明します。

始める前に

  • Apigee ログイン認証情報と組織の詳細を確認します。この情報は、Apigee UI 内の Application Integration の機能とプロキシ ウィザードにアクセスするために必要です。
  • API トリガーと少なくとも 1 つのタスクとともに統合を作成し、公開します。
    • API トリガーを使用する統合をまだ作成していない場合は、API ペイロードを取得してメールを送信するの手順に沿ってください。
    • 作成する統合の名前または使用したい既存の統合をメモします。この名前は後の手順で使用します。
  • Apigee 組織が作成された Google Cloud プロジェクトと同じプロジェクトに Google サービス アカウントを作成し、次の操作を行います。
    • [Application Integration の起動元] ロール (roles/integrations.applicationIntegrationInvokerRole) をサービス アカウントに割り当てます。Application Integration の事前定義ロールについては、IAM 事前定義ロールをご覧ください。
    • ユーザー アカウント(プリンシパル)が、iam.serviceAccounts.actAs 権限を持つリソースにサービス アカウントを接続できるようにします。サービス アカウントの権限については、サービス アカウントの認証用のロールをご覧ください。

    API プロキシをデプロイする場合は、このサービス アカウントを指定する必要があります。

  • 制限なしで Application Integration を使用する場合は、統合の料金を支払います。Application Integration は、サブスクリプションのアドオン サービスとして利用できます。Application Integration の利用資格をすでに購入していて、Google Cloud プロジェクトか Apigee 組織の利用資格を有効にする場合は、Apigee サポートにお問い合わせください。ただし、Application Integration の利用資格を購入するには、Apigee の営業担当者にお問い合わせください。Application Integration が有効になったら、次のタスクを行います。
    1. 次の API を有効にします。
      • Apigee API(apigee.googleapis.com)
      • Application Integration API(integrations.googleapis.com)
      • Secret Manager API(secretmanager.googleapis.com)
      • Connectors API(connectors.googleapis.com)

      API を有効にする方法については、サービスの有効化をご覧ください。

    2. Apigee 組織の統合とコネクタのアドオンを有効にします。
      • 統合に使用する新しい組織を作成する場合は、次のコマンドを実行します。

        curl -H "Authorization: Bearer $TOKEN" -X POST -H "content-type:application/json" -d '{"name":"${ORG_ID}", "analyticsRegion":"us-west1", "authorized_network":"${NETWORK_ID}", "runtimeType":"CLOUD", "runtimeDatabaseEncryptionKeyName":"${ENCRYPTION_KEY_NAME}", "addonsConfig": {"integrationConfig": {"enabled": true}, "connectorsPlatformConfig":{"enabled":true}}}' "https://apigee.googleapis.com/v1/organizations?parent=projects/${PROJECT_ID}"
      • 既存の組織を使用する場合は、次のコマンドを実行します。

        curl -H "Authorization: Bearer $TOKEN" -H "content-type:application/json" "https://apigee.googleapis.com/v1/organizations/${ORG_ID}:setAddons" -XPOST -d '{"addonsConfig":{"integrationConfig":{"enabled":true},"connectorsPlatformConfig":{"enabled":true}}}'
    3. 次のコマンドを使用して、アドオンが正常に有効になっているかどうかを確認します。

      curl -H "Authorization: Bearer $TOKEN"  -H "content-type:application/json" "https://apigee.googleapis.com/v1/organizations/${ORG_ID}"

      このコマンドを実行すると、次のようなメッセージが表示されます。

      {
        "name": "Test....",
        "createdAt": "1615483867669",
        "lastModifiedAt": "1615483873468",
        …...
        "addonsConfig": {
          "integrationConfig": {
            "enabled": true,
          "connectorsPlatformConfig": {
            "enabled": true
          }
        }
        }
    4. 次の IAM ロールをデフォルトの Apigee サービス アカウント(service-PROJECT_NUMBER@gcp-sa-apigee.iam.gserviceaccount.com)に割り当てます。
      • Application Integration の起動元(roles/integrations.applicationIntegrationInvokerRole

      サービス アカウントへの追加のロールや権限の付与については、アクセス権の付与、変更、取り消しをご覧ください。

Application Integration のターゲット プロキシを作成する

Apigee UI で統合ターゲット プロキシを作成するには、次の手順を実施します。

  1. Apigee UI にアクセスしてログインします。
  2. UI の左上にあるプルダウン メニューから組織を選択します。
  3. メインビューで [API Proxies] をクリックします。

    または、左側のナビゲーション メニューで [Develop] > [API Proxies] を選択することもできます。

  4. [Environment] プルダウン リストから、新しい API プロキシを作成する環境を選択します。
  5. [Create New] をクリックします。
  6. プロキシタイプの表示から [Integration target] を選択します。

    [Create Proxy] ウィザードが起動します。

  7. [Proxy details] 構成ページで、次の情報を入力します。
    • Name: プロキシの名前を入力します。

      プロキシ名には英数字、ダッシュ、アンダースコアを使用できます。

    • Base Path: プロキシ名に基づいて自動的に入力されます。

      Base Path は、API に対するリクエストを行うために使用される URL の一部です。Apigee では、URL を使用して受信リクエストを照合し、適切な API プロキシに転送します。

    • Description: (省略可)プロキシの簡単な説明を入力します。

      例: Proxy test for Application Integration

    • Integration region: 統合のリージョンをプルダウン リストから選択します。
    • Integration target: プルダウン リストから統合ターゲットの名前を選択します。統合ターゲット リストは、選択した統合リージョンに基づいて表示されます。
    • Trigger: 統合に関連付けられている API トリガーをプルダウン リストから選択します。
    • Endpoint type: [Sync] を選択します。
  8. [Next] をクリックします。
  9. [Common policies] 構成ページで、デフォルトの選択のままにして [Next] をクリックします。
  10. [Summary] ページで、[Create] をクリックします。

    統合ターゲット プロキシが正常に作成されます。

プロキシをデプロイする

次の手順で、新しく作成したプロキシをデプロイします。

  1. Apigee UI で、[Develop] > [API Proxies] を選択します。

    UI に、API プロキシとそのデプロイ ステータスのリストが表示されます。

  2. [Environment] プルダウン リストから、API プロキシをデプロイする環境を選択します。
  3. デプロイする最近作成されたプロキシをクリックします。デフォルトでは、UI に [Overview] ページが表示されます。

  4. 変更をデプロイするには、まず [Deploy] をクリックして [Deploy] ダイアログを表示します。
  5. 次のように入力します。
    • Revision: デプロイするプロキシのリビジョン番号。
    • Environment: プロキシをデプロイする環境。
    • Service account: プロキシ用に作成されたサービス アカウント。
  6. [Deploy] をクリックします。

選択したリビジョンのデプロイ プロセスが開始します。プロキシのデプロイが完了するまでに最長で 1 分ほどかかることがあります。

プロキシがデプロイされると、[Deployments] セクションの [Status] 列には、プロキシのリビジョン 1 がデプロイされていることを示す緑色のアイコンが表示されます。

統合ターゲット プロキシをテストする

ターミナル ウィンドウから次のコマンドを実行してプロキシを呼び出し、統合をトリガーします。

curl -v https://YOUR_ENV_GROUP_HOSTNAME/PROXY_NAME

ここで、YOUR_ENV_GROUP_HOSTNAME は、プロキシがデプロイされている環境を含む環境グループのホスト名です。

次に例を示します。

curl -v https://my-org-prod.hybrid.e2e.apigeeks.net/my-proxy

プロキシの呼出しによって統合がトリガーされたことを確認するには:

  1. Apigee UI を開く
  2. [Develop] > [Integrations] の順にクリックします。
  3. 上記の手順で作成した統合の名前を検索または選択し、統合名をクリックします。
  4. [Logs] をクリックします。
  5. トリガーされた統合の実行ログが存在することを確認します。ログの詳細を表示するには、行をクリックして実行の詳細を展開します。

プロキシ リクエストのペイロードを更新する(省略可)

プロキシ リクエストのペイロードを更新するには、次の手順を実施します。

  1. Apigee UI の左側のナビゲーション メニューで [Develop] > [API Proxies] を選択します。
  2. 最近作成したプロキシをクリックします。

    デフォルトでは、UI により、プロキシに関する [Overview] タブがプロキシ エディタに表示されます。

  3. [Develop] タブをクリックします。
  4. [Navigator] ペインで、[Policies] 見出しの下の [Set Integration Request] を選択します。
  5. <Parameters> ブロックのコメントを解除し、パラメータの詳細を入力します。

    個々のパラメータを指定するには、<Parameter> 要素を使用します。パラメータ配列を指定するには、<ParameterArray> 要素を使用します。

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

次のステップ

統合デザイナーのレイアウトを確認し、すべてのコンセプトに記載されているさまざまな統合のコンセプトを理解します。