是否建议使用指向我的Kubernetes服务的普通Google Cloud Load Balancer?
我是Kubernetes的新手,我对普通的Google Cloud Balancers的配置方式更加熟悉。
答案 0 :(得分:2)
它的AFAIK没什么问题,尽管拥有更多Kubernetes经验的人可能比GCP / Terraform / ...可能有点不寻常。
有关某些背景知识,请参见Kubernetes文档中对LoadBalancer type services的讨论。特别是有关LoadBalancer服务的注意事项
自动创建外部负载均衡器路由到的
NodePort
和ClusterIP
服务。
如果愿意,您可以手动执行相同的操作:创建NodePort类型的服务,然后创建一个外部负载均衡器,该负载均衡器路由到任何或所有节点上的该公开端口。跟踪节点列表是一个潜在的问题,您要么需要静态分配nodePort:
值,要么在创建服务后找到它们。
根据组织的结构,即使开发团队可以将自己的代码部署到集群中,您也可能会要求您的运营团队设置外部负载均衡器,这可能很好(“治理” )或不良(“僵化”)。
答案 1 :(得分:1)
如果使用LoadBalancer类型服务[1],将为您提供一个网络负载平衡器,您可以使用kubernetes yaml对其进行配置。
但是,根据本[2]教程,如果要公开HTTP(S)服务,最好使用NodePort类型的服务,并创建一个Ingress对象,该对象为该对象创建HTTP(S)负载均衡器你。
这些是比较惯用的,因此,除非它们不能满足您的需求,否则我将首先尝试其中的一种。
[1] https://cloud.google.com/kubernetes-engine/docs/concepts/service#services_of_type_loadbalancer
[2] https://cloud.google.com/kubernetes-engine/docs/tutorials/http-balancer
答案 2 :(得分:0)
不同的负载平衡器更多地是关于您要做什么。
如果您想进行多区域操作,这就是GCLB发挥作用的地方 enter link description here
如果您不计划或不需要多区域,则没有理由实施它。有关更多信息,我可能会从这里开始
https://cloud.google.com/kubernetes-engine/docs/how-to/exposing-apps https://cloud.google.com/kubernetes-engine/docs/how-to/internal-load-balancing https://cloud.google.com/kubernetes-engine/docs/how-to/container-native-load-balancing