Apigee Edge のドキュメントを表示しています。
Apigee X のドキュメントに移動。 情報
Edge Microgateway v. 2.4.x
オーディエンス
このトピックは、すべてのユーザーを対象とした Edge Microgateway の概要です。
Apigee Edge Microgateway とは
Apigee Edge Microgateway は、API 用の安全な HTTP ベースのメッセージ プロセッサです。主なジョブは、バックエンド サービスとの間でリクエストとレスポンスを安全に処理し、貴重な API 実行データを非同期的に Apigee Edge に push することです。push されたデータは、Edge Analytics システムによって消費されます。Edge Microgateway のインストールとデプロイは簡単です。数分でインスタンスを利用開始できます。
通常、Edge Microgateway はバックエンド ターゲット サービスに近接した信頼できるネットワーク内にインストールします。エンタープライズ クラスのセキュリティと、spike arrest、quota、analytics などのいくつかの重要なプラグイン機能が提供されますが、Apigee Edge の全機能やフットプリントは提供されません。Edge Microgateway はバックエンド サービスと同じデータセンターにインストールできます。必要であれば、バックエンド サービスと同じマシンにインストールすることも可能です。
主なユースケース:
Edge Microgateway のようなハイブリッド Cloud API 管理ソリューションの一般的なユースケースは次のとおりです。
-
近接して動作するサービスの API トラフィックのレイテンシを短縮する。たとえば、API コンシューマとプロデューサが近接している場合、API に中央ゲートウェイを通過させるのが望ましいとは限りません。
- セキュリティやコンプライアンスの目的で、企業が承認した境界内で API トラフィックを維持する。
- インターネット接続が一時的に失われた場合に、メッセージの処理を続行する。
- Apigee コミュニティでのこのユースケースに関するディスカッションもご覧ください。
主な機能と利点
- セキュリティ: Edge Microgateway は、Apigee Edge によって各クライアント アプリに発行された署名付きアクセス トークンまたは API キーを使用してリクエストを認証します。
- 迅速なデプロイ。Apigee Edge の完全なデプロイとは異なり、Edge Microgateway のインスタンスはわずか数分でデプロイして実行できます。
- ネットワークの近接。Edge Microgateway は、Edge Microgateway とやり取りするバックエンド ターゲット API と同じマシン、サブネット、データセンターにインストールして管理できます。
- 分析。Edge Microgateway は、API 実行データを非同期的に Apigee Edge に送信します。このデータは、そこで Edge Analytics システムによって処理されます。Edge Analytics のすべての指標、ダッシュボード、API を使用できます。
- レイテンシの短縮。Apigee Edge とのすべての通信は非同期であり、クライアント API リクエストの処理の一部として行われるものではありません。これにより、Edge Microgateway はレイテンシに影響を与えることなく API データを収集して Apigee Edge に送信できます。
- 親近感。Edge Microgateway は、プロキシ、プロダクト、デベロッパー アプリなど、Edge 管理者がすでによく理解している Apigee Edge の機能を使用し、これらの機能と相互作用します。
- 構成。Edge Microgateway の設定と管理にプログラミングは必要ありません。すべてが構成によって処理されます。
- 利便性。Edge Microgateway は、既存のアプリケーション モニタリング、管理インフラストラクチャ、プロセスと統合できます。
- シンプル。インストール、構成、保守が簡単です。
- Logging。ログファイルには、Edge Microgateway による API の処理中に発生したすべての通常イベントと例外イベントの詳細が記録されます。
- CLI。コマンドライン インターフェースを使用して、Edge Microgateway の起動、停止、再起動、運用統計データの抽出、ログファイルの表示、アクセス トークンのリクエストなどができます。
Edge Microgateway について知っておくべきこと
このセクションでは、Edge Microgateway の機能、基本的なアーキテクチャ、構成、デプロイについて説明します。
Edge Microgateway を使用する理由
API 管理コンポーネントをバックエンド ターゲット アプリケーションの近くに移動すると、ネットワークのレイテンシを短縮できます。Apigee Edge はオンプレミスのプライベート クラウドにインストールできますが、Apigee Edge をすべてデプロイすると、全機能一式とキー管理、収益化、分析などのデータ量の多い機能のサポートが必然的に大きく複雑になります。つまり、各データセンターに Apigee Edge On Premises をデプロイすることは必ずしも望ましくありません。
Edge Microgateway を利用することにより、バックエンド アプリケーションの近くで実行される比較的小さいフットプリントのアプリケーションを実現できます。また、分析、セキュリティなどの機能には完全な Apigee Edge を活用できます。
デプロイ シナリオの例
このセクションでは、Edge Microgateway の考えられるデプロイ シナリオをいくつか紹介します。
同じマシン
図 1 は、Edge Microgateway とバックエンド ターゲット API が同じマシンにインストールされた、考え得る限り最もシンプルな構成で Edge Microgateway がデプロイされている場合のリクエストの処理パスを示しています。
図 1: Edge Microgateway の最もシンプルなデプロイメント

別のマシン
クライアント、Edge Microgateway、バックエンド API 実装の間の通信はすべて HTTP で行われるため、図 2 に示すように、Apigee Edge Microgateway を API 実装とは別のマシンにインストールすることもできます。
図 2: バックエンド ターゲット API から分離された Edge Microgateway

複数のアプリケーションをプロキシする
図 3 に示すように、単一の Edge Microgateway インスタンスを複数のバックエンド ターゲット アプリケーションのフロントエンドとして使用できます。
図 3: Edge Microgateway は複数の API プロキシをフロントエンドに配置できます

ロードバランサを使用する場合
図 4 に示すように、Edge Microgateway 自体のフロントエンドに標準のリバース プロキシ、または SSL 終端処理/負荷分散用のロードバランサを配置できます。
図 4: ロードバランサを使用した Edge Microgateway の運用

イントラネットへのデプロイ
図 5 に示すように、イントラネット トラフィックの保護に Edge Microgateway を使用し、インターネット トラフィックの保護に Apigee Edge を使用します。たとえば、Apigee Edge Cloud を介して API エンドポイント /orders がプロキシされ、バックエンド ターゲット https://mycompany.com/orders にヒットしたとします。これは、左側のターゲット API 実装によって表されます。次に、この API によって、右側のターゲット実装で表される複数の API エンドポイントを呼び出すことができます。たとえば、/customers と /transactions を内部的に呼び出すことができます。Apigee コミュニティの
こちらの投稿もご覧ください。
図 5: イントラネット トラフィックを保護する Edge Microgateway の運用

Apigee Edge への依存性
Edge Microgateway は Apigee Edge に依存し、Apigee Edge とやり取りします。Edge Microgateway が機能するためには、Apigee Edge との通信が必要です。Edge Microgateway が Edge とやり取りする主な方法は次のとおりです。
- 起動時に、Edge Microgateway は特別な「Edge Microgateway 対応」プロキシのリストと、Apigee Edge 組織にあるすべての API プロダクトのリストを取得します。受信クライアント リクエストごとに、Edge Microgateway はリクエストがこれらの API プロキシのいずれかと一致するかどうかを確認し、そのプロキシに関連付けられた API プロダクトのキーに基づいて受信アクセス トークンまたは API キーを検証します。
- Apigee Edge Analytics システムは、Edge Microgateway から非同期に受け取った API データを保存して処理します。
- Apigee Edge は、アクセス トークンへの署名に使用される認証情報を提供するか、Edge Microgateway を通じて API を呼び出すクライアントが必要とする API キーを提供します。これらのトークンは、CLI コマンドを使用して取得できます。
1 回限りの構成
最初に、Apigee Edge 組織と通信できるように Edge Microgateway を構成する必要があります。スタートアップ時に、Edge Microgateway は Apigee Edge との間でブートストラップ操作を開始します。Edge Microgateway は、Apigee Edge から、独自に API 呼び出しを処理するために必要な情報を取得します。これには、Apigee Edge にデプロイされている Edge Microgateway 対応プロキシのリストが含まれます。これらのプロキシは後で詳しく説明します。
Edge Microgateway は Apigee Edge と同じ場所に配置する必要はありません。Apigee Edge のパブリック クラウドとプライベート クラウドの提供サービスは等しく適切に機能します。
実践で学習する場合は、Edge Microgateway の設定と構成に進んでください。ここでは、便利な CLI コマンドを使用して Edge Microgateway を設定、構成するプロセスについて説明します。
Edge Microgateway 対応プロキシについて知っておくべきこと
Edge Microgateway 対応プロキシは、クライアント API リクエストを処理するための特定の情報を Edge Microgateway に提供します。Edge Microgateway が起動すると、これらのプロキシに関する情報が Apigee Edge から Edge Microgateway にダウンロードされます。
ユーザーまたはユーザーの API チームが、Apigee Edge 管理 UI を使用して、または必要に応じて他の方法で Apigee Edge にこれらのプロキシを作成します。操作は簡単です。詳細については、Edge Microgateway の設定と構成をご覧ください。
Edge Microgateway 対応プロキシの特徴は次のとおりです。
- Micro 対応プロキシは、Edge Microgateway に、基本パスとターゲット URL という 2 つの重要な情報を提供します。
- Micro 対応プロキシは、HTTP ターゲット エンドポイントを指している必要があります。TargetEndpoint の定義に含まれる ScriptTarget 要素によって参照された Node.js アプリケーションをバックエンド ターゲットにすることはできません。詳細については、上記の注をご覧ください。
- プロキシ名には接頭辞
edgemicro_を付加する必要があります。例:edgemicro_weather。 - Edge Microgateway プロキシは、Apigee Edge 管理 UI のプロキシ エディタでは編集できません。つまり、ポリシーや条件付きフローは追加できません。(追加を試みると、これらは無視されます)。
- それ以外の点では、Edge Microgateway プロキシは、Edge 上の他の API プロキシと同じように Edge 管理 UI に表示されます。
- Edge 上の API プロキシと同様に、Edge Microgateway プロキシは、プロダクトにバンドルすることも、デベロッパー アプリに関連付けることもできます。
- 他のプロキシと同様に、Edge Microgateway プロキシ アナリティクスを追跡できます。
- Edge Microgateway プロキシは、Apigee Edge Trace ツールを使用してトレースすることはできません。
Edge Microgateway と Apigee Edge Analytics の詳細
API トラフィックが Edge Microgateway を通過する際、Edge Microgateway は API 実行データをバッファリングして非同期的に Apigee Edge に送信します。Apigee Edge に送信されたデータは、Edge Analytics システムによって保存され、処理されます。この非同期通信により、Edge Microgateway は Edge の分析機能を利用しながら、処理オーバーヘッドやブロッキングを最小限に抑えて比較的小さいフットプリントを維持できます。Edge Microgateway を通過するトラフィックの分析には、Edge Analytics ダッシュボードとカスタム レポートの全機能を使用できます。
図 6: Edge の [Proxy Traffic] ダッシュボード

Edge Analytics の詳細については、Analytics ダッシュボードをご覧ください。
Edge Microgateway のセキュリティについて
Apigee Edge の役割
前述のように、Apigee Edge は、Edge Microgateway へのすべてのクライアント リクエストの保護に関与しています。Apigee Edge の主な役割は次のとおりです。
- API キーとして使用されるクライアント認証情報を提供するか、クライアントが Edge Microgateway 経由で安全な API 呼び出しを行うために使用する有効なアクセス トークンを生成します。
- Edge Microgateway が API 実行データを Apigee Edge Analytics システムに送信するために必要な認証情報を提供します。これらの認証情報は、初期設定手順で Edge Microgateway によって 1 回取得されます。(詳細な手順については、Edge Microgateway の設定と構成をご覧ください)。
- API リソースのプロダクトへのバンドル、デベロッパーの登録と管理、デベロッパー アプリの作成と管理のためのプラットフォームを提供します。
クライアント アプリの認証
- Edge Microgateway では、アクセス トークンと API キーによるクライアント認証がサポートされています。セキュリティ キーとトークンは Apigee Edge によって生成され、API 呼び出しごとに Edge Microgateway によって検証されます。
- oauth プラグインが有効な場合は、Edge Microgateway で署名付きアクセス トークンまたは API キーがチェックされ、有効であれば API 呼び出しがバックエンド ターゲットに進みます。有効でない場合は、エラーが返されます。
- アクセス トークンを取得して使用するために必要な手順については、Edge Microgateway の設定と構成をご覧ください。API キーの詳細については、 Edge Microgateway の操作と構成リファレンスの「API キー セキュリティの使用」をご覧ください。
Apigee Edge における Edge Microgateway の認証
- Apigee Edge の分析データを更新するために Edge Microgateway で非同期呼び出しを行うには、認証が必要です。この認証は、CLI または環境変数を使用して Edge Microgateway に渡される公開鍵と秘密鍵のペアによって提供されます。これらの鍵は、Edge Microgateway を初めてインストールして起動するときに 1 回取得して使用します。
API プロダクト管理プラットフォーム
- Edge は、API リソースのプロダクトへのバンドル、デベロッパーの登録と管理、デベロッパー アプリの作成と管理のためのプラットフォームとして機能します。たとえば、Edge Microgateway プロキシでも、通常の Apigee Edge プロキシでプロダクトやデベロッパー アプリなどのエンティティを作成してバンドルするのとまったく同じことができます。API レベルのセキュリティは、各「バンドル」に対して公開と非公開のセキュリティ キーを生成することで実現します。このメカニズムは Apigee Edge での API セキュリティの仕組みと同じです。
既存の Edge プロキシ実装を Edge Microgateway に移行できますか?
関連するポリシーまたは条件フローを持つ既存のプロキシを Edge Microgateway に移行することはできません。Edge Microgateway により、新しい「Microgateway 対応」プロキシを作成することが求められます。これらのプロキシには、特別な接頭辞 edgemicro_ の付いた名前を指定する必要があります。スタートアップ時に、Edge Microgateway でこれらの edgemicro_* プロキシが検出され、それぞれの構成情報がダウンロードされます。この情報には、ターゲット URL とリソースパスが含まれます。それ以降、そのプロキシは使用されません。これらのプロキシのポリシーまたは条件フローが実行されることは決してありません。
Microgateway 対応プロキシを使用するもう 1 つの理由は、Edge Microgateway が Microgateway 対応プロキシごとの分析データを Edge に非同期的に push することです。これにより、Microgateway 対応プロキシの分析データを、Edge Analytics UI の他のプロキシと同様に表示できるようになります。
設定のトピックでは、Edge Microgateway を介して API 呼び出しのプロキシを開始するために必要なすべての手順を説明しています。これには、Microgateway 対応プロキシの作成など、Edge Microgateway で必要な構成を設定するための Apigee Edge でのいくつかの簡単な手順が含まれます。Edge Microgateway の設定と構成をご覧ください。
Edge Microgateway プロキシでポリシーを使用できますか?
前のセクションで説明したように、Apigee Edge の「Microgateway 対応」プロキシにポリシーを接続することはできません。Edge Microgateway は、プラグインを使用して、割り当て、Spike Arrest、API キー セキュリティ、OAuth2 セキュリティなどの Edge のポリシーと同様の機能を提供します。プラグインの使用をご覧ください。カスタム プラグインの開発で説明されているように、カスタム プラグインを作成することもできます。
Edge Microgateway について学ぶには、どうすればよいですか?
Apigee では以下のリソースが提供されています。
-
Edge Microgateway のドキュメント - ドキュメントには、開始チュートリアル、詳細なリファレンス、構成情報などがあります。
-
詳細なウェブセミナー - Edge Microgateway について詳細に説明し、Edge Microgateway の設定方法と構成方法を示します。
-
Edge Micro フォーラム - Apigee コミュニティにある Edge Micro フォーラムは、質問したり、他のユーザーによる質問と回答を参考にしたりできる便利な場所です。