Edge for Private Cloud の概要

Edge for Private Cloud v4.18.01

新機能

4.18.01 - Edge for Private Cloud リリースノートをご覧ください。

Apigee コミュニティにアクセスする

Apigee コミュニティは、Apigee だけでなく、他の Apigee ユーザーにも質問、ヒント、その他の問題について問い合わせることができる無料のリソースです。コミュニティに投稿する前に、まず既存の投稿を検索して、質問に対する回答がすでに投稿されていないかどうかを確認してください。

アーキテクチャの概要

Apigee Edge for Private Cloud をインストールする前に、Edge モジュールとソフトウェア コンポーネントの全体的な構成を理解しておく必要があります。

Apigee Edge for Private Cloud は、次のモジュールで構成されています。

  • Apigee Edge Gateway(別名 API Services)
  • Apigee Edge Analytics
  • Apigee API BaaS
  • Apigee Edge デベロッパー チャネル
  • Apigee Edge Monetization Services(別名 Developer Services Monetization)

注: Apigee Edge Developer Channel は、Edge for Private Cloud インストーラではインストールできません。デベロッパー チャンネルは、別のスクリプトによるオンプレミス インストールで使用できます。デベロッパー チャンネルをインストールする場合は、Apigee Edge サポートにお問い合わせください。

Apigee Edge Gateway

Edge Gateway は Apigee Edge のコア モジュールであり、API を管理するためのメインツールです。Gateway UI には、API の追加と構成、リソースのバンドルの設定、デベロッパーとアプリの管理のためのツールが備わっています。Gateway により、バックエンド API での一般的な管理上の問題が解消されます。API を追加する際は、セキュリティ、レート制限、メディエーション、キャッシュ保存などの制御のためのポリシーを適用できます。カスタム スクリプトの適用、サードパーティの API の呼び出しなどを行って、API の動作をカスタマイズすることもできます。

ソフトウェア コンポーネント

Edge Gateway は、次の主要コンポーネントで構成されています。

  • Edge Management Server
  • Apache ZooKeeper
  • Apache Cassandra
  • エッジルーター
  • Edge Message Processor
  • OpenLDAP
  • Edge UI

Edge Gateway は、これらすべてを 1 つのホストにインストールすることも、複数のホストに分散することもできるように設計されています。

Apigee Edge Analytics

Edge Analytics には、長期的な使用状況の傾向を確認できる強力な API 分析機能があります。上位のデベロッパーやアプリによって対象ユーザーを分類したり、API メソッドごとの使用状況を把握して投資すべき分野を把握したりするほか、ビジネスレベルの情報に関するカスタム レポートを作成することもできます。

データが Apigee Edge を通過すると、いくつかのデフォルト タイプの情報(URL、IP、API 呼び出しのユーザー ID に関する情報、レイテンシ、エラーデータなど)が収集されます。ポリシーを使用して、他の情報(ヘッダー、クエリ パラメータ、XML や JSON から抽出したリクエストまたはレスポンスの一部など)を追加することもできます。

すべてのデータは Edge Analytics に push され、バックグラウンドで分析サーバーによって維持されます。データ集計ツールを使用すると、さまざまな組み込みレポートやカスタム レポートを作成できます。

ソフトウェア コンポーネント

Edge Analytics は、次の要素で構成されています。

  • Qpid。次の要素で構成されます。
    • Apache Qpid メッセージング システム
    • Apigee Qpid Server サービス - Apache Qpid の管理に使用される Apigee の Java サービス
  • Postgres。次の要素で構成されます。
    • PostgreSQL データベース
    • Apigee Postgres Server サービス - PostgreSQL データベースの管理に使用される Apigee の Java サービス

Apigee API BaaS

API BaaS は、モバイルアプリやウェブアプリを強化するための完全な Backend as a Service(BaaS)であり、Edge の追加機能としてインストールします。API BaaS を使用すると、アプリ デベロッパーは柔軟なデータストアにアクセスできるほか、ソーシャル グラフ、位置情報、ユーザー管理、プッシュ通知、パフォーマンス モニタリングなどの重要な差別化機能を利用できます。API BaaS では、これらの機能を iOS、Android、JavaScript などの SDK で利用できるため、アプリ デベロッパーは、コア バックエンド サービスやインフラストラクチャの実装に時間を費やすことなく、クライアント アプリを真に差別化する豊富な機能とユーザー エクスペリエンスの作成に集中できます。

API BaaS の機能

Apigee のドキュメント サイトには、API BaaS の機能に関する詳細な情報が掲載されています。http://apigee.com/docs/app-services/content/app-services-features をご覧ください。

次の図は、API BaaS コンポーネント間の相互のやり取りを示しています。

ソフトウェア コンポーネント

API BaaS は、次の主要コンポーネントで構成されています。

  • API BaaS Stack - Tomcat ウェブサーバーにデプロイ
  • API BaaS Portal - Nginx ウェブサーバーにデプロイされた UI
  • ElasticSearch - 分散型全文検索エンジン。ElasticSearch は、API BaaS Stack と同じノードにインストールすることも、独自のノードにインストールすることもできます。

API BaaS REST API 機能を水平方向にスケーリングするには、Tomcat サーバーを追加し、ロードバランサを使用してウェブ リクエストをすべてのアクティブなサーバーにルーティングします。

API BaaS のスタートガイドについては、http://apigee.com/docs/content/build-apps-home をご覧ください。

Apigee Edge デベロッパー チャネル

Edge Developer Channel は、コンテンツとコミュニティを管理するためのテンプレート ポータルです。これは、オープンソースの Drupal(http://www.drupal.org)プロジェクトに基づいています。デフォルトの設定では、API ドキュメント、フォーラム、ブログを作成して管理できます。組み込みのテストコンソールを使用すると、ポータル内からリアルタイムで API をテストできます。

デベロッパー チャンネルには、コンテンツ管理以外にも、ユーザーの手動/自動登録やユーザー コメントの管理など、コミュニティ管理のためのさまざまな機能があります。ロールベース アクセス制御(RBAC)モデルは、デベロッパー チャンネルの機能へのアクセスを制御します。たとえば、確認済みユーザーがフォーラム投稿を作成したり、テストコンソールを使用したりできるようにするコントロールを有効にできます。

Apigee Edge for Private Cloud のデプロイ スクリプトには、デベロッパー チャネルのデプロイ機能は含まれません。オンプレミスでのデベロッパー チャンネルのデプロイは、オンプレミス固有のインストール スクリプトによってサポートされます。デベロッパー チャンネルをインストールして構成する場合は、Apigee サポートにお問い合わせください。

Apigee Edge Monetization Services

Edge Monetization Services は、Apigee Edge for Private Cloud の強力な新しい拡張機能です。API プロバイダが API の使用に対して料金を請求して収益を上げるためには、使いやすく柔軟な API 収益化の手段が必要になります。Monetization Services は、これらの要件を解決します。Monetization Services を使用すると、パッケージにバンドルされた API の使用についてデベロッパーに課金するさまざまな料金プランを作成できます。このソリューションは、プリペイド プラン、ポストペイド プラン、固定料金プラン、変動料金プラン、「フリーミアム」プラン、特定のデベロッパーに合わせたプラン、デベロッパーのグループを対象とするプランなど、幅広い柔軟性を提供します。

また、収益化サービスにはレポート機能と請求機能が含まれています。たとえば、API プロバイダは、デベロッパーが料金プランを購入した API パッケージへのトラフィックに関する概要レポートまたは詳細レポートを取得できます。必要に応じて、これらのレコードを調整することもできます。また、API パッケージの使用に関する請求ドキュメント(該当する税金を含む)を作成し、それらのドキュメントをデベロッパーに公開できます。

また、API パッケージのパフォーマンスを制御およびモニタリングし、それに応じて対応できるように制限を設定することもできます。これらの制限に近づいたとき、または制限に達したときに自動通知を設定することもできます。

注: 収益化サービスを使用するには、コア Apigee Edge(Gateway と Analytics)が必要です。

収益化サービスの機能

Edge Monetization Services の主な機能は次のとおりです。

  • API プラットフォームと完全に統合されているため、リアルタイムのインタラクションが可能
  • シンプルな料金ベースのプランから、最も複雑な課金/収益分配プランまで、すべてのビジネスモデルを「すぐに」サポート(プランの作成と変更が簡単)
  • 各トランザクション内のボリュームまたは「カスタム属性」に基づいてトランザクションを評価します。 トランザクションは、Gateway の API と他のシステム(Apigee Edge の外部)の API で構成される
  • パフォーマンスをモニタリングし、プロセスを管理するための制限や通知などの自動化ツール
  • 請求/支払いを通じて購入を管理するための、統合されたデベロッパー/パートナー ワークフローとコントロール
  • ビジネス ユーザーとデベロッパー/パートナー向けの完全なセルフサービス。費用のかかる技術的な介入は不要
  • あらゆるバックエンドの販売、会計、ERP システムと統合

ソフトウェア コンポーネント

Edge Monetization Services は、次の主要コンポーネントを基盤として構築されています。

  • Edge Management Server
  • Edge Message Processor

Edge UI を使用した Monetization Services の利用開始の詳細については、http://apigee.com/docs/monetization-services/content/get-started-using-monetization-services をご覧ください。

オンプレミスでのデプロイ

Apigee Edge for Private Cloud のコア(Gateway と Analytics)をオンプレミスにインストールすると、オンプレミス クライアントのお客様に代わって API トラフィックを実行するために必要なインフラストラクチャが提供されます。

Edge Gateway のオンプレミス インストールによって提供されるコンポーネントには、次のようなものがあります(ただし、これらに限定されません)。

  • Router は、ロードバランサからのすべての受信 API トラフィックを処理し、リクエストを処理する API プロキシの組織と環境を決定し、使用可能な Message Processor 間でリクエストを分散して、リクエストをディスパッチします。Router は HTTP リクエストを終了し、TLS/SSL トラフィックを処理します。また、仮想ホスト名、ポート、URI を使用して、リクエストを適切な Message Processor に転送します。
  • Message Processor は API リクエストを処理します。Message Processor は、受信リクエストを評価し、Apigee ポリシーをすべて実行して、バックエンド システムやその他のシステムを呼び出してデータを取得します。システムからのレスポンスを受信すると、Message Processor はレスポンスをフォーマット化してクライアントに返します。
  • Apache Cassandra は、ゲートウェイで実行されているアプリケーションの構成、分散割り当てカウンタ、API キー、OAuth トークンを格納するランタイム データ リポジトリです。
  • Apache ZooKeeper には、さまざまな Apigee コンポーネントの場所と構成に関する構成データが含まれており、構成の変更をさまざまなサーバーに通知します。
  • OpenLDAP(LDAP)は、システムおよび組織のユーザーとロールを管理します。
  • これらの要素をまとめる管理サーバー。Management Server は、Edge Management API リクエストのエンドポイントです。また、Edge UI ともやり取りします。
  • UI には、API プロキシ、API プロダクト、アプリ、ユーザーの作成、構成、管理に必要なほとんどのタスクを実行できるブラウザベースのツールが用意されています。

Edge Analytics のオンプレミス インストールによって提供されるコンポーネントには、次のものがあります。

  • Qpid サーバーは、分析データのキューイング システムを管理します。
  • Postgres サーバーは、PostgreSQL 分析データベースを管理します。

次の図は、Apigee Edge コンポーネント間の相互のやり取りを示しています。