私有云的 Edge 概览

Edge for Private Cloud v. 4.17.09

新变化

请参阅 4.17.09 - Edge for Private Cloud 版本说明。

访问 Apigee 社区

Apigee 社区是一个免费资源,您可以在其中联系 Apigee 以及其他 Apigee 客户,提出问题、分享技巧和讨论其他问题。在社区中发帖之前,请务必先搜索现有帖子,看看您的问题是否已经得到解答。

架构概览

在安装 Apigee Edge for Private Cloud 之前,您应该熟悉 Edge 模块和软件组件的整体组织。

Apigee Edge for Private Cloud 包含以下模块:

  • Apigee Edge 网关(也称为 API 服务)
  • Apigee Edge Analytics
  • Apigee API BaaS
  • Apigee Edge 开发者渠道
  • Apigee Edge Monetization Services(也称为 Developer Services Monetization)

注意:Apigee Edge 开发者渠道无法通过 Edge for Private Cloud 安装程序进行安装。开发者渠道可通过单独的脚本进行本地安装。如果您想安装开发者渠道,请与 Apigee 支持团队联系。

Apigee Edge 网关

Edge Gateway 是 Apigee Edge 的核心模块,也是管理 API 的主要工具。 Gateway 界面提供了用于添加和配置 API、设置资源包以及管理开发者和应用的工具。网关可分担后端 API 的许多常见管理任务。添加 API 时,您可以应用安全、速率限制、中介、缓存和其他控制措施。您还可以通过应用自定义脚本、调用第三方 API 等方式自定义 API 的行为。

软件组件

Edge Gateway 由以下主要组件构建而成:

  • Edge Management Server
  • Apache ZooKeeper
  • Apache Cassandra
  • 边缘路由器
  • Edge 消息处理器
  • OpenLDAP
  • Edge 界面

Edge Gateway 经过精心设计,因此这些组件可以全部安装在单个主机上,也可以分布在多个主机上。

Apigee Edge Analytics

Edge Analytics 具有强大的 API 分析功能,可查看长期使用趋势。您可以按热门开发者和应用对受众群体进行细分,了解按 API 方法划分的使用情况,从而知道应在何处投资,并创建有关业务级信息的自定义报告。

当数据通过 Apigee Edge 时,系统会收集几种默认类型的信息,包括网址、IP、API 调用信息的用户 ID、延迟时间和错误数据。您可以使用政策添加其他信息,例如标头、查询参数以及从 XML 或 JSON 中提取的请求或响应部分。

所有数据都会推送到 Edge Analytics,由分析服务器在后台进行维护。数据汇总工具可用于编译各种内置或自定义报告。

软件组件

Edge Analytics 包含以下内容:

  • Qpid,由以下部分组成:
    • Apache Qpid 消息传递系统
    • Apigee Qpid Server 服务 - Apigee 提供的 Java 服务,用于管理 Apache Qpid
  • Postgres,由以下部分组成:
    • PostgreSQL 数据库
    • Apigee Postgres Server 服务 - Apigee 提供的 Java 服务,用于管理 PostgreSQL 数据库

Apigee API BaaS

API BaaS 是一个完整的后端即服务 (BaaS),用于为作为 Edge 附加组件安装的移动和 Web 应用提供支持。借助 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 堆栈 - 部署在 Tomcat Web 服务器中
  • API BaaS 门户 - 在 Nginx Web 服务器中部署的界面
  • ElasticSearch - 分布式全文搜索引擎。ElasticSearch 可以安装在与 API BaaS 堆栈相同的节点上,也可以安装在自己的节点上。

您可以通过添加 Tomcat 服务器并使用负载均衡器将 Web 请求路由到所有活跃服务器,来横向扩缩 API BaaS REST API 功能。

如需详细了解如何开始使用 API BaaS,请参阅 http://apigee.com/docs/content/build-apps-home。

Apigee Edge 开发者渠道

Edge 开发者渠道是一个用于内容和社区管理的模板门户。它基于开源 Drupal (http://www.drupal.org) 项目。默认设置允许创建和管理 API 文档、论坛和博客。内置测试控制台允许在门户中实时测试 API。

除了内容管理之外,开发者频道还具有各种社区管理功能,例如手动/自动用户注册和管理用户评论。基于角色的访问权限控制 (RBAC) 模型可控制对开发者渠道中功能的访问权限。例如,您可以启用控件,以允许注册用户创建论坛帖子、使用测试控制台等。

Apigee Edge for Private Cloud 部署脚本不包含开发者渠道部署。本地开发者渠道部署由其自己的安装脚本提供支持。 如果您想安装和配置开发者渠道,请与 Apigee 支持团队联系。

Apigee Edge Monetization 服务

Edge 获利服务是 Apigee Edge for Private Cloud 的一项强大的新扩展功能。作为 API 提供商,您需要一种易用而灵活的方式来通过 API 创收,以便能够使用这些 API 创造收入。创收服务可满足这些要求。 借助创收服务,您可以创建各种费率方案,以便向开发者收取使用捆绑到软件包中的 API 的费用。该解决方案提供了极大的灵活性:您可以创建预付费方案、后付费方案、固定费用方案、可变费率方案、“免费增值”方案、针对特定开发者量身定制的方案、涵盖开发者群组的方案等。

此外,创收服务还包括报告和结算功能。例如,作为 API 提供方,您可以获取开发者购买了费率方案的 API 软件包的流量摘要或详细报告。您还可以根据需要对这些记录进行调整。您还可以为 API 软件包的使用创建结算文档(包括适用税费),并将这些文档发布给开发者。

您还可以设置限制,以帮助控制和监控 API 软件包的性能,并允许您做出相应反应。您还可以设置自动通知,以便在接近或达到这些限制时收到通知。

注意:核心 Apigee Edge(网关和分析)是使用创收服务的前提条件。

变现服务功能

Edge 创收服务的主要功能包括:

  • 与 API 平台完全集成,实现实时互动
  • “开箱即用”地支持所有业务模式,从简单的收费方案到最复杂的收费/收益分成方案(易于创建和修改方案)
  • 根据每笔交易的交易量或“自定义属性”对交易进行评分。 事务可以由来自网关以及其他系统(Apigee Edge 外部)的 API 组成
  • 自动化工具(例如限制和通知)可用于监控性能和管理流程
  • 集成的开发者/合作伙伴工作流程和控件,用于通过结算/付款管理购买交易
  • 为业务用户和开发者/合作伙伴提供完全自助服务,因此无需昂贵的技术干预
  • 与任何后端销售、会计和 ERP 系统集成

软件组件

Edge 创收服务基于以下主要组件构建:

  • Edge Management Server
  • Edge 消息处理器

如需详细了解如何使用 Edge 界面开始使用创收服务,请参阅 http://apigee.com/docs/monetization-services/content/get-started-using-monetization-services。

本地部署

本地安装的核心 Apigee Edge for Private Cloud(网关和分析)提供了代表本地客户的客户运行 API 流量所需的基础设施。

Edge Gateway 的本地安装提供的组件包括(但不限于):

  • 路由器处理来自负载均衡器的所有传入 API 流量,确定处理请求的 API 代理的组织和环境,在可用的消息处理器之间平衡请求,然后分派请求。路由器会终止 HTTP 请求,处理 TLS/SSL 流量,并使用虚拟主机名、端口和 URI 将请求引导至适当的消息处理器。
  • 消息处理器用于处理 API 请求。消息处理器会评估传入请求,执行所有 Apigee 政策,并调用后端系统和其他系统来检索数据。收到这些响应后,消息处理器会设置响应格式并将其返回给客户端。
  • Apache Cassandra 是运行时数据存储库,用于存储在网关上运行的应用的应用配置、分布式配额计数器、API 密钥和 OAuth 令牌。
  • Apache ZooKeeper 包含有关各种 Apigee 组件的位置和配置的配置数据,并向不同的服务器通知配置更改。
  • OpenLDAP (LDAP),用于管理系统和组织用户及角色。
  • 管理服务器,用于将这些部分整合在一起。Management Server 是 Edge Management API 请求的端点。它还会与 Edge 界面进行交互。
  • 界面提供基于浏览器的工具,可让您执行创建、配置和管理 API 代理、API 产品、应用和用户所需的大多数任务。

Edge Analytics 的本地安装提供的组件包括:

  • Qpid 服务器负责管理分析数据的队列系统。
  • Postgres 服务器用于管理 PostgreSQL 分析数据库。

下图展示了 Apigee Edge 组件如何交互: