您正在查看 Apigee Edge 文档。
前往 Apigee X 文档。 信息
什么是 Apigee Adapter for Envoy?
Apigee Adapter for Envoy 是由 Apigee 管理的 API 网关,它使用 Envoy 代理 API 流量。Envoy 是一种广受欢迎的开源边缘和服务代理,专用于云原生应用。您可以在本地或多云环境中运行 Apigee Adapter for Envoy。
通过 Apigee Adapter for Envoy,您可以在后端应用附近运行一个占用空间相对较小的 API 网关应用。Apigee Adapter for Envoy 依赖 Apigee 来实现:
- API 身份验证和授权(使用 API 密钥和 OAuth)
- 配额管理
- API Analytics
观看视频。
本视频简要介绍并演示了 Google Cloud 的 Apigee Adapter for Envoy。
此视频介绍了如何将 Apigee Adapter for Envoy 与 Service Mesh 搭配使用。
安装选项
在下列上下文中,您可以使用 Apigee Adapter for Envoy:
- 作为独立的原生二进制文件(或在 Docker 上运行),并与适用于公有云的 Apigee Edge 集成。
- 作为独立的原生二进制文件(或在 Docker 上运行),并与适用于私有云的 Apigee Edge 集成。
- 作为部署到与 Apigee Hybrid 集成的 Istio 服务网格的服务。请参阅将 Apigee Adapter for Envoy 与 Apigee Hybrid 搭配使用。
Apigee Adapter for Envoy
下图显示 Apigee Adapter for Envoy 的简要架构。此架构包括部署在 Google Cloud Platform (GCP) 上的管理层面组件,以及在本地环境或云服务商环境中以远程方式运行的数据平面组件。数据平面包括 Envoy 代理和 Apigee 远程服务。下图说明了每个组件的角色。
- 使用方或客户端应用访问由 Envoy 代理提供的 API 端点。
- Envoy 代理将安全上下文(使用 HTTP 标头)传递给 Apigee 远程服务。Apigee 远程服务充当政策决策点 (PDP),并建议 Envoy 允许或拒绝访问请求的 API 使用方。
- 如果可以进行调用,则 Envoy 代理会将请求转发给后端。
- Apigee 远程服务异步轮询管理层面并下载代理、API 产品以及其他需要运行的配置。
为何使用 Apigee Adapter for Envoy?
将 API 管理组件移到后端目标应用附近可以减少网络延迟。虽然您可以在私有云中本地安装 Apigee Edge,但 Apigee Edge 的完整部署的规模必须庞大且复杂,才能支持其完整功能集和数据量极大的功能(例如密钥管理、获利和分析)。也就是说,不一定要在每个数据中心本地部署 Apigee Edge。
使用 Apigee Adapter for Envoy 的好处包括:
-
降低了近距离运行的服务的 API 流量延迟时间。
- 可以使用整套 Edge Analytics 指标、信息中心和 API。
- 出于安全或合规性目的,将 API 流量保留在企业批准的边界内。
- 与 Apigee 进行异步通信可以捕获 API 流量数据并发送到 Apigee,同时不影响延迟。
- 适配器可以承受与管理层面的临时通信中断。但一段时间后,通信中断可能会导致功能受损。适配器需要与管理层面进行通信:
- 生成 OAuth 令牌
- 验证 API 密钥(首次验证时需要连接,然后将其缓存)
- 实施配额
- 将分析数据发送到管理层面