Amazon web services 在K8s集群(AWS EKS)中公开多个HTTP服务的廉价解决方案

Amazon web services 在K8s集群(AWS EKS)中公开多个HTTP服务的廉价解决方案,amazon-web-services,kubernetes,amazon-eks,Amazon Web Services,Kubernetes,Amazon Eks,我对k8s还很陌生,我正试图找出如何以廉价的方式向Internet公开多个HTTP服务。目前,我正在使用AWS EKS集群和托管节点组,因此便宜的方法是不提供任何类型的ELB,因为它需要成本。此外,我希望这些服务位于专用子网中,以便只暴露f.ex only入口资源,节点将保持专用。每个svc一个负载平衡器绝对不是一个选项,因为它将分解我的预算 我考虑的选择是: 使用K8s入口资源(确切地说:Istio入口控制器)。但缺点是,当我们创建入口资源时,AWS会创建负载平衡器,我需要为此付费 在公共

我对k8s还很陌生,我正试图找出如何以廉价的方式向Internet公开多个HTTP服务。目前,我正在使用AWS EKS集群和托管节点组,因此便宜的方法是不提供任何类型的ELB,因为它需要成本。此外,我希望这些服务位于专用子网中,以便只暴露f.ex only入口资源,节点将保持专用。每个svc一个负载平衡器绝对不是一个选项,因为它将分解我的预算

我考虑的选择是:

  • 使用K8s入口资源(确切地说:Istio入口控制器)。但缺点是,当我们创建入口资源时,AWS会创建负载平衡器,我需要为此付费

  • 在公共子网中运行节点组,并创建NodePort类型的K8s服务,以便我可以使用NodeIP:NodePort访问服务(NodePort将针对每个服务而特定)。缺点是,我需要记住分配给每个服务的所有IP和端口。我可以接受一项服务,但当服务数量增加时,我会很难记住这一点

  • 最后,在没有任何其他选项的情况下,使用公共IP创建一个负载平衡器,并使用Istio创建入口控制器。所以,我将通过负载平衡器的单个DNS名称访问每个服务,并通过请求路径路由到服务


期待任何解决方案和投入。

我认为这里没有任何魔力。选项1和3基本上是一样的(除非我遗漏了什么)。正如你所指出的,我不认为选择2是可行的,因为你提出的理由。你有很多选择。我不知道Istio入口(但我认为会很好)。我们经常看到客户使用或

所有这些选项都需要负载平衡器