Mule ゲートウェイ API インスタンスの追加

Design Center またはその他のアプリケーションを使用して API を作成したら、API インスタンスを追加して、API Manager でその API を管理できます。API は、削除するまで API Manager の管理下に置かれます。

Mule Runtime に API があり、API を管理、監視、保護するために API ゲートウェイが必要な場合、Mule ゲートウェイを選択します。

API インスタンスを追加するには、次の 3 つのオプションがあります。

API インスタンスを昇格またはインポートするときに、設定を変更するオプションはありません。ただし、新しい API インスタンスを追加する場合、ダウンストリームとアップストリームの設定を定義する必要があります。

次の図は、アップストリームおよびダウンストリームの設定と、アップストリームサービスおよびダウンストリームコンシューマーアプリケーションとの関係を示しています。この設定では、ダウンストリームサービスは、アップストリームサービスによって完了される API 要求を行うサービスです。これらの用語は、情報の方向ではなく、連動関係の方向を表します。ダウンストリームサービスは、アップストリームサービスに情報を提供する ​POST​ 要求を行うことができます。ただし、ダウンストリームサービスは、要求の完了には引き続きアップストリームサービスに連動します。

API インスタンスは、アップストリーム設定とダウンストリーム設定の間のゲートウェイにデプロイされます。

新しい API を追加する

  1. [Anypoint Platform]​ > ​[API Manager]​ に移動します。

  2. [API Administration (API 管理)]​ で、​[Add API (API を追加)]​ をクリックし、​[Add new API (新しい API を追加)]​ をクリックします。

  3. [Mule Gateway (Mule ゲートウェイ)]​ を選択します。

  4. 以下のオプションから​プロキシ種別​を選択します。

    Connect to existing application (Basic Endpoint) (既存のアプリケーションへの接続 (基本エンドポイント))

    アプリケーションに API ゲートウェイの自動検出が設定されている場合、このオプションを使用して Mule Runtime Engine (Mule) アプリケーションと直接やりとりします。詳細は、​「API 自動検出」​を参照してください。

    Mule バージョン​を選択します。

    Deploy a proxy application (プロキシアプリケーションのデプロイ)

    API ゲートウェイの自動検出が設定されていない Mule アプリケーションであるか、Mule アプリケーションではないためにプロキシによってアプリケーションとやりとりする場合、このオプションを使用します。 詳細は、​「API のプロキシの設定」​を参照してください。

  5. プロキシアプリケーションのデプロイを選択した場合は、以下のオプションから​対象種別​を選択します。

    • CloudHub 2.0​: コンテナベースのクラウドインフラストラクチャで MuleSoft によってホストされている Mule Runtime を使用する場合は、このオプションを選択します。CloudHub 2.0 プロキシには、デフォルトで 0.1 vCore の CPU が含まれています。

      1. スペースを選択します。

        スペースについての詳細は、​『共有スペース』 and 『非公開スペース』​を参照してください。

      2. [Runtime Version (ランタイムバージョン)]​ で、次の操作を実行します。

        1. [Runtime Channel (ランタイムチャネル)]​ を選択します。

        2. Mule Runtime の ​[Version (バージョン)]​ を選択します。

        3. [Java version (Java バージョン)]​ を選択します。

      3. [Proxy app name (プロキシアプリケーション名)]​ を入力します。

    • CloudHub:​ MuleSoft によってクラウドでホストされている Mule Runtime を使用する場合は、このオプションを選択します。CloudHub プロキシには、デフォルトで 0.1 vCore の CPU と 500 MB のメモリが含まれています。

      1. [Runtime Version (ランタイムバージョン)]​ で、次の操作を実行します。

        1. [Runtime Channel (ランタイムチャネル)]​ を選択します。

        2. Mule Runtime の ​[Version (バージョン)]​ を選択します。

        3. [Java version (Java バージョン)]​ を選択します。

      2. [Proxy app name (プロキシアプリケーション名)]​ を入力します。

    • Hybrid (ハイブリッド):​ Runtime Manager に登録されているオンプレミスサーバーで実行される Mule Runtime インスタンスを使用する場合、このオプションを選択します。

      詳細は、​「Runtime Manager でのサーバーの登録」​を参照してください。

      1. リストから接続先を選択するか、​[Add server (サーバーを追加)]​ をクリックします。

      2. [Proxy app name (プロキシアプリケーション名)]​ を入力します。

    • Self-managed Server (自己管理型サーバー):​ JAR ファイルを作成して、Runtime Manager に登録されていないオンプレミスサーバーで実行される Mule Runtime インスタンスに API プロキシをデプロイする場合、このオプションを選択します。詳細は、『On-Premises Deployment Model』を参照してください。

API Manager で API プロキシを自己管理型サーバーにデプロイしても、プロキシはオンプレミスサーバーにデプロイされません。API Manager でプロキシをデプロイした後に、プロキシをオンプレミスサーバーにデプロイします。 . 『新しい API プロキシ JAR ファイルをダウンロードします』​。 . 『JAR ファイルをオンプレミスサーバーにデプロイします』​。

  • Runtime Fabric:​ Runtime Fabric で管理された Mule Runtime Engine に API プロキシをデプロイする場合、[Runtime Fabric] を選択します。 詳細は、​「Runtime Fabric への API プロキシのデプロイ」​を参照してください。

    1. リストから対象を選択します。

    2. [Runtime Version (ランタイムバージョン)]​ で、次の操作を実行します。

      1. [Runtime Channel (ランタイムチャネル)]​ を選択します。

      2. Mule Runtime の ​[Version (バージョン)]​ を選択します。

      3. [Java version (Java バージョン)]​ を選択します。

    3. [Proxy app name (プロキシアプリケーション名)]​ を入力します。

      1. 以下のオプションから API を選択します。

  • 管理する API を Exchange を介して共有している場合、​[Select API from Exchange (Exchange から API を選択)]​ をクリックします。

    1. [Select API (API を選択)]​ の下のリストから API をクリックします。必要に応じて、特定の API を検索できます。

    2. 最新バージョンを使用していない場合は、​[Asset type (アセットタイプ)]​、​[API version (API バージョン)]​、および ​[Asset version (アセットバージョン)]​ を更新します。

      Exchange でのバージョンについての詳細は、『アセットバージョン』を参照してください。

    3. [RAML/OAS]​ アセットタイプを選択した場合は、API の ​[Conformance Status (準拠状況)]​ を表示して、API が準拠していることを確認します。​[Conformance Status (準拠状況)]​ が非準拠の場合、デプロイ後に​ガバナンスレポート​を表示して、準拠の問題を見つけて修正します。​ガバナンスレポート​についての詳細は、『API インスタンスの管理』を参照してください。

  • [Create new API (新しい API を作成)]​ をクリックします。

    1. 新しい API アセットの​名前​を入力します。

    2. 以下のオプションから​アセットタイプ​を選択します。

      • REST API:​ アセットに含める RAML または OAS API 定義ファイルがある場合は、このオプションを選択します。

        REST API の RAML または OAS ファイルをアップロードします。バージョン 2.0.0 以降ではネイティブ OAS サポートが追加されるので、OAS または RAML 仕様に推奨されるバージョンです。OAS API 仕様を API プロキシバージョン 1.0 以前にアップロードすると、API 仕様は RAML に変換されます。

      • HTTP API:​ アセットに含める API 定義ファイルがない場合は、このオプションを選択します。

      • SOAP API:​ WSDL API 定義ファイルまたはファイルへの外部リンクがある場合は、このオプションを選択します。

        SOAP API の WSDL ファイルをアップロードするか、ファイルへのリンクを追加します。
        このオプションは、現時点では Flex Gateway ランタイムでは使用できません。

    3. 最新バージョンを使用していない場合は、​[Asset type (アセットタイプ)]​、​[API version (API バージョン)]​、および ​[Asset version (アセットバージョン)]​ を更新します。

      Exchange でのバージョンについての詳細は、『アセットバージョン』を参照してください。

    4. [RAML/OAS]​ アセットタイプを選択した場合は、API の ​[Conformance Status (準拠状況)]​ を表示して、API が準拠していることを確認します。[Conformance Status (準拠状況)] が非準拠の場合、デプロイ後に​ガバナンスレポート​を表示して、準拠の問題を見つけて修正します。​ガバナンスレポート​についての詳細は、『API インスタンスの管理』を参照してください。

      1. [Next (次へ)]​ をクリックします。

      2. プロキシ種別に関連するダウンストリーム設定を定義します。

      3. [Next (次へ)]​ をクリックします。

      4. プロキシ種別に関連するアップストリーム設定を定義します。

      5. [Next (次へ)]​ をクリックします。

      6. 選択内容を確認し、必要に応じて編集します。

      7. デプロイする準備ができたら、​[Save & Deploy (保存してデプロイ)]​ をクリックします。または、​[Save (保存)]​ を選択して API インスタンスを保存し、後でデプロイします。

        == 新しい API アセットを作成する

この機能は、GovCloud 環境でのみ使用できます。他の環境で API アセットを作成する場合は、「exchange::to-create-an-asset.adoc#create-an-api-asset」を参照してください。

API アセットでは、インターフェースのすべて (その関数、説明、戻りコードの処理方法、連動関係など) を指定します。

アセットを作成すると、アセットタイプが設定されます。アセットタイプは変更できません。アセットのすべてのバージョンのタイプは常に同じです。

API アセットを作成する手順は、次のとおりです。

  1. [API Manager] で、​[Add API (API を追加)]​ をクリックします。

  2. ドロップダウンリストから、​[Create new API asset (新規 API アセットを作成)]​ を選択します。

  3. アセットの名前を入力します。

  4. ドロップダウンリストから、アセットタイプを選択します。

    • REST API - RAML: RAML API 仕様ファイルを提供します。RAML 仕様には RAML ファイル (.raml) を使用する必要があります。

    • REST API - OAS: OAS API 仕様ファイルを提供します。OAS 仕様には YAML (.yaml) または JSON (.json) ファイルを使用できます。Exchange では、OAS 2.0 および OAS 3.0 仕様がサポートされています。

    • SOAP API - WSDL: WSDL API 仕様ファイルを提供します。SOAP 仕様ファイルには WSDL (.wsdl) または XML (.xml) ファイルを使用できます。

    • AsyncAPI: YAML (.yaml) または JSON (.json) ファイル形式の AsyncAPI 仕様ファイルを提供します。

    • Avro スキーマを使用した AsyncAPI: AVSC (.avsc) ファイルで Avro フラグメントを提供します。

    • API 仕様フラグメント - RAML: API フラグメント RAML 仕様ファイルを提供します。フラグメント仕様には RAML ファイル (.raml) を使用する必要があります。

    • API 仕様フラグメント - JSON: API フラグメント JSON 仕様 (.json) ファイルを提供します。

    • API 仕様フラグメント - OpenAPI 仕様 (OAS): API フラグメント OpenAPI 仕様ファイル JSON または YAML を提供します。

    • HTTP API: このアセットはファイルを必要としません。このアセットタイプでは、API Manager によって定義された API エンドポイントを提供します。

  5. ファイルを必要とするアセットの場合、次の手順を実行します。

    1. [Choose File (ファイルを選択)]​ をクリックし、API 仕様ファイルを見つけます。

    2. API のメインファイルを選択します。
      ファイルが ZIP の場合、選択したメインファイルは ZIP ファイルのルートディレクトリにある必要があります。ファイルが ZIP ではない場合、または 1 つのメインファイルのみを含む ZIP ファイルの場合、メインファイルは自動的に選択されます。

  6. GroupId​、​AssetId​、​バージョン​、​API バージョン​ (GAV) を編集するには、​[Advanced (詳細)]​ をクリックします。
    グループ ID、アセット ID、バージョン (GAV) は Exchange によって自動的に生成されますが、これらの値は必要に応じて変更できます。API のアセットバージョンとバージョンは個別に変更できます。詳細設定を使用して、アセットバージョンを変更します。

  7. [Lifecycle state (ライフサイクル状態)]​ のオプションを選択します。デフォルトは [Stable (安定)] です。

  8. [Publish (パブリッシュ)]​ をクリックします。

別の環境への API インスタンスの昇格

  1. [Anypoint Platform]​ > ​[API Manager]​ に移動します。

  2. [API Administration (API 管理)]​ で、​[Add API (API を追加)]​ をクリックし、​[Promote API from environment (環境から API を昇格)]​ を選択します。

  3. [Source Environment (ソース環境)]​ を選択します。

  4. 検索項目に API の名前を入力して、​[API]​ を選択します。

  5. [API Version (API バージョン)]​ を選択します。

  6. [API instance label (API インスタンスの表示ラベル)]​ を選択します。

  7. 必要に応じて、除外する ​[Include in Promotion (昇格に含める)]​ オプションをオフにます。

  8. [Promote (昇格)]​ をクリックします。

  9. 必要に応じて、[Runtime & Endpoint Configuration (ランタイムとエンドポイント設定)] の詳細を確認して更新し、​[Save (保存)]​ をクリックします。

Zip ファイルから API をインポートする

  1. [Anypoint Platform]​ > ​[API Manager]​ に移動します。

  2. [API Administration (API 管理)]​ で、​[Add API (API を追加)]​ をクリックし、​[Import API from zip file (zip ファイルから API をインポート)]​ を選択します。

  3. [Choose file (ファイルを選択)]​ をクリックし、API インスタンス設定 zip ファイルを選択します。

  4. [Next (次へ)]​ をクリックします。

  5. 必要に応じて API 設定の詳細を確認して更新し、​[Save (保存)]​ をクリックします。

注意事項

  • OpenAPI 仕様 (OAS) 3.0 はサポートされていますが、コールバック機能はサポートされていません。この問題を回避するには、Mule Runtime Engine ドメインの外部でコールバックを処理するか、コールバックを使用しない OAS 3.0 仕様を使用します。