目前,服务支持来自单个选择器的多个端口,这些端口映射到单一类型的pod。反过来,这个服务/端口可以通过'类型:LoadBalancer"在外部公开。
对于像Spark这样的给定子系统 - 有3种pod类型 - master,worker,driver,每种类型都暴露了一组需要外部访问的管理ui端口。当前服务定义需要创建3个LoadBalancers,每个类型对应一个类型 - master,worker,driver)。
这些访问端口用于低访问管理ui访问。无论如何,将所有这些异构pod端口组合成一个单一的服务"使用相应的" LoadBalancer"。这是为了避免LoadBalancers的扩散,以便外部访问服务
答案 0 :(得分:3)
无论如何都要将所有这些异构pod端口组合成一个 单个“服务”,带有相应的“LoadBalancer”。
服务旨在表示一组同类的pod。对服务的请求在支持服务的pod之间进行负载平衡。
如果要减少负载均衡器的数量,则应在子系统服务上方添加代理层,以便将传入请求重定向到正确的子系统。 HAProxy或nginx应该很容易配置来执行此操作。