我可以使用GCP HTTPS负载平衡器在bucket后端和Kubernetes服务之间路由吗?

我可以使用GCP HTTPS负载平衡器在bucket后端和Kubernetes服务之间路由吗?,kubernetes,google-cloud-platform,load-balancing,Kubernetes,Google Cloud Platform,Load Balancing,我想了解在一个场景中我的负载平衡选项是什么,我想在GCP上使用一个HTTPS负载平衡器,在Kubernetes上使用react前端和express后端的组合为bucket中的一些静态内容和动态内容提供服务 其他信息: 我有一个在谷歌域名之外注册的域名 我想通过https提供所有内容 我不是从什么大事开始的。刚刚开始一个或多或少的爱好类型的项目,这将吸引很少的交通在不久的将来 我不介意从AppEngine服务我的react前端、express后端,如果这有助于简化这一过程的话。然而,在这种情况下

我想了解在一个场景中我的负载平衡选项是什么,我想在GCP上使用一个HTTPS负载平衡器,在Kubernetes上使用react前端和express后端的组合为bucket中的一些静态内容和动态内容提供服务

其他信息:

  • 我有一个在谷歌域名之外注册的域名
  • 我想通过https提供所有内容
  • 我不是从什么大事开始的。刚刚开始一个或多或少的爱好类型的项目,这将吸引很少的交通在不久的将来
  • 我不介意从AppEngine服务我的react前端、express后端,如果这有助于简化这一过程的话。然而,在这种情况下,我想了解,如果我仍然想要kubernetes上的一些东西,我是否能够使用内部IP在app engine和kubernetes之间进行通信,而不会遇到麻烦。我该如何平衡流量
任何一种公共领域的网络蓝图都会对我有所帮助

我读了很多关于NodePort/LoadBalancer/Ingress的文章,这让我感到困惑。据我所知,LoadBalancer不处理HTTP(S)流量,更多地在TCP L4级别运行,因此可能不适合我的用例

Ingress提供了一个自己的专用负载平衡器,我无法将自己的路由放到后端存储桶等上,这意味着我可能至少需要两个负载平衡器?还有两个IP

NodePort在所有节点上公开一个端口,这意味着我需要自己处理负载平衡,即使我的HTTPS负载平衡器路由可能会有所帮助

任何指导/指示都将不胜感激

编辑:在搜索时找到了一些有关网络端点组(NEG)的信息。看起来很有前途。我会调查的。有没有想过走这条路


编辑:能够使用NEGs和Nginx反向代理组合实现此功能

为了解决您的问题,请从以下方面开始:

  • :

    • 网络负载均衡器(第4层负载平衡或依赖TCP/SSL协议的应用程序的代理)负载根据传入的IP协议数据(如地址、端口和协议类型)转发到您的系统中

      网络负载平衡器是一个直通负载平衡器,因此您的后端将接收原始客户端请求。网络负载平衡器不执行任何传输层安全(TLS)卸载或代理。流量直接路由到您的虚拟机。 网络负载平衡器在后端终止位于适合您需要的地区的TL

    • HTTP(s)loadbalancer是一种基于代理的区域第7层负载平衡器,它使您能够在专用负载平衡IP地址后运行和扩展服务,该地址只能在VPC网络中的负载平衡器区域中访问

      HTTPS和SSL代理负载平衡器在全球分布的位置终止TLS。 HTTP(S)负载平衡器充当客户端和应用程序之间的代理。如果要接受来自客户端的HTTPS请求 您可以选择使用谷歌管理的SSL证书(测试版)或使用您自己管理的证书

      技术细节 创建入口对象时,GKE入口控制器根据入口清单和相关服务清单中的规则配置GCPHTTP(S)负载平衡器。客户端向HTTP(S)负载平衡器发送请求负载平衡器是实际的代理;它选择一个节点并将请求转发给该节点的NodeIP:NodePort组合。节点使用其iptables NAT表选择一个Pod。kube代理管理节点上的iptables规则将流量路由到规则中指定服务的正常Pod

  • 根据文件:

    HTTP(S)负载平衡器可以将流量从指定的URL定向到后端bucket或后端服务。 在使用Loadbalncer创建Bucket时,Bucket应该是公共的

  • 在LoaBalancer设置期间,您可以选择后端服务和后端存储桶。您可以在中找到更多信息

  • 请看这两个教程,以及如何使用云存储构建应用程序

    希望这有帮助

    额外资源:

    谢谢您的宝贵建议。我在本周内尝试了一些选项,并将放弃我的经验更新。正在尝试设置一个独立的NEG。遇到问题。我已经提出了一个关于这个问题的后续问题,因为它偏离了这个问题,试图建立一个独立的NEG。遇到问题。我提出了一个关于这个问题的后续问题,因为它偏离了这个问题