API Connect 组件
API Connect 组件提供 API 生命周期的统一用户体验。API 生命周期的一个阶段中的更改将自动反映在 API Connect 的其他组件中。
下图描绘了 API Connect 组件,概括了每个组件的关键功能,还说明了各组件的交互方式。这些组件在以下部分中进行了详细描述。
Cloud Manager
- 定义云中所需的管理服务器、网关服务器和容器的集群,并配置拓扑。有关管理服务器和网关服务器的信息,请参阅API Connect 服务器需求。有关容器的信息,请参阅应用程序运行时/容器化运行时/API Connect 集合体。
- 管理(修改、移动、移除、重新启动和重新引导)云中的服务器。
- 监视云的运行状况。
- 定义并且管理开发 API 的提供者组织。(分配的提供者组织的管理者或所有者也可完成此任务。)
- 定义其他云管理员,或设置其角色支持访问特定功能的用户。
- 添加用户注册表以认证用户和保护 API,配置数据的安全传输(例如,通过 Web 站点)。
有关 Cloud Manager 的更多信息,请参阅管理云。
developer toolkit
developer toolkit 提供用于开发和测试 API 以及 LoopBack 应用程序并进行建模的工具。developer toolkit 包含一个命令行界面 (CLI) 和一个相应图形用户界面 API Designer。它合并了 LoopBack(开放式源代码 Node.js 框架)。
API 开发者使用 API Designer 或 CLI 中的 API 管理功能,为 REST 和 SOAP API 或用于 OAuth 2.0 认证的 OAuth 提供者端点创建草稿 API 定义。API 定义可以配置为将 API 添加到产品,添加策略组合件流(用于处理请求/响应)和定义安全选项及其他设置。然后,可以在发布之前在本地测试 API,以确保对其正确定义和实现。
使用 LoopBack,API 开发者可创建 Node.js 应用程序,连接到诸如后端数据库或要使用的 REST API 之类的数据源,然后通过创建模型定义将应用程序作为 REST API 公开。缺省情况下,LoopBack 模型定义 API 的应用程序数据、验证规则、数据访问功能和业务逻辑,并提供 REST API。然后,此 REST API 会由使用 API Designer 或 CLI 创建的 REST API 定义使用并公开给用户。API 及其关联应用程序(作为 LoopBack 项目实现)必须都进行了发布才能使项目运行。LoopBack 项目还可在本地进行测试。下图说明 LoopBack 项目体系结构:
将使用 API Designer、CLI 或 LoopBack 创建的草稿 API(在其包含产品中)发布到目录。将使用 LoopBack 创建的应用程序从调用时运行位置发布到容器或 API Connect 集合体。(有关容器和集合体的信息,请参阅应用程序运行时/容器化运行时/API Connect 集合体。)
将使用 API Designer、CLI 或 LoopBack 创建的草稿 API(在其包含产品中)发布到目录。将使用 LoopBack 创建的应用程序从调用时运行位置发布到 API Connect 集合体。(API Connect 集合体是 API Connect 的单独可安装组件,在应用程序运行时/容器化运行时/API Connect 集合体中进行了描述。)
developer toolkit 在本地安装,用于脱机 API 和应用程序开发。有关 developer toolkit 的更多信息,请参阅开发 API 和应用程序。有关 LoopBack 的更多信息,请参阅 LoopBack:Node.js API 框架。
API Manager
API Manager 提供了一个用户界面,可帮助提升和跟踪在“产品和计划”中打包的 API。API 提供者可在产品的生命周期中移动产品以及管理 API 和计划的可用性和可视性。
在 API Manager 中创建的目录和空间将充当登台目标,API、计划和产品通过这些登台目标发布到开发者组织。API 提供者可使其产品登台到目录或空间,然后进行发布,使这些产品中的 API 在 Developer Portal 上可见,以供外部发现。
要控制对可用 API 管理功能的访问权,可以在 API Manager UI 中使用分配的角色和许可权设置提供者组织中的用户。API 提供者还可使用 UI 来管理那些注册访问其 API 和计划的开发者组织。 要将开发者组织分组以便为各组提供一组特定的产品和计划,可以额外创建开发者社区。
API Manager UI 还包含以下功能:管理 API 环境的安全性,提供对可定制仪表板视图中 API 调用度量相关分析信息的访问权。
有关 API Manager 的更多信息,请参阅管理 API。
API 网关
您的 API Connect 产品服务(或版本)仅可包含 Micro Gateway 或者 Micro Gateway 和虚拟 DataPower Gateway。根据某些情况,还提供了对物理 DataPower Gateway 的支持。有关 API Connect 产品服务的更多信息,请参阅API Connect 产品。
应用程序运行时/容器化运行时/API Connect 集合体
- 应用程序运行时
应用程序运行时提供运行时环境,以在 API Connect 中执行 API。
- 容器化运行时
- 容器化运行时环境为 API 和应用程序提供轻量级部署位置。容器将应用程序打包在完整文件系统中,此文件系统包含运行所需的所有对象,例如,代码、运行时、系统工具和系统库。您可以使用 Docker Swarm 或 Kubernetes 容器来运行正由 API Connect 管理的 API 和应用程序。有关更多信息,请参阅安装容器化运行时环境。
- API Connect 集合体
在内部部署环境中,API Connect 集合体组件额外提供了运行时环境集合,以执行使用 developer toolkit 创建的 LoopBack 应用程序。
在 API Connect 中,集合体用于部署和运行 LoopBack 应用程序和 Micro Gateway(其本身作为 LoopBack 应用程序创建)。集合体是服务器集合的管理和操作域。在此上下文中,服务器指的是 LoopBack 应用程序,此应用程序作为应用程序服务器打包以部署到集合体。将 LoopBack 应用程序(服务器)发布到集合体时,它必须已加入集合体,这会使此应用程序服务器成为集合体成员。集合体成员是已部署应用程序的运行时。每个部署的应用程序的集合体成员都在成员主机上运行,此主机是设置用于运行集合体中服务器的机器,安装了 SSH 守护程序并向集合体进行了注册。
集合体成员由集合体控制器管理,此控制器是维护集合体状态的 (WebSphere Application Server) Liberty Network Deployment Java 服务器。集合体控制器在控制器主机上运行。集合体控制器充当一个集中控制点以便集合体执行各种操作(例如,文件传输和集群管理),并包含存储和协作功能。更具体地说,集合体控制器负责使用 SSH 在成员主机上将已发布 LoopBack 应用程序作为服务器部署,使服务器加入集合体(从而成为集合体成员),然后启动服务器以便应用程序可运行。
集合体控制器和集合体成员使用 HTTPS 进行双向通信。集合体成员共享有关其网络位置、安全详细信息和操作状态的信息,这可确保轻松检索信息,而不必针对各个成员调用操作。集合体控制器还定期监视服务器的运行状况,以查看其是否需要重新启动。控制器使用随需应变路由器将有关成员应用程序的信息发布到 Micro Gateway 以及 DataPower Gateway,以便它们知道可路由到哪些应用程序。集合体还在集合体控制器上提供 Liberty Admin Center 控制台,可用于监视集合体。可使用只读访问权从 API Manager UI 访问 Admin Center。运行软件进程的 API Connect 客户机还可连接到集合体控制器,以查询有关集合体及其成员资格的信息或执行操作。
根据可扩展性和高可用性需求,可以使用一个或多个集合体控制器配置集合体,且一个集合体可具有多个成员主机。集合体控制器和集合体成员还可位于不同主机或相同主机上。有关集合体的更多信息,请参阅 WebSphere Application Server Liberty Network Deployment 文档中的 Liberty:集合体体系结构。
下图描绘了 Cloud Manager 和 API Manager 连接到的 API Connect 集合体的体系结构。集合体控制器位于不同于三个集合体成员的主机上。
要启用集合体和其他 API Connect 组件之间的通信,必须在 Cloud Manager 中注册集合体和集合体控制器。
Developer Portal
Developer Portal 为应用程序开发者提供基于 Web 的可定制自助服务门户网站,以浏览、发现和预订 API。
API 提供者在 API Manager 中发布 API 时,这些 API 在 Developer Portal 中公开,以供开发者组织发现和使用。应用程序开发者可访问 Developer Portal UI 以注册其应用程序,发现 API,在其应用程序中使用所需 API(必要时需核准访问权),以及随后部署这些应用程序。
Developer Portal 提供其他功能,例如,论坛、博客、评论和评级,以实现社交化和协作。API 使用者还可查看有关应用程序所使用的 API 以及在开发者组织中使用的 API 的分析信息。有关更多信息,请参阅 Developer Portal:发现和使用 API。
API Connect 服务器需求
在本地云中,您可以创建、升级、使用和跟踪 API。本地云由各种设备组成,其中每个设备均是特定类型的服务器。服务器集合可定义云,并确定如何分发数据的管理、分析、路由和存储工作。
本地云可以是新的和现有的物理设备与虚拟设备的组合,它也可以完全由虚拟设备组成。API Connect 环境中服务器的类型和数量由每个企业单独的需求确定,但最低需求为一个管理服务器、一个网关服务器和一个用于托管 Developer Portal 的服务器。
服务器类型 | 最低固件版本需求 | 支持的硬件 |
---|---|---|
管理服务器 | IBM® API Connect V5.0 | 不适用 |
网关服务器 | IBM
DataPower Gateway 在 IBM Software Product Compatibility Reports 站点上,针对每个 API Connect 产品服务,在 IBM API Connect V5.0 详细系统需求报告的受支持软件部分中提供了版本详细信息。 (以下链接显示最新版本的详细系统需求报告。如果要查看先前版本的报告,请打开特定产品的详细系统需求页面,搜索 IBM API Connect 产品,然后选择所需产品和版本)
要点: “应用程序优化”(AO) 选项是必需的。确保激活了 AO 模块。
|
请参阅 IBM API Connect V5.0 详细系统需求报告的受支持软件部分,以了解每个 API Connect 产品服务: (以下链接显示最新版本的详细系统需求报告。如果要查看先前版本的报告,请打开特定产品的详细系统需求页面,搜索 IBM API Connect 产品,然后选择所需产品和版本)
|
Developer Portal | IBM API Connect Developer Portal V5.0 | 不适用 |
有关规划云的更多信息,请参阅规划云。
按界面组件列出的典型任务
API Connect 提供了命令行和图形用户界面。提供者和开发者组织使用不同界面来完成典型任务。请参见下表以找到与特定任务对应的界面。
组织类型 | 界面组件 | 任务 |
---|---|---|
API 提供者 | 命令行界面 (CLI) | 创建 API、计划和产品 |
API Designer UI | 创建 API、计划和产品 | |
API Manager UI | 创建目录和空间;创建开发者组织 | |
Cloud Manager UI | 创建提供者组织 | |
API 使用者(应用程序开发者) | Developer Portal | 访问 API 以创建和运行应用程序;创建开发者组织 |
- 如果为目录启用了自助服务加载,那么当应用程序开发者注册或由 API 提供者邀请加入 Developer
Portal 时,会自动创建开发者组织,然后应用程序开发者会变成此开发者组织的所有者。
有关 API Connect 组件的更多信息,请参阅API Connect 组件。