因此,我刚刚设置了一个应用程序负载均衡器,但我需要一个静态IP来白名单我的数据库连接,我发现全球加速器可以完成这项工作,所以我已经设置了它,并将它分配给ALB。所有显示在控制台中都很好,但当我平我的域(www.example.com)时,我没有看到两个静态IP中的任何一个被分配.当我白名单两个IP的我的应用程序仍然不能连接。我做错了什么吗?
编辑:我的数据库是托管在阿特拉斯云中的Mongo。在我的暂存环境中,我使用该服务器IP地址保护到单个服务器实例的连接。现在我正在使用负载平衡器进入生产环境,我不太确定如何实现相同的结果,因为我有多个EC2实例,可以通过自动标度来创建/销毁这些实例。我的想法是,我需要白化负载均衡器IP地址,而不是单个实例。
发布于 2020-06-16 01:43:50
我假设您的架构是:
当传入到EC2实例的流量通过负载均衡器时,请注意,从EC2实例到数据库的连接是一个单独的到数据库的出站连接。这个流量不通过负载均衡器。负载均衡器的唯一“输出”流量是对传入的请求的响应。
实现该体系结构的典型方法是:
这样,私有子网中的实例可以通过NAT网关访问Internet,但是它们与来自Internet的流量完全隔离。 NAT网关具有静态IP地址的额外好处。所有通过NAT网关到互联网的流量将“显示”来自这个IP地址。
为了容错,建议将NAT网关放置在至少两个可用区域()中。每个地址都有自己的静态IP地址。
哦,您可以考虑将数据库移动到亚马逊DocumentDB (具有MongoDB兼容性),这将减少应用程序服务器和数据库之间的延迟。
https://stackoverflow.com/questions/62398082
复制相似问题