我在EC2上运行了几个微服务。
我的意图是使用AWS网关允许互联网访问EC2 API。
Incoming Traffic is:
internet -> API Gateway -> EC2-server
我计划在AWS网关上使用一个讨厌的HTTP代理。但我有两个问题:
如何在方法集成中的"URL“中寻址EC2?我能以某种方式使用AWS的私有IP吗?
如何配置EC2安全组以允许EC2中的API网关请求?
发布于 2018-04-15 10:05:25
API网关主要用于Lambda,因此有一些限制。为了实现最简单的集成,您必须拥有您的微服务公共服务,然后通过其他方式在API网关和您的服务之间进行身份验证。这听起来不像是你想做的..。我也不想让我的非公共服务公开!
为了完成您所要求的(API到私有EC2资源),您必须设置一个私人整合。这很像AWS如何为S3这样的服务实现服务端点。基本上,您可以通过你得把北草坪会议大楼放在你服务的前面.Then来设置API,以便通过VpcLink
资源与该端点联系。流程如下:
API Gateway -> VpcLink resource -> NLB -> Target Group -> EC2 instances
另见这个问题
发布于 2019-01-07 07:49:17
注意:我只有使用Lambda的经验,所以我从未测试过带有纯HTTP后端的API网关.例如,使用它作为基于云的nginx。
但根据 @EdwardSamuel:
API网关帮助开发人员提供健壮、安全和可伸缩的移动和web应用程序后端。applications允许开发人员安全地将移动和web应用程序连接到托管在AWS上的业务逻辑、托管在亚马逊EC2上的API或托管在AWS内部或外部的其他可公开寻址的web服务。使用API网关,开发人员可以为其后端服务创建和操作API,而无需开发和维护处理授权和访问控制、流量管理、监视和分析、版本管理和软件开发工具包(SDK)生成的基础设施。
用于传递资源的API网关现在支持HTTP代理集成,因此您不需要显式地描述您的有效负载和查询参数(这是以前所要求的)。
https://serverfault.com/questions/907709
复制