当前位置: 首页 > 知识库问答 >
问题:

AWS Cloudfront用于内部弹性负载平衡器原点

呼延俊风
2023-03-14

我在私有子网实例上托管了一个web应用程序,因为该应用程序面向不同地理位置的组织内部用户。此应用程序需要AWS CloudFront支持,以便更有效地提供静态内容。问题是-我需要面向internet的负载平衡器(在公共子网中有实例)作为CloudFront分发的源。

我不希望面向internet的ELB和公共子网中的结果实例。

我可以利用AWS CloudFront连接到内部ELB吗?

共有1个答案

邹高峻
2023-03-14

我需要面向internet的负载平衡器(在公共子网中有实例)作为CloudFront分发的源。

其中一部分是不正确的。

CloudFront确实要求源服务器可以通过internet访问,因此该部分是正确的。

但是面向Internet的负载均衡器不要求均衡器背后的实例位于公共子网上或拥有自己的公共IP地址。

它们不仅不是必需的,而且对于面向互联网的ELB Classic或ALB,最佳实践实际上是两者都不要。

问题我想创建一个面向公共互联网的负载平衡器,并附加不可公开访问的后端Amazon EC2实例;例如,位于专用子网中的实例。我该怎么做?

简短说明您必须在与私有实例使用的私有子网相同的可用区中创建公共子网。然后将这些公共子网关联到面向Internet的负载均衡器。

https://aws.amazon.com/premiumsupport/knowledge-center/public-load-balancer-private-ec2/

这适用于经典和应用程序均衡器,但不适用于网络负载均衡器;但是,CloudFront并不真正需要NLB,因为ALB具有100%的兼容性,与CloudFront可以做的事情重叠。

在实例的不同子网上使用平衡器不会影响性能。

CloudFront仅适用于Internet可访问的资源。它不支持与VPC的私有连接(包括Lambda@Edge函数,这些函数不在您的VPC中运行)。

 类似资料:
  • 我们试图在自动缩放的AWS中使用弹性负载平衡,这样我们就可以根据需要进行缩放。 我们的应用程序由几个较小的应用程序组成,它们都位于同一子网和同一VPC上。 我们想把我们的ELB放在一个应用程序和其他应用程序之间。 问题是我们希望负载均衡器在内部使用API的不同应用程序之间工作,并且面向互联网,因为我们的应用程序仍然有一些应该在外部而不是通过API完成的用法。 我已经读过这个问题,但我无法从那里准确

  • 我在GKE上有两个kubernetes集群:一个是处理与外部世界交互的公共集群,另一个是仅供内部使用的私有集群。 公共集群需要访问私有集群上的一些服务,我已经通过内部负载平衡器向公共集群的pod公开了这些服务。目前,我正在为负载平衡器指定要使用的内部IP地址,并将这些IP传递给公共POD,但我更希望负载平衡器可以选择任何可用的内部IP地址,并且我可以将其DNS名称传递给公共POD。 内部负载均衡器

  • 我们在AWS VPC中有一个面向内部的应用程序负载平衡器。运行在公用子网中的web应用程序正在访问此文件。该web应用位于自定义域url后面,并使用SSL证书进行安全保护。由于API负载平衡器未应用SSL,因此从web app到API LB的通信失败。 是否可以在AWS中为面向内部的负载平衡器获取SSL证书?

  • 我目前有一个基于rails的Web应用程序,它需要通过HTTP提供一小部分页面——但更喜欢通过HTTPS提供其余部分。在我当前的AWS设置中,SSL终止于弹性负载均衡器,与我的应用服务器的所有通信都通过HTTP进行。正因为如此,像Rack SSL Enforcher这样的解决方案是不合适的。目前,我在每个页面中提供以下JS片段来处理重定向: 这导致每次访问其中一个页面时,性能都会受到相对显著的影响

  • AWS推出了应用程序负载平衡器,可以进行基于路径的路由。是否可以将经典负载平衡器放在应用程序负载平衡器之后。 示例:假设我们有两个经典的负载平衡器。应用程序负载平衡器将流量路由到所有url(如应用程序负载平衡器/前端)的第一个经典负载平衡器,并将流量路由到所有url(如应用程序负载平衡器/后端)的第二个经典负载平衡器* 目前,似乎我们只能将主机置于应用程序负载平衡器之后。是否可以将负载平衡器置于应

  • 在Kubernetes中创建负载平衡器类型的服务时,它是创建一个全新的外部负载平衡器,还是只为负载平衡器类型的第一个服务创建一个负载平衡器,并将该负载平衡器重新用于负载平衡器类型的所有后续服务? 这个问题特别重要,因为为每个服务构建一个单独的负载平衡器对我来说成本太高。 如果它特定于云提供商,我使用Azure,但我很想知道其他云提供商是否不同。